From 1c3477b1dce0e63d1f69cabc62fda58790d500d8 Mon Sep 17 00:00:00 2001 From: Patrick Hobusch Date: Sat, 28 Sep 2024 19:52:26 +0800 Subject: [PATCH] atlassian-plugin-sdk: init at 9.1.1 --- .../at/atlassian-plugin-sdk/package.nix | 88 +++++++++++++++++++ 1 file changed, 88 insertions(+) create mode 100644 pkgs/by-name/at/atlassian-plugin-sdk/package.nix diff --git a/pkgs/by-name/at/atlassian-plugin-sdk/package.nix b/pkgs/by-name/at/atlassian-plugin-sdk/package.nix new file mode 100644 index 0000000000000..8f4becdd99147 --- /dev/null +++ b/pkgs/by-name/at/atlassian-plugin-sdk/package.nix @@ -0,0 +1,88 @@ +{ + lib, + stdenv, + fetchurl, + makeWrapper, + jdk11, + atlassian-plugin-sdk, + testers, + writeShellScript, + common-updater-scripts, + curl, + jq, + yq, +}: + +let + mavenGroupIdUrl = "https://packages.atlassian.com/maven/public/com/atlassian/amps"; + +in +stdenv.mkDerivation rec { + pname = "atlassian-plugin-sdk"; + version = "9.1.1"; + + src = fetchurl { + url = "${mavenGroupIdUrl}/atlassian-plugin-sdk/${version}/atlassian-plugin-sdk-${version}.tar.gz"; + hash = "sha256-sEAe1eif9qXvIOu8RfZ4MWngEO5yCjU74g4Crd85J3Y="; + }; + + nativeBuildInputs = [ makeWrapper ]; + buildInputs = [ jdk11 ]; + + unpackPhase = "tar -xzf $src"; + + installPhase = '' + runHook preInstall + + mkdir -p $out + cp -r atlassian-plugin-sdk-${version}/* $out + rm $out/bin/*.bat + + for file in "$out"/bin/*; do + wrapProgram $file --set JAVA_HOME "${jdk11}" + done + + runHook postInstall + ''; + + passthru = { + tests.version = testers.testVersion { + package = atlassian-plugin-sdk; + command = "atlas-version"; + version = "atlassian-plugin-sdk-${version}"; + }; + + updateScript = writeShellScript "update-atlassian-plugin-sdk" '' + set -o errexit + export PATH="${ + lib.makeBinPath [ + curl + jq + yq + common-updater-scripts + ] + }:$PATH" + + NEW_VERSION=$(curl -s ${mavenGroupIdUrl}/atlassian-plugin-sdk/maven-metadata.xml | xq -r '.metadata.versioning.latest') + + if [[ "${version}" = "$NEW_VERSION" ]]; then + echo "The new version same as the old version." + exit 0 + fi + + DOWNLOAD_URL="${mavenGroupIdUrl}/atlassian-plugin-sdk/${version}/atlassian-plugin-sdk-$NEW_VERSION.tar.gz" + NIX_HASH=$(nix hash to-sri sha256:$(nix-prefetch-url $DOWNLOAD_URL)) + + update-source-version "atlassian-plugin-sdk" "$NEW_VERSION" "$NIX_HASH" "$DOWNLOAD_URL" + ''; + }; + + meta = with lib; { + description = "Atlassian Plugin SDK"; + homepage = "https://developer.atlassian.com/server/framework/atlassian-sdk/"; + license = licenses.asl20; + maintainers = with maintainers; [ pathob ]; + platforms = platforms.linux; + mainProgram = "atlas-mvn"; + }; +}