dd46d151e7
See: https://bugzilla.redhat.com/show_bug.cgi?id=2254077 Signed-off-by: Ondrej Mosnáček <omosnacek@gmail.com>
216 lines
4.7 KiB
RPMSpec
216 lines
4.7 KiB
RPMSpec
# Disable the growpart subpackage in EPEL, as RHEL ships it on its own
|
|
%if 0%{?epel}
|
|
%bcond_with growpart
|
|
%else
|
|
%bcond_without growpart
|
|
%endif
|
|
|
|
Summary: Cloud image management utilities
|
|
Name: cloud-utils
|
|
Version: 0.33
|
|
Release: %autorelease
|
|
License: GPL-3.0-only
|
|
URL: https://github.com/canonical/%{name}
|
|
|
|
Source: %{url}/archive/%{version}/%{name}-%{version}.tar.gz
|
|
|
|
BuildArch: noarch
|
|
|
|
Requires: %{name}-growpart
|
|
Requires: %{name}-cloud-localds
|
|
Requires: %{name}-write-mime-multipart
|
|
Requires: %{name}-ec2metadata
|
|
Requires: %{name}-resize-part-image
|
|
Requires: %{name}-mount-image-callback
|
|
Requires: %{name}-vcs-run
|
|
|
|
%description
|
|
This package provides a useful set of utilities for managing cloud images.
|
|
|
|
The tasks associated with image bundling are often tedious and repetitive. The
|
|
cloud-utils package provides several scripts that wrap the complicated tasks
|
|
with a much simpler interface.
|
|
|
|
|
|
%if %{with growpart}
|
|
%package growpart
|
|
Summary: A script for growing a partition
|
|
|
|
Requires: gawk
|
|
Requires: util-linux
|
|
# gdisk is only required for resizing GPT partitions and depends on libicu
|
|
# (25MB). We don't make this a hard requirement to save some space in non-GPT
|
|
# systems.
|
|
Recommends: gdisk
|
|
Recommends: lvm2
|
|
|
|
|
|
%description growpart
|
|
This package provides the growpart script for growing a partition. It is
|
|
primarily used in cloud images in conjunction with the dracut-modules-growroot
|
|
package to grow the root partition on first boot.
|
|
%endif
|
|
|
|
|
|
%package cloud-localds
|
|
Summary: A script for creating a nocloud configuration disk for cloud-init
|
|
|
|
Recommends: tar
|
|
Recommends: dosfstools
|
|
Recommends: mtools
|
|
Recommends: genisoimage
|
|
Recommends: qemu-img
|
|
|
|
|
|
%description cloud-localds
|
|
This package provides the cloud-localds script, which creates a disk-image
|
|
with user-data and/or meta-data for cloud-init.
|
|
|
|
|
|
%package write-mime-multipart
|
|
Summary: A utilty for creating mime-multipart files
|
|
|
|
|
|
%description write-mime-multipart
|
|
This package provides the write-mime-multipart script, which creates
|
|
mime multipart files that can be consumed by cloud-init as user-data.
|
|
|
|
|
|
%package ec2metadata
|
|
Summary: A script to query and display EC2 AMI instance metadata
|
|
|
|
|
|
%description ec2metadata
|
|
This package provides the ec2metadata script, which can be used to query and
|
|
display EC2 instance metadata rekated to an AMI instance.
|
|
|
|
|
|
%package resize-part-image
|
|
Summary: A script for resizing cloud images
|
|
|
|
Requires: file
|
|
Requires: gzip
|
|
Requires: e2fsprogs
|
|
Requires: gawk
|
|
Requires: tar
|
|
|
|
|
|
%description resize-part-image
|
|
This package provides the resize-part-image script, which can be used to
|
|
resize a partition image and the contained filesystem to a new size.
|
|
|
|
|
|
%package mount-image-callback
|
|
Summary: A script to run commands over cloud image contents
|
|
|
|
Requires: gawk
|
|
Requires: util-linux
|
|
Recommends: qemu-img
|
|
|
|
|
|
%description mount-image-callback
|
|
This package provides the mount-image-callback script, which mounts a cloud
|
|
image to a temporary mountpoint and runs a specified command on the contents.
|
|
|
|
|
|
%package vcs-run
|
|
Summary: Script to run commands over a VCS repository contents
|
|
|
|
Recommends: breezy
|
|
Recommends: git-core
|
|
Recommends: mercurial
|
|
Recommends: wget
|
|
|
|
|
|
%description vcs-run
|
|
This package provides the vcs-run script, which fetches a code repository
|
|
into a temporary directory and runs a user-specified command in it.
|
|
|
|
|
|
%prep
|
|
%setup -q
|
|
|
|
%build
|
|
|
|
%install
|
|
|
|
# Create the target directories
|
|
install -d %{buildroot}%{_bindir}
|
|
install -d %{buildroot}%{_mandir}/man1
|
|
|
|
# Install binaries and manpages
|
|
install -pm 0755 bin/* %{buildroot}%{_bindir}/
|
|
install -pm 0644 man/* %{buildroot}%{_mandir}/man1/
|
|
|
|
# Exclude Ubuntu-specific tools
|
|
rm %{buildroot}%{_bindir}/*ubuntu*
|
|
|
|
# Exclude the cloud-run-instances manpage
|
|
rm -f %{buildroot}%{_mandir}/man1/cloud-run-instances.*
|
|
|
|
# Exclude euca2ools wrappers and manpages
|
|
rm -f %{buildroot}%{_bindir}/cloud-publish-*
|
|
rm -f %{buildroot}%{_mandir}/man1/cloud-publish-*
|
|
|
|
%if %{without growpart}
|
|
rm -f %{buildroot}%{_bindir}/growpart
|
|
rm -f %{buildroot}%{_mandir}/man1/growpart.*
|
|
%endif
|
|
|
|
|
|
%files
|
|
%doc ChangeLog
|
|
%license LICENSE
|
|
|
|
|
|
%if %{with growpart}
|
|
%files growpart
|
|
%doc ChangeLog
|
|
%license LICENSE
|
|
%{_bindir}/growpart
|
|
%doc %{_mandir}/man1/growpart.*
|
|
%endif
|
|
|
|
|
|
%files cloud-localds
|
|
%doc ChangeLog
|
|
%license LICENSE
|
|
%{_bindir}/cloud-localds
|
|
%doc %{_mandir}/man1/cloud-localds.*
|
|
|
|
|
|
%files write-mime-multipart
|
|
%doc ChangeLog
|
|
%license LICENSE
|
|
%{_bindir}/write-mime-multipart
|
|
%doc %{_mandir}/man1/write-mime-multipart.*
|
|
|
|
|
|
%files ec2metadata
|
|
%doc ChangeLog
|
|
%license LICENSE
|
|
%{_bindir}/ec2metadata
|
|
|
|
|
|
%files resize-part-image
|
|
%doc ChangeLog
|
|
%license LICENSE
|
|
%{_bindir}/resize-part-image
|
|
%doc %{_mandir}/man1/resize-part-image.*
|
|
|
|
|
|
%files mount-image-callback
|
|
%doc ChangeLog
|
|
%license LICENSE
|
|
%{_bindir}/mount-image-callback
|
|
|
|
|
|
%files vcs-run
|
|
%doc ChangeLog
|
|
%license LICENSE
|
|
%{_bindir}/vcs-run
|
|
|
|
|
|
%changelog
|
|
%autochangelog
|