Unverified Commit 7f7282e5 authored by Thomas Gerbet's avatar Thomas Gerbet Committed by GitHub
Browse files

nixos/jenkins: Introduce javaPackage option; Bump Java version to 21 (#412480)

parents ab60fdf5 e3846c42
Loading
Loading
Loading
Loading
+5 −9
Original line number Diff line number Diff line
@@ -11,13 +11,7 @@ in
{
  options = {
    services.jenkins = {
      enable = lib.mkOption {
        type = lib.types.bool;
        default = false;
        description = ''
          Whether to enable the jenkins continuous integration server.
        '';
      };
      enable = lib.mkEnableOption "Jenkins, a continuous integration server";

      user = lib.mkOption {
        default = "jenkins";
@@ -89,11 +83,13 @@ in

      package = lib.mkPackageOption pkgs "jenkins" { };

      javaPackage = lib.mkPackageOption pkgs "jdk21" { };

      packages = lib.mkOption {
        default = [
          pkgs.stdenv
          pkgs.git
          pkgs.jdk17
          pkgs.jdk21
          config.programs.ssh.package
          pkgs.nix
        ];
@@ -239,7 +235,7 @@ in

      # For reference: https://wiki.jenkins.io/display/JENKINS/JenkinsLinuxStartupScript
      script = ''
        ${pkgs.jdk17}/bin/java ${lib.concatStringsSep " " cfg.extraJavaOptions} -jar ${cfg.package}/webapps/jenkins.war --httpListenAddress=${cfg.listenAddress} \
        ${cfg.javaPackage}/bin/java ${lib.concatStringsSep " " cfg.extraJavaOptions} -jar ${cfg.package}/webapps/jenkins.war --httpListenAddress=${cfg.listenAddress} \
                                                  --httpPort=${toString cfg.port} \
                                                  --prefix=${cfg.prefix} \
                                                  -Djava.awt.headless=true \
+3 −3
Original line number Diff line number Diff line
@@ -8,7 +8,7 @@
  gnused,
  makeWrapper,
  nix,
  openjdk,
  jdk21,
  writeScript,
  nixosTests,
  jq,
@@ -33,10 +33,10 @@ stdenv.mkDerivation (finalAttrs: {
    cp "$src" "$out/webapps/jenkins.war"

    # Create the `jenkins-cli` command.
    ${openjdk}/bin/jar -xf "$src" WEB-INF/lib/cli-${finalAttrs.version}.jar \
    ${jdk21}/bin/jar -xf "$src" WEB-INF/lib/cli-${finalAttrs.version}.jar \
      && mv WEB-INF/lib/cli-${finalAttrs.version}.jar "$out/share/jenkins-cli.jar"

    makeWrapper "${openjdk}/bin/java" "$out/bin/jenkins-cli" \
    makeWrapper "${jdk21}/bin/java" "$out/bin/jenkins-cli" \
      --add-flags "-jar $out/share/jenkins-cli.jar"
  '';