summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFerenc Erki <erkiferenc@gmail.com>2020-05-10 18:56:18 +0200
committerKent Fredric <kentnl@gentoo.org>2020-05-12 20:10:11 +1200
commit7ed7ea477842e57a0fe83466557e50debd8650b4 (patch)
treef510ae506bf79a19b889bb8c30020def8921d416 /app-admin/rex
parentapp-admin/rex: fix comment (diff)
downloadgentoo-7ed7ea477842e57a0fe83466557e50debd8650b4.tar.gz
gentoo-7ed7ea477842e57a0fe83466557e50debd8650b4.tar.bz2
gentoo-7ed7ea477842e57a0fe83466557e50debd8650b4.zip
app-admin/rex: bump version to 1.10.0
Package-Manager: Portage-2.3.99, Repoman-2.3.22 Signed-off-by: Ferenc Erki <erkiferenc@gmail.com> Signed-off-by: Kent Fredric <kentnl@gentoo.org>
Diffstat (limited to 'app-admin/rex')
-rw-r--r--app-admin/rex/Manifest1
-rw-r--r--app-admin/rex/rex-1.10.0.ebuild185
2 files changed, 186 insertions, 0 deletions
diff --git a/app-admin/rex/Manifest b/app-admin/rex/Manifest
index c4495a8f5b3d..dbe116c997e5 100644
--- a/app-admin/rex/Manifest
+++ b/app-admin/rex/Manifest
@@ -1,3 +1,4 @@
+DIST Rex-1.10.0.tar.gz 332057 BLAKE2B fb8e22c25c6f5bbc696aa894cc2f77138e830bb7a41fcc42e677ae251b63fffc841d206a9c50dfda60e022fafccf4ca0181ba8ccb50151c74830994929cb70fa SHA512 eaebf722d741d028d1f89beefee756e0b2fa6e3ddb8c2d6196c4183aedb6b1dd0a7f5fd4bc4211e4da26f61138ee974aa689d84d909c8d63cc414f803227dcf2
DIST Rex-1.3.3.tar.gz 274725 BLAKE2B a87576a136baac488a040098f2089412e6b53bb9bc4da94b5d8233adce37d20f75d39960da5bd94dda99bac6c69b51d8834e9481aaef0afdd9d728b2c15b24eb SHA512 b2331e400027568f59496ff52f0a19bd009f66fea2a5b80ed9055859f59f0057afa50f61934cccd5af434c6f60dfa99700bc3904127b822a5ae684cb8bb6c70c
DIST Rex-1.4.0.tar.gz 289330 BLAKE2B 70d74753e5b04b05ea7a5507f5c8c19ae953b4cc28e55e4d52dd57bbe2b3084ec00195d9f65f1a4c0ba712238ba8efe0cc4b33f236a7c4f9bb429ad2f98af652 SHA512 d14489157860df1b32dd2b4af7ce8148a9693d66f59bc0ee228c7c4ff57f38f7b308212c18fc7c0aff7a585a76028a9de0a7a96f8eb58c2455d19bd6b2713eab
DIST Rex-1.4.1.tar.gz 317358 BLAKE2B 8c12d54e86684ec224a75693f82fd4728af32a986f166d530bccc2d06c5087fdb29f067d4419f3160244d37c12ace6cd29ba1322992bcc9f4a481c06e00efa51 SHA512 07e7d950326aaa60e05977f2acb2ac90f07efe0d56411ba202a4c60a890c37e984c6786383623ac67f8e36052cf8436e8430fd024dde282a7d2530425b420e8e
diff --git a/app-admin/rex/rex-1.10.0.ebuild b/app-admin/rex/rex-1.10.0.ebuild
new file mode 100644
index 000000000000..5cc3866dba75
--- /dev/null
+++ b/app-admin/rex/rex-1.10.0.ebuild
@@ -0,0 +1,185 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+if [[ ${PV} == 9999 ]]; then
+ GITHUB_USER=RexOps
+ GITHUB_REPO=Rex
+ EGIT_REPO_URI="https://github.com/${GITHUB_USER}/${GITHUB_REPO}.git"
+ EGIT_BRANCH="master"
+ 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=FERKI
+ DIST_NAME=Rex
+ KEYWORDS="~amd64 ~x86"
+fi
+inherit perl-module ${VCS_ECLASS}
+
+DESCRIPTION="(R)?ex, the friendly automation framework"
+
+SLOT="0"
+IUSE="test"
+RESTRICT="!test? ( test )"
+
+DZIL_DEPENDS="
+ dev-perl/Dist-Zilla
+ dev-perl/Dist-Zilla-Plugin-CheckExtraTests
+ dev-perl/Dist-Zilla-Plugin-ContributorsFile
+ dev-perl/Dist-Zilla-Plugin-Git-Contributors
+ dev-perl/Dist-Zilla-Plugin-MakeMaker-Awesome
+ dev-perl/Dist-Zilla-Plugin-Meta-Contributors
+ dev-perl/Dist-Zilla-Plugin-MetaProvides-Package
+ dev-perl/Dist-Zilla-Plugin-NextVersion-Semantic
+ dev-perl/Dist-Zilla-Plugin-OSPrereqs
+ dev-perl/Dist-Zilla-Plugin-OurPkgVersion
+ dev-perl/Dist-Zilla-Plugin-Run
+ dev-perl/Software-License
+"
+RDEPEND="
+ virtual/perl-Carp
+ virtual/perl-Data-Dumper
+ dev-perl/Data-Validate-IP
+ dev-perl/DBI
+ dev-perl/Devel-Caller
+ dev-perl/Digest-HMAC
+ virtual/perl-Digest-MD5
+ dev-perl/Expect
+ virtual/perl-Exporter
+ virtual/perl-File-Spec
+ dev-perl/HTTP-Message
+ dev-perl/Hash-Merge
+ virtual/perl-IO
+ dev-perl/IO-String
+ dev-perl/IO-Tty
+ dev-perl/IPC-Shareable
+ dev-perl/JSON-MaybeXS
+ dev-perl/List-MoreUtils
+ virtual/perl-MIME-Base64
+ dev-perl/Net-OpenSSH
+ dev-perl/Net-SFTP-Foreign
+ virtual/perl-Scalar-List-Utils
+ dev-perl/Parallel-ForkManager
+ dev-perl/Sort-Naturally
+ dev-perl/String-Escape
+ virtual/perl-Storable
+ dev-perl/TermReadKey
+ virtual/perl-Test-Simple
+ dev-perl/Text-Glob
+ virtual/perl-Text-Tabs+Wrap
+ virtual/perl-Time-HiRes
+ dev-perl/URI
+ dev-perl/XML-LibXML
+ dev-perl/XML-Simple
+ dev-perl/libwww-perl
+ dev-perl/YAML
+ virtual/perl-version
+"
+
+BDEPEND="
+ ${RDEPEND}
+ >=virtual/perl-ExtUtils-MakeMaker-7.110.100
+ test? (
+ virtual/perl-File-Temp
+ dev-perl/Test-Deep
+ >=dev-perl/Test-UseAllModules-0.150.0
+ )
+"
+
+[[ ${PV} == 9999 ]] && BDEPEND+=" ${DZIL_DEPENDS}"
+
+src_unpack() {
+ if [[ $PV == 9999 ]]; then
+ "${VCS_ECLASS}"_src_unpack
+ mkdir -p "${S}" || die "Can't make ${S}"
+ else
+ default
+ fi
+}
+
+dzil_src_prep() {
+ einfo "Patching dist.ini"
+
+ # This block of sed invocations removes all plugins that aren't
+ # useful for users to have on Gentoo, because all of them are
+ # conditional and subjective style checks, which don't indicate
+ # a real issue for users, and paying the price of their dependencies is undesired.
+
+ # The {N;d} trick adds the [n]ext line after the match to the pattern-space
+ # so that the final [d]elete deletes the next line too. Can be expanded for each
+ # line, ie: {N;N;N;d} deletes 3 lines after the match as well as the match.
+ sed -e '/^\[Test::Kwalitee\]/d' \
+ -e '/^\[Test::Perl::Critic\]/d' \
+ -e '/^\[PodSyntaxTests\]/d' \
+ -e '/^Test::Kwalitee =/d' \
+ -e '/^Test::PerlTidy =/d' \
+ -e '/^Test::Pod =/d' \
+ -e '/^\[Test::CPAN::Changes\]/{N;d}' \
+ -e '/^\[Test::MinimumVersion\]/{N;d}' \
+ -i dist.ini || die "Can't patch dist.ini"
+}
+dzil_env_setup() {
+ # NextRelease noise :(
+ mkdir -p ~/.dzil/
+ local user="$(whoami)"
+ local host="$(hostname)"
+ printf '[%%User]\nname = %s\nemail = %s' "${user}" "${user}@${host}" >> ~/.dzil/config.ini
+
+}
+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_src_prep
+ dzil_env_setup
+
+ 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
+}