about summary refs log tree commit diff
path: root/pkgs/applications/networking/cluster
diff options
context:
space:
mode:
authorzimbatm <zimbatm@zimbatm.com>2017-09-08 19:36:43 +0100
committerGitHub <noreply@github.com>2017-09-08 19:36:43 +0100
commit9f2ff1d31aee9a8c33c9896794d6ad3fd50a8d41 (patch)
tree263f12a96b87e7c5564c53a7858ded4424833577 /pkgs/applications/networking/cluster
parent913c245d91e6a97f12390ebe7fb496859993dbec (diff)
terraform: revamp the providers list (#29097)
This fixes the ./update-all script to actually fetch all the available
providers (thanks pagination). It was also improver to user a more
compact representation of the data.
Diffstat (limited to 'pkgs/applications/networking/cluster')
-rw-r--r--pkgs/applications/networking/cluster/terraform/providers/data.nix589
-rw-r--r--pkgs/applications/networking/cluster/terraform/providers/default.nix21
-rw-r--r--pkgs/applications/networking/cluster/terraform/providers/template.nix16
-rwxr-xr-xpkgs/applications/networking/cluster/terraform/providers/update-all48
4 files changed, 419 insertions, 255 deletions
diff --git a/pkgs/applications/networking/cluster/terraform/providers/data.nix b/pkgs/applications/networking/cluster/terraform/providers/data.nix
index 76eaa21a42ca5..0778e221c1259 100644
--- a/pkgs/applications/networking/cluster/terraform/providers/data.nix
+++ b/pkgs/applications/networking/cluster/terraform/providers/data.nix
@@ -1,333 +1,486 @@
+# Generated with ./update-all
 {
+  alicloud =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-alicloud";
+      version = "0.1.0";
+      sha256  = "199zrpmi1hqy80nrvdhh5pn7vlcvpjcsf0hpwgzb1r9vnydpz7cj";
+    };
+  archive =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-archive";
+      version = "0.1.0";
+      sha256  = "1g7bjak1vgxpnmp4b9cb3mq8gqp1a7738fj0sxzflfk8k35p27ri";
+    };
+  arukas =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-arukas";
+      version = "0.1.0";
+      sha256  = "1msfr0rlzjfds02h35p99d1f541a1fzndjcpgijb41yx74h2v5dl";
+    };
+  atlas =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-atlas";
+      version = "0.1.1";
+      sha256  = "0k73vv14vnjl5qm33w54s5zzi0mmk1kn2zs3qkfq71aqi9ml7d14";
+    };
   aws =
     {
-      pname = "terraform-provider-aws";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-aws";
       version = "0.1.4";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-aws";
-        rev    = "v0.1.4";
-        sha256 = "0hqyvp1bgyfqq2lkjq5m5qxybagnxl9zrqiqfnlrfigdp0y31iz8";
-      };
+      sha256  = "0hqyvp1bgyfqq2lkjq5m5qxybagnxl9zrqiqfnlrfigdp0y31iz8";
+    };
+  azure =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-azure";
+      version = "0.1.1";
+      sha256  = "11myqq3wnxvpysjycvwg7b14ll8d9vkn06xb3r26kmc42fkl5xv1";
     };
   azurerm =
     {
-      pname = "terraform-provider-azurerm";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-azurerm";
       version = "0.1.6";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-azurerm";
-        rev    = "v0.1.6";
-        sha256 = "01hjr42gpkpwpz0chnkw8pf0yid0hqpdnfz65q5h2p8h627hg0c6";
-      };
+      sha256  = "01hjr42gpkpwpz0chnkw8pf0yid0hqpdnfz65q5h2p8h627hg0c6";
     };
   bitbucket =
     {
-      pname = "terraform-provider-bitbucket";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-bitbucket";
       version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-bitbucket";
-        rev    = "v0.1.0";
-        sha256 = "0c5aiq0p425h7c600wg5h3601l40airwz6cs724lc72fycbb4s43";
-      };
+      sha256  = "0c5aiq0p425h7c600wg5h3601l40airwz6cs724lc72fycbb4s43";
     };
   chef =
     {
-      pname = "terraform-provider-chef";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-chef";
       version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-chef";
-        rev    = "v0.1.0";
-        sha256 = "17fppyhxi0rd5v8khw2psdn2hdv5j79hxhinwkzrq5s4iccqk5dw";
-      };
+      sha256  = "17fppyhxi0rd5v8khw2psdn2hdv5j79hxhinwkzrq5s4iccqk5dw";
     };
   circonus =
     {
-      pname = "terraform-provider-circonus";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-circonus";
       version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-circonus";
-        rev    = "v0.1.0";
-        sha256 = "0v05g91yg2zh4wczp8mi3hmvwb35z0y9044bwy67nm1l624xlj64";
-      };
+      sha256  = "0v05g91yg2zh4wczp8mi3hmvwb35z0y9044bwy67nm1l624xlj64";
+    };
+  clc =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-clc";
+      version = "0.1.0";
+      sha256  = "0gvsjnwk6xkgxai1gxsjf0hsjxbv8d8jg5hq8yd3hjhc6785fgnf";
+    };
+  cloudflare =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-cloudflare";
+      version = "0.1.0";
+      sha256  = "073j0kqkccj7yrqz6j4vx722vmy6mmvmgidamkjnhhjcwm6g1jbq";
     };
   cloudstack =
     {
-      pname = "terraform-provider-cloudstack";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-cloudstack";
       version = "0.1.1";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-cloudstack";
-        rev    = "v0.1.1";
-        sha256 = "09iqxpc5a6938qj1js2y9s4dcgk7hw69xga56ixpbbknms2yrhnb";
-      };
+      sha256  = "09iqxpc5a6938qj1js2y9s4dcgk7hw69xga56ixpbbknms2yrhnb";
     };
   cobbler =
     {
-      pname = "terraform-provider-cobbler";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-cobbler";
       version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-cobbler";
-        rev    = "v0.1.0";
-        sha256 = "1867aqlz1v7scybaia9yakaxw76lh6y2whhajv5pqy1ng58rcgiz";
-      };
+      sha256  = "1867aqlz1v7scybaia9yakaxw76lh6y2whhajv5pqy1ng58rcgiz";
     };
   consul =
     {
-      pname = "terraform-provider-consul";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-consul";
       version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-consul";
-        rev    = "v0.1.0";
-        sha256 = "1d179m42iv2dy6wjzldllffwg6qxbg6gnvxrp6nzy75v7qp2aq94";
-      };
+      sha256  = "1d179m42iv2dy6wjzldllffwg6qxbg6gnvxrp6nzy75v7qp2aq94";
     };
   datadog =
     {
-      pname = "terraform-provider-datadog";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-datadog";
       version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-datadog";
-        rev    = "v0.1.0";
-        sha256 = "1k3p0zxffhabs1xb6aw9189vbmh3ax10q4xi1qgjfjvla22byqmk";
-      };
+      sha256  = "1k3p0zxffhabs1xb6aw9189vbmh3ax10q4xi1qgjfjvla22byqmk";
+    };
+  digitalocean =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-digitalocean";
+      version = "0.1.2";
+      sha256  = "0wn2bx9zk0fqvrn7a76rffin7f1b70p66h5bs9073szhr3zph7hg";
     };
   dme =
     {
-      pname = "terraform-provider-dme";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-dme";
       version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-dme";
-        rev    = "v0.1.0";
-        sha256 = "1ipqw1sbx0i9rhxawsysrqxvf10z8ra2y86xwd4iz0f12x9drblv";
-      };
+      sha256  = "1ipqw1sbx0i9rhxawsysrqxvf10z8ra2y86xwd4iz0f12x9drblv";
+    };
+  dns =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-dns";
+      version = "0.1.1";
+      sha256  = "0ccp02rbvfvrb808mg053q5y7ghvxsl7p1gzw7pkm934i6j90g9n";
     };
   dnsimple =
     {
-      pname = "terraform-provider-dnsimple";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-dnsimple";
+      version = "0.1.0";
+      sha256  = "0gkd5i69ldm5zn34p3k68aqk798g6g0d60gw7yp316l7mskvrx7h";
+    };
+  docker =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-docker";
       version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-dnsimple";
-        rev    = "v0.1.0";
-        sha256 = "0gkd5i69ldm5zn34p3k68aqk798g6g0d60gw7yp316l7mskvrx7h";
-      };
+      sha256  = "1nacxkyy12w4rj1bdf5ayqmmm47nwh362pcksr227rkwmsjlmg1m";
     };
   dyn =
     {
-      pname = "terraform-provider-dyn";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-dyn";
       version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-dyn";
-        rev    = "v0.1.0";
-        sha256 = "1w727r2gz5hjmbzw9zir0n5nrr818adh4qj50n3vijqwbxciyq2p";
-      };
+      sha256  = "1w727r2gz5hjmbzw9zir0n5nrr818adh4qj50n3vijqwbxciyq2p";
+    };
+  external =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-external";
+      version = "0.1.0";
+      sha256  = "160f0avv6wbh11z54wy0qcq0zrcj4s31kn7a9x6zikv7v4hfnbza";
+    };
+  fastly =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-fastly";
+      version = "0.1.2";
+      sha256  = "1z7nsgqqzvily9rxr79yjv6jfx56896c9lxb8flmzwjz6b6mvnz7";
+    };
+  github =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-github";
+      version = "0.1.1";
+      sha256  = "0f6nk9nb8h8247rz7x1w11amp0qdcmy1alr8jgd2chrjv9f8nif0";
+    };
+  gitlab =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-gitlab";
+      version = "0.1.0";
+      sha256  = "1xjhpaq2agdshrl5jbq9ak2nxdy86iay5bw16zww2qc5ah21sdg2";
     };
   google =
     {
-      pname = "terraform-provider-google";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-google";
       version = "0.1.3";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-google";
-        rev    = "v0.1.3";
-        sha256 = "1aa1hz0yc4g746m6dl04hc70rcrzx0py8kpdch3kim475bspclnf";
-      };
+      sha256  = "1aa1hz0yc4g746m6dl04hc70rcrzx0py8kpdch3kim475bspclnf";
+    };
+  grafana =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-grafana";
+      version = "0.1.0";
+      sha256  = "1m2anc5cyn2p3yh4zn0y6wvzb0s2fz3sfdqm9psvx53266c2c81q";
+    };
+  heroku =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-heroku";
+      version = "0.1.0";
+      sha256  = "1f72lm95bnkhaf2accypdn7xsxcgkqri5fq5mriya4n34c61z3l6";
     };
   http =
     {
-      pname = "terraform-provider-http";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-http";
       version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-http";
-        rev    = "v0.1.0";
-        sha256 = "1iy5fsl1j4wswbajnw0k6lagc2sz52idnswj1vmfc66x87ls0mah";
-      };
+      sha256  = "1iy5fsl1j4wswbajnw0k6lagc2sz52idnswj1vmfc66x87ls0mah";
+    };
+  icinga2 =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-icinga2";
+      version = "0.1.1";
+      sha256  = "0z7lxrspm33j7bkkm2n7ac0jgyaz3y3lql3gd30p10nvpilrg07v";
     };
   ignition =
     {
-      pname = "terraform-provider-ignition";
-      version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-ignition";
-        rev    = "v0.1.0";
-        sha256 = "03jvngd3fjyqmdzg2847p0k2fjyqykgmdng5vss4rcsn0n3b9d39";
-      };
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-ignition";
+      version = "0.2.0";
+      sha256  = "07qsyjzbz34nh7qrmw97sg0zrqbchky9r3ywrdz96pmpr1yjmwr7";
     };
   influxdb =
     {
-      pname = "terraform-provider-influxdb";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-influxdb";
       version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-influxdb";
-        rev    = "v0.1.0";
-        sha256 = "0msc6maxsiwmsg8ppdfj1397c66llhaf15nc4hmr2h6dxqkb5wl5";
-      };
+      sha256  = "0msc6maxsiwmsg8ppdfj1397c66llhaf15nc4hmr2h6dxqkb5wl5";
+    };
+  kubernetes =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-kubernetes";
+      version = "1.0.0";
+      sha256  = "1kh7a83f98v6b4v3zj84ddhrg2hya4nmvrw0mjc26q12g4z2d5g6";
+    };
+  librato =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-librato";
+      version = "0.1.0";
+      sha256  = "0bxadwj5s7bvc4vlymn3w6qckf14hz82r7q98w2nh55sqr52d923";
+    };
+  local =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-local";
+      version = "0.1.0";
+      sha256  = "02m0wg0jasnzrayamjsc2hzi0ibj83v4d0hmw2xbrxk7vmk71lgq";
     };
   logentries =
     {
-      pname = "terraform-provider-logentries";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-logentries";
       version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-logentries";
-        rev    = "v0.1.0";
-        sha256 = "11fkb84gqcq59wk5kqn3h428jrc2gkl659zxmkdldad6jdll9ypa";
-      };
+      sha256  = "11fkb84gqcq59wk5kqn3h428jrc2gkl659zxmkdldad6jdll9ypa";
     };
   mailgun =
     {
-      pname = "terraform-provider-mailgun";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-mailgun";
+      version = "0.1.0";
+      sha256  = "1hjhjfxqbr43wa248c6hc91lx5b2gdw4vl92l2i6aqp17rbc0wfj";
+    };
+  mysql =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-mysql";
       version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-mailgun";
-        rev    = "v0.1.0";
-        sha256 = "1hjhjfxqbr43wa248c6hc91lx5b2gdw4vl92l2i6aqp17rbc0wfj";
-      };
+      sha256  = "0vjr97xf15va9qypjb9318h1nxr0sd6ydcy7ijnqb8538v3581mv";
+    };
+  newrelic =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-newrelic";
+      version = "0.1.1";
+      sha256  = "1fqgxcspkgm3ncsqbvw79h5n09agba7q80nz0mrq09x0pyk8y051";
     };
   nomad =
     {
-      pname = "terraform-provider-nomad";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-nomad";
       version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-nomad";
-        rev    = "v0.1.0";
-        sha256 = "03sb31l59hxpp6zmnizxdm21jipz4mrzz9czk6ahhx7c8q0n0na8";
-      };
+      sha256  = "03sb31l59hxpp6zmnizxdm21jipz4mrzz9czk6ahhx7c8q0n0na8";
+    };
+  ns1 =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-ns1";
+      version = "0.1.0";
+      sha256  = "1in9ggrvxfb3maxhgiv997hndkpnqpgx1c1365lfizhp7km5ncvj";
+    };
+  null =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-null";
+      version = "0.1.0";
+      sha256  = "069yhsqi4jc14cay1gk7mwwmrg8xv90kj1k5qy3a2ypfbss4fcjp";
     };
   oneandone =
     {
-      pname = "terraform-provider-oneandone";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-oneandone";
       version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-oneandone";
-        rev    = "v0.1.0";
-        sha256 = "18bbpcprjib4d4skjdr76xjxi9091h5b3dls68y6bxkk6sh6av1i";
-      };
+      sha256  = "18bbpcprjib4d4skjdr76xjxi9091h5b3dls68y6bxkk6sh6av1i";
+    };
+  opc =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-opc";
+      version = "0.1.2";
+      sha256  = "0c4ywav89lln9417zwflrp3qhcs7qf96rgcvm1msmpgglrhzwp2i";
+    };
+  openstack =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-openstack";
+      version = "0.2.1";
+      sha256  = "1zsswsgv7lzhfd0v8llbm18gsfg6xji0r3f9rnvpjqkffj4088ca";
     };
   opsgenie =
     {
-      pname = "terraform-provider-opsgenie";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-opsgenie";
       version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-opsgenie";
-        rev    = "v0.1.0";
-        sha256 = "0zs0cl6jl4rijcs6vv5k8k5pyf0zs52dlgqcnb1gzslh8sg5pdkm";
-      };
+      sha256  = "0zs0cl6jl4rijcs6vv5k8k5pyf0zs52dlgqcnb1gzslh8sg5pdkm";
     };
   ovh =
     {
-      pname = "terraform-provider-ovh";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-ovh";
       version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-ovh";
-        rev    = "v0.1.0";
-        sha256 = "052bnfw146h9nh3cw77clwwxbmw1gvaich2yw39v4b1ca8brm5dr";
-      };
+      sha256  = "052bnfw146h9nh3cw77clwwxbmw1gvaich2yw39v4b1ca8brm5dr";
+    };
+  packet =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-packet";
+      version = "0.1.0";
+      sha256  = "0dk10d4b10pdlhqgm6fqg0cn0ff78ss1x76inj6gfwrnbn2amhp0";
     };
   pagerduty =
     {
-      pname = "terraform-provider-pagerduty";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-pagerduty";
       version = "0.1.2";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-pagerduty";
-        rev    = "v0.1.2";
-        sha256 = "1dqzi53bnk4qcjhlimr13352nzb1nsij7354zapz2sgnz21v89mm";
-      };
+      sha256  = "1dqzi53bnk4qcjhlimr13352nzb1nsij7354zapz2sgnz21v89mm";
     };
   postgresql =
     {
-      pname = "terraform-provider-postgresql";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-postgresql";
+      version = "0.1.0";
+      sha256  = "0gg48b2zn18ynvhnabvyfvw5wif0m1a852798wahv8fbv5d1vh7j";
+    };
+  powerdns =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-powerdns";
       version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-postgresql";
-        rev    = "v0.1.0";
-        sha256 = "0gg48b2zn18ynvhnabvyfvw5wif0m1a852798wahv8fbv5d1vh7j";
-      };
+      sha256  = "1k9xjx2smk6478dsrcnqk1k6r2pddpa9n8aghq5d1a5yhfsq5zzz";
     };
   profitbricks =
     {
-      pname = "terraform-provider-profitbricks";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-profitbricks";
       version = "0.1.2";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-profitbricks";
-        rev    = "v0.1.2";
-        sha256 = "105l0rijqmp7kmd7wygnhnj02q7y1rz0r8pj2mjzncb5pr48m3qp";
-      };
+      sha256  = "105l0rijqmp7kmd7wygnhnj02q7y1rz0r8pj2mjzncb5pr48m3qp";
+    };
+  rabbitmq =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-rabbitmq";
+      version = "0.1.0";
+      sha256  = "0vn8456f2al1f6rs1gn157c86qz1fxz8sqphbr9lvdhy1jw1q2vp";
+    };
+  rancher =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-rancher";
+      version = "0.2.0";
+      sha256  = "05aci6cjrs7rv6hqhvcqy1i0nr8azds8flnrc7vba0nyy6v192qg";
+    };
+  random =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-random";
+      version = "0.1.0";
+      sha256  = "1lbv5yiw4qfsqm3gxf37gwadgp7g6ki0n70mj00d8l6v6jd0mdl5";
+    };
+  rundeck =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-rundeck";
+      version = "0.1.0";
+      sha256  = "0rp8cgnp8in52g7zkl2lj42hns0g27m8f7l42lhfnv6n2vv5qxcg";
     };
   scaleway =
     {
-      pname = "terraform-provider-scaleway";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-scaleway";
       version = "0.1.1";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-scaleway";
-        rev    = "v0.1.1";
-        sha256 = "145wfcr5zjjk8vgx5xjf1hqh6h8jqxkhxbvv9x1w34i5bv809ch6";
-      };
+      sha256  = "145wfcr5zjjk8vgx5xjf1hqh6h8jqxkhxbvv9x1w34i5bv809ch6";
+    };
+  softlayer =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-softlayer";
+      version = "0.0.1";
+      sha256  = "1xcg5zm2n1pc3l7ng94k589r7ykv6fxsmr5qn9xmmpdf912rdnfq";
+    };
+  spotinst =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-spotinst";
+      version = "0.1.0";
+      sha256  = "04sxdbx6qjxixrv9shnp8fxkss6pylqmphlm1l4q5c83dwk96pka";
+    };
+  statuscake =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-statuscake";
+      version = "0.1.0";
+      sha256  = "084520cak2krwpks2ipqcjfw3k4rrzn6gqqncz8c4i6g01f1m7yg";
+    };
+  template =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-template";
+      version = "0.1.1";
+      sha256  = "1qrslnkvcj18jzxmsbf72gm54s8dnw5k5z15nffwgy09vv7mzpcn";
+    };
+  terraform =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-terraform";
+      version = "0.1.0";
+      sha256  = "1w465853gwffpydb7idvg7bk8ygadgy08s04fxsqc8i2683jbpiz";
     };
   tls =
     {
-      pname = "terraform-provider-tls";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-tls";
       version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-tls";
-        rev    = "v0.1.0";
-        sha256 = "1n1k4dcqm8lp7mgj88xj8xc09mn769np4wg3cggnpcs6igbgdgg7";
-      };
+      sha256  = "1n1k4dcqm8lp7mgj88xj8xc09mn769np4wg3cggnpcs6igbgdgg7";
     };
   triton =
     {
-      pname = "terraform-provider-triton";
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-triton";
       version = "0.1.2";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-triton";
-        rev    = "v0.1.2";
-        sha256 = "1jyrmc7932w7d8q96lmd0axf32psfic5d7hmwm1a25vzjzfn9nlw";
-      };
+      sha256  = "1jyrmc7932w7d8q96lmd0axf32psfic5d7hmwm1a25vzjzfn9nlw";
     };
   ultradns =
     {
-      pname = "terraform-provider-ultradns";
-      version = "0.1.0";
-      src = {
-        owner  = "terraform-providers";
-        repo   = "terraform-provider-ultradns";
-        rev    = "v0.1.0";
-        sha256 = "0bq2y6bxdax7qnmq6vxh8pz9sqy1r3m05dv7q5dbv2xvba1b88hj";
-      };
-    };
-  # Broken with go/src/github.com/terraform-providers/terraform-provider-vsphere/vendor/github.com/hashicorp/terraform/config/testing.go:9: t.Helper undefined (type *testing.T has no field or method Helper)
-  # vsphere =
-    # {
-      # pname = "terraform-provider-vsphere";
-      # version = "0.2.1";
-      # src = {
-        # owner  = "terraform-providers";
-        # repo   = "terraform-provider-vsphere";
-        # rev    = "v0.2.1";
-        # sha256 = "04vz34w28nx7j6wlikgjabrb2l5fxj9icfm8d34w2fffz63nk77l";
-      # };
-    # };
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-ultradns";
+      version = "0.1.0";
+      sha256  = "0bq2y6bxdax7qnmq6vxh8pz9sqy1r3m05dv7q5dbv2xvba1b88hj";
+    };
+  vault =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-vault";
+      version = "0.1.0";
+      sha256  = "1rr4gaqfr6panjjdb5xx9vbq7701zjps0l75zi526kij1pph98p1";
+    };
+  vcd =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-vcd";
+      version = "1.0.0";
+      sha256  = "0sjqdb37lalvizf4imxwn7nmry1c76dw2fpnrfmal34gghddm91p";
+    };
+  vsphere =
+    {
+      owner   = "terraform-providers";
+      repo    = "terraform-provider-vsphere";
+      version = "0.2.2";
+      sha256  = "0d5d4wip57zmv9kqh4zr9mz8ylffa2qcf1vmx827rwyqdr25xvaz";
+    };
 }
diff --git a/pkgs/applications/networking/cluster/terraform/providers/default.nix b/pkgs/applications/networking/cluster/terraform/providers/default.nix
index df59439c7bf5c..8d41df24d8cec 100644
--- a/pkgs/applications/networking/cluster/terraform/providers/default.nix
+++ b/pkgs/applications/networking/cluster/terraform/providers/default.nix
@@ -1,12 +1,21 @@
 { stdenv, lib, buildGoPackage, fetchFromGitHub }:
 let
   list = import ./data.nix;
-  toDrv = _: data:
+
+  toDrv = data:
     buildGoPackage rec {
-      inherit (data) pname version;
-      name = "${pname}-${version}";
-      goPackagePath = "github.com/${data.src.owner}/${data.src.repo}";
-      src = fetchFromGitHub data.src;
+      inherit (data) owner repo version sha256;
+      name = "${repo}-${version}";
+      goPackagePath = "github.com/${owner}/${repo}";
+      src = fetchFromGitHub {
+        inherit owner repo sha256;
+        rev = "v${version}";
+      };
     };
+
+  maybeDrv = name: data:
+    # vsphere is currently broken
+    if name == "vsphere" then null
+    else toDrv data;
 in
-  lib.mapAttrs toDrv list
+  lib.mapAttrs maybeDrv list
diff --git a/pkgs/applications/networking/cluster/terraform/providers/template.nix b/pkgs/applications/networking/cluster/terraform/providers/template.nix
deleted file mode 100644
index 16650af870bb1..0000000000000
--- a/pkgs/applications/networking/cluster/terraform/providers/template.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ stdenv, lib, buildGoPackage, fetchFromGitHub }:
-
-buildGoPackage rec {
-  pname = "terraform-provider-template";
-  name = "${pname}-${version}";
-  version = "0.1.1";
-
-  goPackagePath = "github.com/terraform-providers/terraform-provider-template";
-
-  src = fetchFromGitHub {
-    owner  = "terraform-providers";
-    repo   = pname;
-    rev    = "v${version}";
-    sha256 = "1qrslnkvcj18jzxmsbf72gm54s8dnw5k5z15nffwgy09vv7mzpcn";
-  };
-}
\ No newline at end of file
diff --git a/pkgs/applications/networking/cluster/terraform/providers/update-all b/pkgs/applications/networking/cluster/terraform/providers/update-all
index 42c55a4c19d8a..d857e4f187003 100755
--- a/pkgs/applications/networking/cluster/terraform/providers/update-all
+++ b/pkgs/applications/networking/cluster/terraform/providers/update-all
@@ -10,18 +10,19 @@ set -euo pipefail
 GET() {
   local url=$1
   echo "fetching $url" >&2
-  curl -#fL "$url"
+  curl -#fL -u "$GITHUB_AUTH" "$url"
 }
 
 get_org_repos() {
   local org=$1
-  GET "https://api.github.com/orgs/$org/repos" | jq -r '.[].name'
+  local page=1
+  GET "https://api.github.com/orgs/$org/repos?per_page=100" | jq -r '.[].name'
 }
 
 get_repo_tags() {
   local owner=$1
   local repo=$2
-  GET "https://api.github.com/repos/$owner/$repo/git/refs/tags" | \
+  GET "https://api.github.com/repos/$owner/$repo/git/refs/tags?per_page=100" | \
     jq -r '.[].ref' | \
     cut -d '/' -f 3- | \
     sort --version-sort
@@ -37,25 +38,37 @@ prefetch_github() {
 echo_entry() {
   local owner=$1
   local repo=$2
-  local rev=$3
-  local sha256=$4
   local version=${3:1}
+  local sha256=$4
   cat <<EOF
 {
-  pname = "$repo";
+  owner   = "$owner";
+  repo    = "$repo";
   version = "$version";
-  src = {
-    owner  = "$owner";
-    repo   = "$repo";
-    rev    = "$rev";
-    sha256 = "$sha256";
-  };
+  sha256  = "$sha256";
 };
 EOF
 }
 
 indent() { sed 's/^/    /'; }
 
+## Main ##
+
+cd "$(dirname "$0")"
+
+if [[ -z "${GITHUB_AUTH:-}" ]]; then
+  cat <<'HELP'
+Missing the GITHUB_AUTH env. Thi is required to work around the 60 request
+per hour rate-limit.
+
+Go to https://github.com/settings/tokens and create a new token with the
+"public_repo" scope.
+
+Then `export GITHUB_AUTH=<your user>:<your token>` and run this script again.
+HELP
+  exit 1
+fi
+
 org=terraform-providers
 
 repos=$(get_org_repos "$org" | grep terraform-provider- | sort)
@@ -63,9 +76,11 @@ repos=$(get_org_repos "$org" | grep terraform-provider- | sort)
 
 # Get all the providers with index
 
-echo -n > data.nix
+cat <<HEADER > data.nix
+# Generated with ./update-all
+{
+HEADER
 
-echo "{" >> data.nix
 for repo in $repos; do
   echo "*** $repo ***"
   name=$(echo "$repo" | cut -d - -f 3-)
@@ -77,6 +92,9 @@ for repo in $repos; do
     echo_entry "$org" "$repo" "$last_tag" "$last_tag_sha256" | indent
   } >> data.nix
 done
-echo "}" >> data.nix
+
+cat <<FOOTER >> data.nix
+}
+FOOTER
 
 echo Done.