Репозиторий Sisyphus
Последнее обновление: 1 октября 2023 | Пакетов: 18631 | Посещений: 37405084
en ru br
Репозитории ALT

Группа :: Система/Настройка/Прочее
Пакет: rex

 Главная   Изменения   Спек   Патчи   Sources   Загрузить   Gear   Bugs and FR  Repocop 

# SPEC file for rex package

%define  version_suffix %nil

Name:    rex
Version: 1.14.3
Release: alt2

Summary: (R)?ex - Remote Execution Framework

License: %asl
Group:   System/Configuration/Other
URL:     http://rexify.org/
#URL:    https://github.com/RexOps/Rex

Packager: Nikolay A. Fetisov <naf at altlinux.ru>

Source0: %name-%version.tar
Patch0:  %name-%version-%release.patch

Patch1:  %name-0.53.1-alt-fix_use.patch
Patch2:  %name-1.13.3-alt-fix_ssh_port.patch
Patch3:  %name-1.13.3-alt-fix_dmidecode.patch
Patch4:  %name-1.14-alt-fix_CMDB_hostname.patch

BuildArch: noarch

BuildRequires(pre): rpm-build-licenses

# Automatically added by buildreq on Wed Jul 26 2023

# optimized out: git-core libgpg-error libnss-myhostname libsasl2-3 lsb-release perl perl-App-Cmd perl-B-Hooks-EndOfScope perl-CPAN-Changes perl-CPAN-Meta perl-CPAN-Meta-Requirements perl-Capture-Tiny perl-Carp-Clan perl-Class-Data-Inheritable perl-Class-Inspector perl-Class-Load perl-Clone perl-Clone-Choose perl-Config-INI perl-Config-MVP perl-Config-MVP-Reader-INI perl-Cpanel-JSON-XS perl-DBI perl-Data-Dump perl-Data-OptList perl-Data-Section perl-Devel-Caller perl-Devel-GlobalDestruction perl-Devel-OverloadInfo perl-Devel-StackTrace perl-Dist-Zilla perl-Dist-Zilla-Plugin-Config-Git perl-Dist-Zilla-Plugin-MetaProvides perl-Dist-Zilla-Role-ModuleMetadata perl-Encode perl-Eval-Closure perl-Exception-Class perl-Exporter-Tiny perl-File-Find-Rule perl-File-ShareDir perl-File-Which perl-File-chdir perl-File-pushd perl-Getopt-Long-Descriptive perl-Git-Wrapper perl-HTTP-Date perl-HTTP-Message perl-IO-Socket-IP perl-IO-String perl-IO-Stty perl-IO-Tty perl-IPC-Run perl-IPC-Shareable perl-JSON-MaybeXS perl-JSON-PP perl-List-AllUtils perl-List-MoreUtils-XS perl-List-SomeUtils perl-List-UtilsBy perl-Locale-Maketext-Simple perl-Log-Dispatch perl-Log-Dispatchouli perl-Log-Log4perl perl-MRO-Compat perl-Mixin-Linewise perl-Module-Implementation perl-Module-Load perl-Module-Load-Conditional perl-Module-Metadata perl-Module-Pluggable perl-Module-Runtime perl-Moo perl-Moose perl-MooseX-Has-Sugar perl-MooseX-LazyRequire perl-MooseX-OneArgNew perl-MooseX-Role-Parameterized perl-MooseX-SetOnce perl-MooseX-Types perl-MooseX-Types-Common perl-MooseX-Types-Perl perl-NetAddr-IP perl-Number-Compare perl-PPI perl-Package-DeprecationManager perl-Package-Stash perl-Package-Stash-XS perl-PadWalker perl-Params-Check perl-Params-Util perl-Params-Validate perl-Params-ValidationCompiler perl-Parse-CPAN-Meta perl-Path-Tiny perl-Perl-PrereqScanner perl-Perl-Version perl-PerlIO-utf8_strict perl-Pod-Escapes perl-Pod-Simple perl-Role-HasMessage perl-Role-Identifiable perl-Role-Tiny perl-Safe-Isa perl-Socket6 perl-Software-License perl-Sort-Versions perl-Specio perl-String-Errf perl-String-Flogger perl-String-Formatter perl-String-RewritePrefix perl-Sub-Exporter perl-Sub-Exporter-ForMethods perl-Sub-Exporter-Progressive perl-Sub-Identify perl-Sub-Install perl-Sub-Name perl-Sub-Quote perl-Sub-Uplevel perl-Term-ANSIColor perl-Term-Encoding perl-TermReadKey perl-Test-Deep perl-Text-Glob perl-Text-Template perl-Throwable perl-Tie-IxHash perl-Tie-RefHash perl-Time-Piece perl-Try-Tiny perl-Type-Tiny perl-Types-Path-Tiny perl-URI perl-Unicode-Collate perl-Variable-Magic perl-XML-LibXML perl-XML-SAX perl-XML-SAX-Base perl-YAML-Tiny perl-aliased perl-autodie perl-devel perl-experimental perl-libwww perl-namespace-autoclean perl-namespace-clean perl-parent perl-podlators python-modules python2-base python3-base rsync sh4 utf8proc
BuildRequires: curl iproute2 libnss-mymachines perl-AWS-Signature4 perl-Archive-Tar-Wrapper perl-Class-XSAccessor perl-Data-Validate-IP perl-Digest-HMAC perl-Dist-Zilla-Plugin-CheckExtraTests perl-Dist-Zilla-Plugin-ContributorsFile perl-Dist-Zilla-Plugin-DynamicPrereqs perl-Dist-Zilla-Plugin-Git perl-Dist-Zilla-Plugin-Git-Contributors perl-Dist-Zilla-Plugin-MakeMaker-Awesome perl-Dist-Zilla-Plugin-Meta-Contributors perl-Dist-Zilla-Plugin-MetaProvides-Package perl-Dist-Zilla-Plugin-NextVersion-Semantic perl-Dist-Zilla-Plugin-OSPrereqs perl-Dist-Zilla-Plugin-OptionalFeature perl-Dist-Zilla-Plugin-OurPkgVersion perl-Dist-Zilla-Plugin-PromptIfStale perl-Dist-Zilla-Plugin-Run perl-Dist-Zilla-Plugin-Test-CPAN-Changes perl-Dist-Zilla-Plugin-Test-Kwalitee perl-Dist-Zilla-Plugin-Test-MinimumVersion perl-Expect perl-File-LibMagic perl-File-ShareDir-Install perl-Hash-Merge perl-List-MoreUtils perl-Net-OpenSSH perl-Net-SFTP-Foreign perl-Net-SSH2 perl-PPI-XS perl-Parallel-ForkManager perl-Ref-Util perl-Ref-Util-XS perl-Sort-Naturally perl-String-Escape perl-Sub-Override perl-Test-Exception perl-Test-Output perl-Test-UseAllModules perl-Test-Warnings perl-XML-Simple perl-YAML subversion wget

# Extra automatic dependencies, need to remove:

#BuildRequires: lsb-core lsb-release libnss-systemd

# Missed by buildreq:

BuildRequires: perl-IPC-Shareable

# Perl find-requires skips File::Spec::* modules, add File::Spec::Win32 manually

Requires: perl-PathTools

# Perl find-requires skips modules inside eval{}, add them manually

Requires: perl(Expect.pm) perl(Net/SSH2.pm) perl(Term/ANSIColor.pm) perl(Net/SFTP/Foreign.pm)


# Template files does't contains a proper Perl code

%add_findreq_skiplist */Commands/templates/*

%description
(R)?ex is a tool to ease the execution of commands on multiple
remote servers. It allows to manage all boxes from a central
point through the complete process of configuration management
and software deployment.


%package -n zsh-completion-rex
Summary:   Zsh completion for (R)?ex
Group:     Shells
BuildArch: noarch
Requires:  zsh
Requires:  %name = %EVR

%description -n zsh-completion-rex
Zsh completion for (R)?ex remote execution framework


%prep
%setup
%patch0 -p1

%patch1 -p0
%patch2
%patch3
%patch4

## Fix dist.ini:

### Remove [NextRelease] section:
sed -e '/^\[NextRelease/,/^$/ d' -i dist.ini

### Replace [Git::GatherDir] with [GatherDir] one:

sed -e 's/^\[Git::GatherDir/[GatherDir/' -i dist.ini

# Force version for NextVersion::Semantic:

export V=%{version}

# This creates Makefile.PL from dist.ini

/usr/bin/dzil build

%build
cd Rex-%{version}%{version_suffix}

# Fix test to work with ALT perl 5.28.0 / PathTools 3.74

sed -e "/=> realpath/ s#/\*')#').'/*'#" -i t/rsync.t

%perl_vendor_build

%install
cd Rex-%{version}%{version_suffix}
%perl_vendor_install

install -dp %buildroot%_sysconfdir/bash_completion.d/
install -dp %buildroot%_datadir/zsh/site-functions/
install -p -m 644 ../share/rex-tab-completion.bash %buildroot%_sysconfdir/bash_completion.d/%name
install -p -m 644 ../share/rex-tab-completion.zsh  %buildroot%_datadir/zsh/site-functions/_%name
rm -f %buildroot%perl_vendor_privlib/auto/share/dist/Rex/*-completion.*

mv -f CONTRIBUTORS ../
mv -f ChangeLog    ../


%files
%doc ChangeLog README.md CONTRIBUTORS doc/Rexfile-example1
%doc doc/LICENSE

%_bindir/rex
%_bindir/rexify

%_man1dir/rex*

%perl_vendor_privlib/Rex*

%_sysconfdir/bash_completion.d/%name

%files -n zsh-completion-rex
%_datadir/zsh/site-functions/_%name


%changelog

Полный changelog можно просмотреть здесь

 
дизайн и разработка: Vladimir Lettiev aka crux © 2004-2005, Andrew Avramenko aka liks © 2007-2008
текущий майнтейнер: Michael Shigorin