jenkinsPlugins2nix: Generate nix for Jenkins plugins.

[ bsd3, library, nix, program ] [ Propose Tags ]

Generate nix for Jenkins plugins.


[Skip to Readme]

Downloads

Maintainer's Corner

Package maintainers

For package maintainers and hackage trustees

Candidates

Versions [RSS] 0.1.0.0, 0.2.0.0, 0.2.0.1, 0.2.0.2, 0.3.0.1, 0.4.0.0, 0.5.0.0
Dependencies attoparsec (>=0.13 && <0.14), base (>=4.7 && <5), bimap (>=0.3 && <0.5), bytestring (>=0.10 && <0.11), containers (>=0.6 && <0.7), cryptonite (>=0.24 && <0.30), hnix (>=0.6 && <0.15), http-conduit (>=2.3 && <2.4), jenkinsPlugins2nix, mtl (>=2.2 && <2.3), optparse-applicative (>=0.14 && <0.17), prettyprinter (>=1.2 && <1.8), prettyprinter-ansi-terminal (>=1.1 && <1.2), text (>=1.2 && <1.3), zip-archive (>=0.4 && <0.5) [details]
License BSD-3-Clause
Copyright 2017 Mateusz Kowalczyk
Author Mateusz Kowalczyk
Maintainer fuuzetsu@fuuzetsu.com
Category Nix
Home page https://github.com/Fuuzetsu/jenkinsPlugins2nix#readme
Source repo head: git clone https://github.com/Fuuzetsu/jenkinsPlugins2nix
Uploaded by MateuszKowalczyk at 2021-08-16T01:59:45Z
Distributions
Executables jenkinsPlugins2nix
Downloads 2983 total (17 in the last 30 days)
Rating (no votes yet) [estimated by Bayesian average]
Your Rating
  • λ
  • λ
  • λ
Status Docs available [build log]
Last success reported on 2021-08-16 [all 1 reports]

Readme for jenkinsPlugins2nix-0.5.0.0

[back to package description]

jenkinsPlugins2nix

Usage: jenkinsPlugins2nix [-r|--dependency-resolution [as-given|latest]]
                          (-p|--plugin PLUGIN_NAME{:PLUGIN_VERSION})
  Generate nix expressions for requested Jenkins plugins.

Available options:
  -r,--dependency-resolution [as-given|latest]
                           Dependency resolution (default: latest)
  -p,--plugin PLUGIN_NAME{:PLUGIN_VERSION}
                           Plugins we should generate nix for. Latest version is
                           used if not specified.
  -h,--help                Show this help text

Along with recent nixpkgs, you can then do the following.

jenkinsPlugins2nix -p github-api > plugins.nix

and in your configuration.nix:

services.jenkins.plugins = import plugins.nix { inherit (pkgs) fetchurl stdenv; };

Version specification

Care is taken to preserve versions of plugins explicitly specified by the user, even with the as-given resolution strategy. For example, if plugin A has a dependency B:0.2 in its manifest file and we specify:

jenkinsPlugins2nix -r latest -p A:0.7 -p B:0.1

We will end up with A:0.7 and B:0.1. This also applies when no explicit version is provided which is equivalent to asking for the latest one.

In case we only ask for A, the version of B will depend on --resolution-strategy.