aboutsummaryrefslogtreecommitdiff
path: root/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops
diff options
context:
space:
mode:
authorMx Kookie <kookie@spacekookie.de>2020-10-31 19:35:09 +0100
committerMx Kookie <kookie@spacekookie.de>2020-10-31 19:35:09 +0100
commitc4625b175f8200f643fd6e11010932ea44c78433 (patch)
treebce3f89888c8ac3991fa5569a878a9eab6801ccc /infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops
parent49f735974dd103039ddc4cb576bb76555164a9e7 (diff)
parentd661aa56a8843e991261510c1bb28fdc2f6975ae (diff)
Add 'infra/libkookie/' from commit 'd661aa56a8843e991261510c1bb28fdc2f6975ae'
git-subtree-dir: infra/libkookie git-subtree-mainline: 49f735974dd103039ddc4cb576bb76555164a9e7 git-subtree-split: d661aa56a8843e991261510c1bb28fdc2f6975ae
Diffstat (limited to 'infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops')
-rw-r--r--infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-compute/default.nix37
-rw-r--r--infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-network/default.nix37
-rw-r--r--infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-nspkg/default.nix25
-rw-r--r--infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-resource/default.nix38
-rw-r--r--infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-storage/default.nix37
-rw-r--r--infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-storage/default.nix35
-rw-r--r--infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/default.nix9
-rw-r--r--infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/deps.nix20
-rw-r--r--infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/generic.nix55
-rw-r--r--infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/nixops-dns.nix25
-rw-r--r--infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/nixops-v1_6_1.nix32
-rw-r--r--infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/unstable.nix13
12 files changed, 363 insertions, 0 deletions
diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-compute/default.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-compute/default.nix
new file mode 100644
index 000000000000..462c9e615a13
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-compute/default.nix
@@ -0,0 +1,37 @@
+{ pkgs
+, buildPythonPackage
+, fetchPypi
+, python
+, azure-mgmt-common
+}:
+
+buildPythonPackage rec {
+ version = "0.20.1";
+ pname = "azure-mgmt-compute";
+
+ src = fetchPypi {
+ inherit pname version;
+ extension = "zip";
+ sha256 = "97298fc7f133f1d50a974ed6299151eda494a574b0f7fdf8192a388015c2215a";
+ };
+
+ preConfigure = ''
+ # Patch to make this package work on requests >= 2.11.x
+ # CAN BE REMOVED ON NEXT PACKAGE UPDATE
+ sed -i 's|len(request_content)|str(len(request_content))|' azure/mgmt/compute/computemanagement.py
+ '';
+
+ postInstall = ''
+ echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py
+ echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/mgmt/__init__.py
+ '';
+
+ propagatedBuildInputs = [ azure-mgmt-common ];
+
+ meta = with pkgs.lib; {
+ description = "Microsoft Azure SDK for Python";
+ homepage = "https://azure.microsoft.com/en-us/develop/python/";
+ license = licenses.asl20;
+ maintainers = with maintainers; [ olcai ];
+ };
+}
diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-network/default.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-network/default.nix
new file mode 100644
index 000000000000..fd47f8895fd4
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-network/default.nix
@@ -0,0 +1,37 @@
+{ pkgs
+, buildPythonPackage
+, fetchPypi
+, azure-mgmt-common
+, python
+}:
+
+buildPythonPackage rec {
+ version = "0.20.1";
+ pname = "azure-mgmt-network";
+
+ src = fetchPypi {
+ inherit pname version;
+ extension = "zip";
+ sha256 = "10vj22h6nxpw0qpvib5x2g6qs5j8z31142icvh4qk8k40fcrs9hx";
+ };
+
+ preConfigure = ''
+ # Patch to make this package work on requests >= 2.11.x
+ # CAN BE REMOVED ON NEXT PACKAGE UPDATE
+ sed -i 's|len(request_content)|str(len(request_content))|' azure/mgmt/network/networkresourceprovider.py
+ '';
+
+ postInstall = ''
+ echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py
+ echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/mgmt/__init__.py
+ '';
+
+ propagatedBuildInputs = [ azure-mgmt-common ];
+
+ meta = with pkgs.lib; {
+ description = "Microsoft Azure SDK for Python";
+ homepage = "https://azure.microsoft.com/en-us/develop/python/";
+ license = licenses.asl20;
+ maintainers = with maintainers; [ olcai ];
+ };
+}
diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-nspkg/default.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-nspkg/default.nix
new file mode 100644
index 000000000000..aa037b48b4f5
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-nspkg/default.nix
@@ -0,0 +1,25 @@
+{ pkgs
+, buildPythonPackage
+, fetchPypi
+, azure-nspkg
+}:
+
+buildPythonPackage rec {
+ version = "1.0.0";
+ pname = "azure-mgmt-nspkg";
+
+ src = fetchPypi {
+ inherit pname version;
+ extension = "zip";
+ sha256 = "1rq92fj3kvnqkk18596dybw0kvhgscvc6cd8hp1dhy3wrkqnhwmq";
+ };
+
+ propagatedBuildInputs = [ azure-nspkg ];
+
+ meta = with pkgs.lib; {
+ description = "Microsoft Azure SDK for Python";
+ homepage = "https://azure.microsoft.com/en-us/develop/python/";
+ license = licenses.asl20;
+ maintainers = with maintainers; [ olcai ];
+ };
+}
diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-resource/default.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-resource/default.nix
new file mode 100644
index 000000000000..b60e3aee3402
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-resource/default.nix
@@ -0,0 +1,38 @@
+{ pkgs
+, buildPythonPackage
+, fetchPypi
+, python
+, azure-mgmt-common
+}:
+
+
+buildPythonPackage rec {
+ version = "0.20.1";
+ pname = "azure-mgmt-resource";
+
+ src = fetchPypi {
+ inherit pname version;
+ extension = "zip";
+ sha256 = "0slh9qfm5nfacrdm3lid0sr8kwqzgxvrwf27laf9v38kylkfqvml";
+ };
+
+ preConfigure = ''
+ # Patch to make this package work on requests >= 2.11.x
+ # CAN BE REMOVED ON NEXT PACKAGE UPDATE
+ sed -i 's|len(request_content)|str(len(request_content))|' azure/mgmt/resource/resourcemanagement.py
+ '';
+
+ postInstall = ''
+ echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py
+ echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/mgmt/__init__.py
+ '';
+
+ propagatedBuildInputs = [ azure-mgmt-common ];
+
+ meta = with pkgs.lib; {
+ description = "Microsoft Azure SDK for Python";
+ homepage = "https://azure.microsoft.com/en-us/develop/python/";
+ license = licenses.asl20;
+ maintainers = with maintainers; [ olcai ];
+ };
+}
diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-storage/default.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-storage/default.nix
new file mode 100644
index 000000000000..2e0523bb25cc
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-mgmt-storage/default.nix
@@ -0,0 +1,37 @@
+{ pkgs
+, buildPythonPackage
+, fetchPypi
+, python
+, azure-mgmt-common
+}:
+
+buildPythonPackage rec {
+ version = "0.20.0";
+ pname = "azure-mgmt-storage";
+
+ src = fetchPypi {
+ inherit pname version;
+ extension = "zip";
+ sha256 = "16iw7hqhq97vlzfwixarfnirc60l5mz951p57brpcwyylphl3yim";
+ };
+
+ preConfigure = ''
+ # Patch to make this package work on requests >= 2.11.x
+ # CAN BE REMOVED ON NEXT PACKAGE UPDATE
+ sed -i 's|len(request_content)|str(len(request_content))|' azure/mgmt/storage/storagemanagement.py
+ '';
+
+ postInstall = ''
+ echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py
+ echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/mgmt/__init__.py
+ '';
+
+ propagatedBuildInputs = [ azure-mgmt-common ];
+
+ meta = with pkgs.lib; {
+ description = "Microsoft Azure SDK for Python";
+ homepage = "https://azure.microsoft.com/en-us/develop/python/";
+ license = licenses.asl20;
+ maintainers = with maintainers; [ olcai ];
+ };
+}
diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-storage/default.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-storage/default.nix
new file mode 100644
index 000000000000..6693a7464d43
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/azure-storage/default.nix
@@ -0,0 +1,35 @@
+{ pkgs
+, buildPythonPackage
+, fetchPypi
+, python
+, azure-common
+, futures
+, dateutil
+, requests
+, isPy3k
+}:
+
+buildPythonPackage rec {
+ version = "0.20.3";
+ pname = "azure-storage";
+
+ src = fetchPypi {
+ inherit pname version;
+ extension = "zip";
+ sha256 = "06bmw6k2000kln5jwk5r9bgcalqbyvqirmdh9gq4s6nb4fv3c0jb";
+ };
+
+ propagatedBuildInputs = [ azure-common dateutil requests ]
+ ++ pkgs.lib.optionals (!isPy3k) [ futures ];
+
+ postInstall = ''
+ echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py
+ '';
+
+ meta = with pkgs.lib; {
+ description = "Microsoft Azure SDK for Python";
+ homepage = "https://azure.microsoft.com/en-us/develop/python/";
+ license = licenses.asl20;
+ maintainers = with maintainers; [ olcai ];
+ };
+}
diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/default.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/default.nix
new file mode 100644
index 000000000000..c761a3a47793
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/default.nix
@@ -0,0 +1,9 @@
+{ callPackage, fetchurl }:
+
+callPackage ./generic.nix (rec {
+ version = "1.7";
+ src = fetchurl {
+ url = "https://nixos.org/releases/nixops/nixops-${version}/nixops-${version}.tar.bz2";
+ sha256 = "091c0b5bca57d4aa20be20e826ec161efe3aec9c788fbbcf3806a734a517f0f3";
+ };
+})
diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/deps.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/deps.nix
new file mode 100644
index 000000000000..7da38f83e7fe
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/deps.nix
@@ -0,0 +1,20 @@
+[
+ {
+ goPackagePath = "github.com/mattn/go-sqlite3";
+ fetch = {
+ type = "git";
+ url = "https://github.com/mattn/go-sqlite3";
+ rev = "b4142c444a8941d0d92b0b7103a24df9cd815e42";
+ sha256 = "0xq2y4am8dz9w9aaq24s1npg1sn8pf2gn4nki73ylz2fpjwq9vla";
+ };
+ }
+ {
+ goPackagePath = "github.com/miekg/dns";
+ fetch = {
+ type = "git";
+ url = "https://github.com/miekg/dns";
+ rev = "75229eecb7af00b2736e93b779a78429dcb19472";
+ sha256 = "1vsjy07kkyx11iz4qsihhykac3ddq3ywdgv6bwrv407504f7x6wl";
+ };
+ }
+]
diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/generic.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/generic.nix
new file mode 100644
index 000000000000..59d139d28847
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/generic.nix
@@ -0,0 +1,55 @@
+{ lib, python2Packages, libxslt, docbook_xsl_ns, openssh, cacert, nixopsAzurePackages ? []
+# version args
+, src, version
+, meta ? {}
+}:
+
+python2Packages.buildPythonApplication {
+ name = "nixops-${version}";
+ inherit version src;
+
+ buildInputs = [ libxslt ];
+
+ pythonPath = with python2Packages;
+ [ prettytable
+ boto
+ boto3
+ hetzner
+ libcloud
+ adal
+ # Go back to sqlite once Python 2.7.13 is released
+ pysqlite
+ datadog
+ digital-ocean
+ libvirt
+ typing
+ ] ++ nixopsAzurePackages;
+
+ checkPhase =
+ # Ensure, that there are no (python) import errors
+ ''
+ SSL_CERT_FILE=${cacert}/etc/ssl/certs/ca-bundle.crt \
+ HOME=$(pwd) \
+ $out/bin/nixops --version
+ '';
+
+ postInstall = ''
+ make -C doc/manual install nixops.1 docbookxsl=${docbook_xsl_ns}/xml/xsl/docbook \
+ docdir=$out/share/doc/nixops mandir=$out/share/man
+
+ mkdir -p $out/share/nix/nixops
+ cp -av "nix/"* $out/share/nix/nixops
+
+ # Add openssh to nixops' PATH. On some platforms, e.g. CentOS and RHEL
+ # the version of openssh is causing errors when have big networks (40+)
+ wrapProgram $out/bin/nixops --prefix PATH : "${openssh}/bin"
+ '';
+
+ meta = {
+ homepage = "https://github.com/NixOS/nixops";
+ description = "NixOS cloud provisioning and deployment tool";
+ maintainers = with lib.maintainers; [ aminechikhaoui eelco rob domenkozar ];
+ platforms = lib.platforms.unix;
+ license = lib.licenses.lgpl3;
+ } // meta;
+}
diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/nixops-dns.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/nixops-dns.nix
new file mode 100644
index 000000000000..cf633a65ca53
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/nixops-dns.nix
@@ -0,0 +1,25 @@
+{ lib
+, buildGoPackage
+, fetchFromGitHub }:
+
+buildGoPackage rec {
+ pname = "nixops-dns";
+ version = "1.0";
+
+ goDeps = ./deps.nix;
+ goPackagePath = "github.com/kamilchm/nixops-dns";
+
+ src = fetchFromGitHub {
+ owner = "kamilchm";
+ repo = "nixops-dns";
+ rev = "v${version}";
+ sha256 = "1fyqwk2knrv40zpf71a56bjyaycr3p6fzrqq7gaan056ydy83cai";
+ };
+
+ meta = with lib; {
+ homepage = "https://github.com/kamilchm/nixops-dns/";
+ description = "DNS server for resolving NixOps machines";
+ license = licenses.mit;
+ maintainers = with maintainers; [ kamilchm sorki ];
+ };
+}
diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/nixops-v1_6_1.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/nixops-v1_6_1.nix
new file mode 100644
index 000000000000..dc0c733ca7b1
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/nixops-v1_6_1.nix
@@ -0,0 +1,32 @@
+{ callPackage, newScope, pkgs, fetchurl }:
+
+callPackage ./generic.nix (rec {
+ version = "1.6.1";
+ src = fetchurl {
+ url = "https://nixos.org/releases/nixops/nixops-${version}/nixops-${version}.tar.bz2";
+ sha256 = "0lfx5fhyg3z6725ydsk0ibg5qqzp5s0x9nbdww02k8s307axiah3";
+ };
+ nixopsAzurePackages = with python2Packages; [
+ azure-storage
+ azure-mgmt-compute
+ azure-mgmt-network
+ azure-mgmt-resource
+ azure-mgmt-storage
+ ];
+ # nixops is incompatible with the most recent versions of listed
+ # azure-mgmt-* packages, therefore we are pinning them to
+ # package-private versions, so that they don't get trampled by
+ # updates.
+ # see
+ # https://github.com/NixOS/nixops/issues/1065
+ python2Packages = pkgs.python2Packages.override {
+ overrides = (self: super: let callPackage = newScope self; in {
+ azure-mgmt-compute = callPackage ./azure-mgmt-compute { };
+ azure-mgmt-network = callPackage ./azure-mgmt-network { };
+ azure-mgmt-nspkg = callPackage ./azure-mgmt-nspkg { };
+ azure-mgmt-resource = callPackage ./azure-mgmt-resource { };
+ azure-mgmt-storage = callPackage ./azure-mgmt-storage { };
+ azure-storage = callPackage ./azure-storage { };
+ });
+ };
+})
diff --git a/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/unstable.nix b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/unstable.nix
new file mode 100644
index 000000000000..94975807dea6
--- /dev/null
+++ b/infra/libkookie/nixpkgs/pkgs/tools/package-management/nixops/unstable.nix
@@ -0,0 +1,13 @@
+{ callPackage, fetchurl }:
+
+# To upgrade pick the hydra job of the nixops revision that you want to upgrade
+# to from: https://hydra.nixos.org/job/nixops/master/tarball
+# Then copy the URL to the tarball.
+
+callPackage ./generic.nix (rec {
+ version = "1.7pre2764_932bf43";
+ src = fetchurl {
+ url = "https://hydra.nixos.org/build/92372343/download/2/nixops-${version}.tar.bz2";
+ sha256 = "f35bf81bf2805473ea54248d0ee92d163d00a1992f3f75d17e8cf430db1f9919";
+ };
+})