Merge pull request #119405 from hercules-ci/openapi-generator-cli-jre-headless

openapi-generator-cli: Use headless jre
This commit is contained in:
Domen Kožar 2021-05-06 17:09:07 +02:00 committed by GitHub
commit 0fbace6296
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 56 additions and 8 deletions

View File

@ -1,6 +1,6 @@
{ lib, stdenv, fetchurl, jre, makeWrapper }:
{ callPackage, lib, stdenv, fetchurl, jre, makeWrapper }:
stdenv.mkDerivation rec {
let this = stdenv.mkDerivation rec {
version = "5.1.0";
pname = "openapi-generator-cli";
@ -18,10 +18,14 @@ stdenv.mkDerivation rec {
phases = [ "installPhase" ];
installPhase = ''
runHook preInstall
install -D "$src" "$out/share/java/${jarfilename}"
makeWrapper ${jre}/bin/java $out/bin/${pname} \
--add-flags "-jar $out/share/java/${jarfilename}"
runHook postInstall
'';
meta = with lib; {
@ -30,4 +34,9 @@ stdenv.mkDerivation rec {
license = licenses.asl20;
maintainers = [ maintainers.shou ];
};
}
passthru.tests.example = callPackage ./example.nix {
openapi-generator-cli = this;
};
};
in this

View File

@ -0,0 +1,31 @@
{ openapi-generator-cli, fetchurl, runCommand }:
runCommand "openapi-generator-cli-test" {
nativeBuildInputs = [ openapi-generator-cli ];
petstore = fetchurl {
url = "https://raw.githubusercontent.com/OAI/OpenAPI-Specification/14c0908becbccd78252be49bd92be8c53cd2b9e3/examples/v3.0/petstore.yaml";
sha256 = "sha256:1mgdbzv42alv0b1a18dqbabqyvyhrg3brynr5hqsrm3qljfzaq5b";
};
config = builtins.toJSON {
elmVersion = "0.19";
elmPrefixCustomTypeVariants = false;
};
passAsFile = [ "config" ];
} ''
openapi-generator-cli generate \
--input-spec $petstore \
--enable-post-process-file \
--generator-name elm \
--config "$config" \
--additional-properties elmEnableCustomBasePaths=true \
--output "$out" \
;
find $out
echo >&2 'Looking for some keywords'
set -x
grep 'module Api.Request.Pets' $out/src/Api/Request/Pets.elm
grep 'createPets' $out/src/Api/Request/Pets.elm
grep '"limit"' $out/src/Api/Request/Pets.elm
set +x
echo "Looks OK!"
''

View File

@ -1,6 +1,6 @@
{ lib, stdenv, fetchurl, jre, makeWrapper }:
{ callPackage, lib, stdenv, fetchurl, jre, makeWrapper }:
stdenv.mkDerivation rec {
let this = stdenv.mkDerivation rec {
version = "6.0.0-2021-01-18"; # Also update the fetchurl link
pname = "openapi-generator-cli";
@ -18,10 +18,14 @@ stdenv.mkDerivation rec {
phases = [ "installPhase" ];
installPhase = ''
runHook preInstall
install -D "$src" "$out/share/java/${jarfilename}"
makeWrapper ${jre}/bin/java $out/bin/${pname} \
--add-flags "-jar $out/share/java/${jarfilename}"
runHook postInstall
'';
meta = with lib; {
@ -30,5 +34,9 @@ stdenv.mkDerivation rec {
license = licenses.asl20;
maintainers = [ maintainers.shou ];
};
}
passthru.tests.example = callPackage ./example.nix {
openapi-generator-cli = this;
};
};
in this

View File

@ -7202,8 +7202,8 @@ in
onlykey-cli = callPackage ../tools/security/onlykey-cli { };
openapi-generator-cli = callPackage ../tools/networking/openapi-generator-cli { };
openapi-generator-cli-unstable = callPackage ../tools/networking/openapi-generator-cli/unstable.nix { };
openapi-generator-cli = callPackage ../tools/networking/openapi-generator-cli { jre = pkgs.jre_headless; };
openapi-generator-cli-unstable = callPackage ../tools/networking/openapi-generator-cli/unstable.nix { jre = pkgs.jre_headless; };
openbazaar = callPackage ../applications/networking/openbazaar { };
openbazaar-client = callPackage ../applications/networking/openbazaar/client.nix { };