diff options
Diffstat (limited to 'pkgs/development/tools/continuous-integration/woodpecker/frontend.nix')
-rw-r--r-- | pkgs/development/tools/continuous-integration/woodpecker/frontend.nix | 23 |
1 files changed, 20 insertions, 3 deletions
diff --git a/pkgs/development/tools/continuous-integration/woodpecker/frontend.nix b/pkgs/development/tools/continuous-integration/woodpecker/frontend.nix index ccd9a36b8c860..01767d6fe00eb 100644 --- a/pkgs/development/tools/continuous-integration/woodpecker/frontend.nix +++ b/pkgs/development/tools/continuous-integration/woodpecker/frontend.nix @@ -1,6 +1,19 @@ -{ lib, callPackage, fetchFromGitHub, fetchYarnDeps, mkYarnPackage }: +{ lib, buildPackages, callPackage, fetchFromGitHub, fetchYarnDeps, mkYarnPackage }: let common = callPackage ./common.nix { }; + + esbuild_0_17_19 = buildPackages.esbuild.overrideAttrs (_: rec { + version = "0.17.19"; + + src = fetchFromGitHub { + owner = "evanw"; + repo = "esbuild"; + rev = "v${version}"; + hash = "sha256-PLC7OJLSOiDq4OjvrdfCawZPfbfuZix4Waopzrj8qsU="; + }; + + vendorHash = "sha256-+BfxCyg0KkDQpHt/wycy/8CTG6YBA/VJvJFhhzUnSiQ="; + }); in mkYarnPackage { pname = "woodpecker-frontend"; @@ -9,15 +22,19 @@ mkYarnPackage { src = "${common.src}/web"; packageJSON = ./woodpecker-package.json; + yarnLock = ./yarn.lock; + offlineCache = fetchYarnDeps { - yarnLock = "${common.src}/web/yarn.lock"; + yarnLock = ./yarn.lock; hash = common.yarnHash; }; + ESBUILD_BINARY_PATH = lib.getExe esbuild_0_17_19; + buildPhase = '' runHook preBuild - yarn build + yarn --offline build runHook postBuild ''; |