# Generated from master_delivery-1.0.7.gem by gem2rpm -*- rpm-spec -*- %global gem_name master_delivery Name: rubygem-%{gem_name} Version: 1.0.7 Release: 1%{?dist} Summary: Deliver master files to appropriate place License: MIT URL: https://github.com/shinyaohtani/master_delivery/tree/master/README.md Source0: https://rubygems.org/gems/%{gem_name}-%{version}.gem BuildRequires: ruby(release) BuildRequires: rubygems-devel BuildRequires: ruby >= 2.3.0 # BuildRequires: rubygem(github_changelog_generator) >= 1.15.0 # BuildRequires: rubygem(pry) >= 0.12.2 # BuildRequires: rubygem(pry-byebug) >= 3.9.0 # BuildRequires: rubygem(rspec) >= 3.9.0 # BuildRequires: rubygem(rubocop) >= 0.80.1 # BuildRequires: rubygem(rubocop-performance) >= 1.5.2 # BuildRequires: rubygem(rubocop-rspec) >= 1.38.1 BuildArch: noarch %description Deliver all master files managed in a single master snapshot directory into the specified directory while maintaining the hierarchy of the master snapshot directory. If the destination file already exists, back it up first and then deliver the master file. The difference with rsync is that master_delivery creates a symlinks instead of copying the master files. They are symlinks, so you have to keep in mind that you have to keep the master files in the same location, but it also has the advantage that the master file is updated at the same time when you directly make changes to the delivered file. Do you have any experience that the master file is getting old gradually? master_delivery can prevent this. If the master directory is git or svn managed, you can manage revisions of files that are delivered here and there at once with commands like git diff and git commit. %package doc Summary: Documentation for %{name} Requires: %{name} = %{version}-%{release} BuildArch: noarch %description doc Documentation for %{name}. %prep %setup -q -n %{gem_name}-%{version} %build # Create the gem as gem install only works on a gem file gem build ../%{gem_name}-%{version}.gemspec # %%gem_install compiles any C extensions and installs the gem into ./%%gem_dir # by default, so that we can move it into the buildroot in %%install %gem_install %install mkdir -p %{buildroot}%{gem_dir} cp -a .%{gem_dir}/* \ %{buildroot}%{gem_dir}/ mkdir -p %{buildroot}%{_bindir} cp -a .%{_bindir}/* \ %{buildroot}%{_bindir}/ find %{buildroot}%{gem_instdir}/exe -type f | xargs chmod a+x %check pushd .%{gem_instdir} # rspec spec popd %files %dir %{gem_instdir} %{_bindir}/master_delivery %exclude %{gem_instdir}/.gitignore %exclude %{gem_instdir}/.rubocop.yml %exclude %{gem_instdir}/.travis.yml %{gem_instdir}/CODE_OF_CONDUCT.md %license %{gem_instdir}/LICENSE.txt %{gem_instdir}/bin %{gem_instdir}/exe %{gem_libdir} %exclude %{gem_cache} %{gem_spec} %files doc %doc %{gem_docdir} %exclude %{gem_instdir}/.rspec %doc %{gem_instdir}/CHANGELOG.md %{gem_instdir}/Gemfile %{gem_instdir}/Gemfile.lock %doc %{gem_instdir}/README.md %{gem_instdir}/Rakefile %{gem_instdir}/master_delivery.gemspec %changelog * Tue Aug 24 2021 mockbuilder - 1.0.7-1 - Initial package