summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKent Fredric <kentnl@gentoo.org>2020-04-18 02:07:42 +1200
committerKent Fredric <kentnl@gentoo.org>2020-04-18 02:12:05 +1200
commit4faad7c2dc825fc46c3bc602affced78190e6db8 (patch)
tree964f2478f1258f88a02164dc09b8855280fa5244 /app-admin
parentdev-python/numpy-python2: Fix installing generated files (diff)
downloadgentoo-4faad7c2dc825fc46c3bc602affced78190e6db8.tar.gz
gentoo-4faad7c2dc825fc46c3bc602affced78190e6db8.tar.bz2
gentoo-4faad7c2dc825fc46c3bc602affced78190e6db8.zip
app-admin/rex: Update -9999 ebuild to current status.
- Migrate to EAPI7 - Switch to branch 'master' - Update DESCRIPTION - Add new dependencies - Add patching to dzil live code that eliminates Plugin::Test:: dependencies that are not likely to be useful for consumers building code on Gentoo for their own purposes, especially as these massively complicate the amount of work to satisfy dependencies. - Add glue to populate portage ${HOME} to satisfy NextVersions' need to have [%User] configured without erroring. Some of these changes are borrowed from FErki's PR to bump to 1.9x, but the changes are done in-band for clarity, and the dependency logic is re-evaluated whosale from the start, to eliminate dependencies that aren't needed. Bug: https://bugs.gentoo.org/705190 Bug: https://github.com/gentoo/gentoo/pull/14313 Package-Manager: Portage-2.3.97, Repoman-2.3.22 Signed-off-by: Kent Fredric <kentnl@gentoo.org>
Diffstat (limited to 'app-admin')
-rw-r--r--app-admin/rex/rex-9999.ebuild88
1 files changed, 64 insertions, 24 deletions
diff --git a/app-admin/rex/rex-9999.ebuild b/app-admin/rex/rex-9999.ebuild
index 4eedb99641f8..26385e391279 100644
--- a/app-admin/rex/rex-9999.ebuild
+++ b/app-admin/rex/rex-9999.ebuild
@@ -1,27 +1,26 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
-EAPI=6
+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="development-1.x"
+ 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=JFRIED
+ DIST_AUTHOR=FERKI
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"
+DESCRIPTION="(R)?ex, the friendly automation framework"
SLOT="0"
IUSE="test"
@@ -29,60 +28,69 @@ 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-Test-MinimumVersion
- dev-perl/Dist-Zilla-Plugin-Test-Perl-Critic
+ 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
- dev-perl/Digest-SHA1
+ 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-XS
+ 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
- dev-perl/Test-Deep
+ 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-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
+ virtual/perl-version
"
-DEPEND="
+BDEPEND="
${RDEPEND}
+ >=virtual/perl-ExtUtils-MakeMaker-7.110.100
test? (
- dev-perl/Test-UseAllModules
virtual/perl-File-Temp
+ dev-perl/Test-Deep
+ >=dev-perl/Test-UseAllModules-0.150.0
)
"
-[[ ${PV} == 9999 ]] && DEPEND+=" ${DZIL_DEPENDS}"
+[[ ${PV} == 9999 ]] && BDEPEND+=" ${DZIL_DEPENDS}"
src_unpack() {
if [[ $PV == 9999 ]]; then
@@ -93,6 +101,35 @@ src_unpack() {
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() {
+ # NextVersion 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"
@@ -100,6 +137,9 @@ dzil_to_distdir() {
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}"