From 30bf3ec76b60573ce2ab4fd393a8373a8e9cc6de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yannik=20R=C3=B6del?= Date: Tue, 15 Mar 2022 09:20:07 +0100 Subject: [PATCH] Update Hydra jobs --- flake.nix | 58 ++++++++++++++++++++++++++++--------------------------- 1 file changed, 30 insertions(+), 28 deletions(-) diff --git a/flake.nix b/flake.nix index 42b697b..3d5002d 100644 --- a/flake.nix +++ b/flake.nix @@ -18,24 +18,37 @@ dontNpmInstall = true; }; - site = pkgs.stdenv.mkDerivation { - name = "angestoepselt-site"; - src = self; - buildInputs = [ nodejs nodeDependencies ]; - - buildPhase = '' - npm run build - ''; - - installPhase = '' - mv dist $out - ''; - }; in rec { packages = { - inherit site; + site = pkgs.stdenv.mkDerivation { + name = "angestoepselt-site"; + src = self; + + buildInputs = [ nodejs nodeDependencies ]; + + buildPhase = '' + npm run build + ''; + + installPhase = '' + mv dist $out + ''; + }; + + container = pkgs.dockerTools.buildImage { + name = "angestoepselt-site-container"; + tag = "latest"; + + config = { + Cmd = [ + "${pkgs.caddy}/bin/caddy" + "file-server" + "-root" "${packages.site}" + ]; + }; + }; # This package isn't actually the fully-built site, but rather a # derivation that contains the relevant programs (with correctly set up @@ -82,22 +95,11 @@ container = let pkgs = import nixpkgs { system = "x86_64-linux"; }; - - container = pkgs.dockerTools.buildImage { - name = "angestoepselt-site-container"; - tag = "latest"; - - config = { - Cmd = [ - "${pkgs.caddy}/bin/caddy" - "file-server" - "-root" "${site}" - ]; - }; - }; + containerFile = base.packages.x86_64-linux.container; in pkgs.runCommand "container" {} '' mkdir -p $out/nix-support - echo "file none ${container}" > $out/nix-support/hydra-build-products + ln -s ${containerFile} $out/angestoepselt-site.tar.gz + echo "file oci $out/angestoepselt-site.tar.gz" > $out/nix-support/hydra-build-products ''; }; });