diff options
Diffstat (limited to 'app-admin/rex')
-rw-r--r-- | app-admin/rex/Manifest | 2 | ||||
-rw-r--r-- | app-admin/rex/rex-1.6.0.ebuild | 145 |
2 files changed, 147 insertions, 0 deletions
diff --git a/app-admin/rex/Manifest b/app-admin/rex/Manifest index f55c16110484..d50f3f7eb0e0 100644 --- a/app-admin/rex/Manifest +++ b/app-admin/rex/Manifest @@ -2,9 +2,11 @@ DIST Rex-1.3.3.tar.gz 274725 BLAKE2B a87576a136baac488a040098f2089412e6b53bb9bc4 DIST Rex-1.4.0.tar.gz 289330 BLAKE2B 70d74753e5b04b05ea7a5507f5c8c19ae953b4cc28e55e4d52dd57bbe2b3084ec00195d9f65f1a4c0ba712238ba8efe0cc4b33f236a7c4f9bb429ad2f98af652 SHA512 d14489157860df1b32dd2b4af7ce8148a9693d66f59bc0ee228c7c4ff57f38f7b308212c18fc7c0aff7a585a76028a9de0a7a96f8eb58c2455d19bd6b2713eab DIST Rex-1.4.1.tar.gz 317358 BLAKE2B 8c12d54e86684ec224a75693f82fd4728af32a986f166d530bccc2d06c5087fdb29f067d4419f3160244d37c12ace6cd29ba1322992bcc9f4a481c06e00efa51 SHA512 07e7d950326aaa60e05977f2acb2ac90f07efe0d56411ba202a4c60a890c37e984c6786383623ac67f8e36052cf8436e8430fd024dde282a7d2530425b420e8e DIST Rex-1.5.0.tar.gz 327424 BLAKE2B ea735ebeef7a4d879ec61783c7ee803f198b4091882bbdbaee1b415330fcb20ba408f082e7ecaaa5c63664d905690bd6b5601d2d726ff20f5dc9d1f8c6d470a4 SHA512 43a1e147e5d2dccdc641479f2bf5449b0051651d152823738caf946bb3ceecb444011c3273f0c70ca5feab737702f6cd609f5b211eec8261e1facd80c82b6c73 +DIST Rex-1.6.0.tar.gz 331330 BLAKE2B cb3a2895c1b7fd775aa762e8af7fbfdf3d14aac0d4ed5cd32bc65f4eb2b7794e438015daf9602cea3a852ed17dd207c9647303a106d8fff2cc89b5ce7a5ff0a2 SHA512 8e4421e034ddf7337266ce2002e96cad12a632ff37742991685d2919e3b11a4f6f3348097fd36717ab83a38e2e46aa974d0e56c67568a857c30f7ea673a51cda EBUILD rex-1.3.3.ebuild 1141 BLAKE2B 605593249d74463ab84d33b3c678176ab3ef1884387ddd72d98ad970c3d511f64df35c08035c7d5117dd2a94cd3b286b6669a1c4c07f8f15df72a66d682d9601 SHA512 f2ed11f8acf92f45b0fa649f84d4849b8cac068cfeeac93010383e2f8463f820cf50da99b9f1f7c76bc7cc268728e26800e97ae99ac28ae2e2d56da4783cb3e4 EBUILD rex-1.4.0-r1.ebuild 1129 BLAKE2B c8ecaff070f15ebf7e521368d32949f1421d0d033f865c85a8f3939c57501affa45c5bee769ee1a87a56a5d8365823d447cf8bd11b2fe868ab5f7609d503d54e SHA512 56e4de394eadb91801dfb686b56f4e2e84908cb4f5ef358c88e6f25f94512e6497d923a71d7ac8bfa3713ab7db26e22108f6a2260bee310c514a5e7407381be2 EBUILD rex-1.4.1.ebuild 1130 BLAKE2B ceb39e880a747e3ac7c5ce2e3169c0568eb129d012a8a8e9e229812c9d9c892321b8d1444bff2bfd25a30fc474255b2f0468df694334b3df3ecf52779df295b0 SHA512 0dc625298b996064fbfdc389fda95b7bcc6bcee7d9321da2e0c54a658e6fe741a11d345472f2d19f331bd89c0bb1d1262d694229d1f48bac6310b03202e18784 EBUILD rex-1.5.0.ebuild 3642 BLAKE2B ad40f99c572a599b4779aed76fb2176fd2e488c34063d1a440cdc9d3c5d45cb71bdaa5aa3be292ec086dc5f47036a4056a8ad53afaf46856479cc143c9f5b6f2 SHA512 10806ed105703e4a8eac0c85b9bb6d7176943e8aa7ff744cc681af6eb9e042eb1b08832ab79c27016b1157bd62c0fa60a3415bdc7847c96f168bcc1e3e14573a +EBUILD rex-1.6.0.ebuild 3666 BLAKE2B c6c91980826f316f658cfba66ffcd6ea87a74063c5bc6643df6e2941bf9d3bbbecc49fd7baac7f0057ab1e9649d96d4a0c1bef35225c57e7159d43791ab24ac3 SHA512 7b366e5f94d555dc61748d4d085a546edd092b0d435e3308ff264908e7a528585ca665eb7d0f5baa823b9b6d842c029372324def3e68c9028a2dff89a9f638cc EBUILD rex-9999.ebuild 3642 BLAKE2B ad40f99c572a599b4779aed76fb2176fd2e488c34063d1a440cdc9d3c5d45cb71bdaa5aa3be292ec086dc5f47036a4056a8ad53afaf46856479cc143c9f5b6f2 SHA512 10806ed105703e4a8eac0c85b9bb6d7176943e8aa7ff744cc681af6eb9e042eb1b08832ab79c27016b1157bd62c0fa60a3415bdc7847c96f168bcc1e3e14573a MISC metadata.xml 23689 BLAKE2B 5aa6d9627f8f5b5564e231338a4b31893232a6593ba63278fdecf7cd345f1d7eadf756c4f0c77077c3b11b4b26646f9f1492c442cafb6f253d46cb3f72370e33 SHA512 136db3e5b2495b8e3b08feafeb4426c7692ee13d7366bec18e56e231d30823c3e36066a70538f0c3c972ec06955f746e8400819c22751caa164e1a72331a6148 diff --git a/app-admin/rex/rex-1.6.0.ebuild b/app-admin/rex/rex-1.6.0.ebuild new file mode 100644 index 000000000000..5a34558d4efe --- /dev/null +++ b/app-admin/rex/rex-1.6.0.ebuild @@ -0,0 +1,145 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +if [[ ${PV} == 9999 ]]; then + GITHUB_USER=RexOps + GITHUB_REPO=Rex + EGIT_REPO_URI="https://github.com/${GITHUB_USER}/${GITHUB_REPO}.git" + EGIT_BRANCH="development-1.x" + EGIT_CHECKOUT_DIR="${WORKDIR}/${PN}-git" + VCS_ECLASS="git-r3" +else + # This is intentional to stop perl-module.eclass doing magic things when it + # shouldn't. Like making ${S} contain "Rex" when the git clone has "rex" + # Also prevents perl-module.eclass provisioning SRC_URI + DIST_AUTHOR=JFRIED + DIST_NAME=Rex + KEYWORDS="~amd64 ~x86" +fi + +inherit perl-module ${VCS_ECLASS} + +DESCRIPTION="(R)?ex is a small script to ease the execution of remote commands" + +SLOT="0" +IUSE="test" + +DZIL_DEPENDS=" + dev-perl/Dist-Zilla + dev-perl/Dist-Zilla-Plugin-MakeMaker-Awesome + dev-perl/Dist-Zilla-Plugin-MetaProvides-Package + dev-perl/Dist-Zilla-Plugin-OSPrereqs + dev-perl/Dist-Zilla-Plugin-OurPkgVersion + dev-perl/Dist-Zilla-Plugin-Test-MinimumVersion + dev-perl/Dist-Zilla-Plugin-Test-Perl-Critic +" + +RDEPEND=" + dev-perl/Data-Validate-IP + dev-perl/DBI + dev-perl/Devel-Caller + dev-perl/Digest-HMAC + dev-perl/Digest-SHA1 + dev-perl/Expect + dev-perl/Hash-Merge + dev-perl/IO-String + dev-perl/IO-Tty + dev-perl/IPC-Shareable + dev-perl/JSON-XS + dev-perl/List-MoreUtils + dev-perl/Net-OpenSSH + dev-perl/Net-SFTP-Foreign + dev-perl/Parallel-ForkManager + dev-perl/Sort-Naturally + dev-perl/String-Escape + dev-perl/TermReadKey + dev-perl/Test-Deep + dev-perl/Text-Glob + dev-perl/URI + dev-perl/XML-LibXML + dev-perl/XML-Simple + dev-perl/libwww-perl + dev-perl/YAML + virtual/perl-Carp + virtual/perl-Data-Dumper + virtual/perl-Digest-MD5 + virtual/perl-Exporter + virtual/perl-File-Spec + virtual/perl-MIME-Base64 + virtual/perl-Scalar-List-Utils + virtual/perl-Storable + virtual/perl-Time-HiRes +" + +DEPEND=" + ${RDEPEND} + test? ( + dev-perl/JSON-MaybeXS + dev-perl/Test-UseAllModules + virtual/perl-File-Temp + ) +" + +[[ ${PV} == 9999 ]] && DEPEND+=" ${DZIL_DEPENDS}" + +src_unpack() { + if [[ $PV == 9999 ]]; then + "${VCS_ECLASS}"_src_unpack + mkdir -p "${S}" || die "Can't make ${S}" + else + default + fi +} + +dzil_to_distdir() { + local dzil_root dest has_missing modname dzil_version + dzil_root="$1" + dest="$2" + + cd "${dzil_root}" || die "Can't enter git workdir '${dzil_root}'"; + + dzil_version="$(dzil version)" || die "Error invoking 'dzil version'" + einfo "Generating CPAN dist with ${dzil_version}" + + has_missing="" + + einfo "Checking dzil authordeps" + while IFS= read -d $'\n' -r modname; do + if [[ -z "${has_missing}" ]]; then + has_missing=1 + eerror "'dzil authordeps' indicates missing build dependencies" + eerror "These will prevent building, please report a bug" + eerror "Missing:" + fi + eerror " ${modname}" + done < <( dzil authordeps --missing --versions ) + + [[ -z "${has_missing}" ]] || die "Satisfy all missing authordeps first" + + einfo "Checking dzil build deps" + while IFS= read -d $'\n' -r modname; do + if [[ -z "${has_missing}" ]]; then + has_missing=1 + ewarn "'dzil listdeps' indicates missing build dependencies" + ewarn "These may prevent building, please report a bug if they do" + ewarn "Missing:" + fi + ewarn " ${modname}" + done < <( dzil listdeps --missing --versions --author ) + + einfo "Generating release" + dzil build --notgz --in "${dest}" || die "Unable to build CPAN dist in '${dest}'" +} + +src_prepare() { + if [[ ${PV} == 9999 ]]; then + # Uses git sources in WORKDIR/rex-git + # to generate a CPAN-style tree in ${S} + # before letting perl-module.eclass do the rest + dzil_to_distdir "${EGIT_CHECKOUT_DIR}" "${S}" + fi + cd "${S}" || die "Can't enter build dir" + perl-module_src_prepare +} |