fluxcd: add updateScript (#138776)
Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
This commit is contained in:
parent
d30701f2f1
commit
340eef1127
@ -2,24 +2,25 @@
|
||||
|
||||
let
|
||||
version = "0.17.2";
|
||||
sha256 = "0kcdx4ldnshk4pqq37a7p08xr5cpsjrbrifk9fc3jbiw39m09mhf";
|
||||
manifestsSha256 = "1v6md4xh4sq1vmb5a8qvb66l101fq75lmv2s4j2z3walssb5mmgj";
|
||||
|
||||
manifests = fetchzip {
|
||||
url = "https://github.com/fluxcd/flux2/releases/download/v${version}/manifests.tar.gz";
|
||||
sha256 = "1v6md4xh4sq1vmb5a8qvb66l101fq75lmv2s4j2z3walssb5mmgj";
|
||||
sha256 = manifestsSha256;
|
||||
stripRoot = false;
|
||||
};
|
||||
in
|
||||
|
||||
buildGoModule rec {
|
||||
inherit version;
|
||||
|
||||
pname = "fluxcd";
|
||||
inherit version;
|
||||
|
||||
src = fetchFromGitHub {
|
||||
owner = "fluxcd";
|
||||
repo = "flux2";
|
||||
rev = "v${version}";
|
||||
sha256 = "0kcdx4ldnshk4pqq37a7p08xr5cpsjrbrifk9fc3jbiw39m09mhf";
|
||||
inherit sha256;
|
||||
};
|
||||
|
||||
vendorSha256 = "sha256-glifJ0V3RwS7E6EWZsCa88m0MK883RhPSXCsAmMggVs=";
|
||||
@ -50,6 +51,8 @@ buildGoModule rec {
|
||||
done
|
||||
'';
|
||||
|
||||
passthru.updateScript = ./update.sh;
|
||||
|
||||
meta = with lib; {
|
||||
description = "Open and extensible continuous delivery solution for Kubernetes";
|
||||
longDescription = ''
|
||||
|
31
pkgs/applications/networking/cluster/fluxcd/update.sh
Executable file
31
pkgs/applications/networking/cluster/fluxcd/update.sh
Executable file
@ -0,0 +1,31 @@
|
||||
#!/usr/bin/env nix-shell
|
||||
#!nix-shell -i bash -p curl gnugrep gnused jq
|
||||
|
||||
set -eu -o pipefail
|
||||
|
||||
cd $(dirname "${BASH_SOURCE[0]}")
|
||||
|
||||
TAG=$(curl ${GITHUB_TOKEN:+" -u \":$GITHUB_TOKEN\""} --silent https://api.github.com/repos/fluxcd/flux2/releases/latest | jq -r '.tag_name')
|
||||
|
||||
VERSION=$(echo ${TAG} | sed 's/^v//')
|
||||
|
||||
SHA256=$(nix-prefetch-url --quiet --unpack https://github.com/fluxcd/flux2/archive/refs/tags/${TAG}.tar.gz)
|
||||
|
||||
SPEC_SHA256=$(nix-prefetch-url --quiet --unpack https://github.com/fluxcd/flux2/releases/download/${TAG}/manifests.tar.gz)
|
||||
|
||||
setKV () {
|
||||
sed -i "s/$1 = \".*\"/$1 = \"$2\"/" ./default.nix
|
||||
}
|
||||
|
||||
setKV version ${VERSION}
|
||||
setKV sha256 ${SHA256}
|
||||
setKV manifestsSha256 ${SPEC_SHA256}
|
||||
setKV vendorSha256 ""
|
||||
|
||||
cd ../../../../../
|
||||
set +e
|
||||
VENDOR_SHA256=$(nix-build --no-out-link -A fluxcd 2>&1 | grep "got:" | cut -d':' -f2 | sed 's/ //g')
|
||||
set -e
|
||||
|
||||
cd - > /dev/null
|
||||
setKV vendorSha256 ${VENDOR_SHA256}
|
Loading…
Reference in New Issue
Block a user