containers-common/containers-common.spec

121 lines
5.9 KiB
RPMSpec
Raw Normal View History

# Bellow definitions are used to deliver config files from a particular branch
# of c/image, c/common, c/storage vendored in all podman, skopeo, buildah.
# These vendored components must have the same version. If it is not the case,
# pick the oldest version on c/image, c/common, c/storage vendored in
# podman/skopeo/podman.
%global skopeo_branch master
%global podman_branch master
%global image_branch master
%global common_branch master
%global storage_branch master
%global shortnames_branch master
%global github_containers https://raw.githubusercontent.com/containers
Epoch: 3
Name: containers-common
Version: 1
Release: 2%{?dist}
Summary: Common configuration and documentation for containers
License: ASL 2.0
BuildArch: noarch
BuildRequires: go-md2man
Recommends: fuse-overlayfs
Recommends: slirp4netns
Recommends: subscription-manager
Source1: %{github_containers}/storage/%{storage_branch}/storage.conf
Source2: %{github_containers}/storage/%{storage_branch}/docs/containers-storage.conf.5.md
Source3: mounts.conf
Source4: %{github_containers}/image/%{image_branch}/docs/containers-registries.conf.5.md
Source5: %{github_containers}/image/%{image_branch}/registries.conf
Source6: %{github_containers}/image/%{image_branch}/docs/containers-policy.json.5.md
Source7: %{github_containers}/common/%{common_branch}/pkg/seccomp/seccomp.json
Source8: %{github_containers}/podman/%{podman_branch}/docs/source/markdown/containers-mounts.conf.5.md
Source9: %{github_containers}/image/%{image_branch}/docs/containers-signature.5.md
Source10: %{github_containers}/image/%{image_branch}/docs/containers-transports.5.md
Source11: %{github_containers}/image/%{image_branch}/docs/containers-certs.d.5.md
Source12: %{github_containers}/image/%{image_branch}/docs/containers-registries.d.5.md
Source13: %{github_containers}/common/%{common_branch}/pkg/config/containers.conf
Source14: %{github_containers}/common/%{common_branch}/docs/containers.conf.5.md
Source15: %{github_containers}/image/%{image_branch}/docs/containers-auth.json.5.md
Source16: %{github_containers}/image/%{image_branch}/docs/containers-registries.conf.d.5.md
Source17: %{github_containers}/skopeo/%{skopeo_branch}/integration/fixtures/policy.json
Source18: %{github_containers}/skopeo/%{skopeo_branch}/default.yaml
Source19: %{github_containers}/shortnames/%{shortnames_branch}/shortnames.conf
# use this script to update sources above - it assures it contains required content
Source20: update.sh
%description
This package contains common configuration files and documentation for container
tools ecosystem, such as Podman, Buildah and Skopeo.
It is required because the most of configuration files and docs come from projects
which are vendored into Podman, Buildah, Skopeo, etc. but they are not packaged
separately.
%prep
%build
%install
install -dp %{buildroot}%{_sysconfdir}/containers/{certs.d,oci/hooks.d,registries.conf.d,registries.d}
install -dp %{buildroot}%{_sharedstatedir}/containers/sigstore
install -m0644 %{SOURCE18} %{buildroot}%{_sysconfdir}/containers/registries.d/default.yaml
install -m0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/containers/storage.conf
install -m0644 %{SOURCE5} %{buildroot}%{_sysconfdir}/containers/registries.conf
install -m0644 %{SOURCE19} %{buildroot}%{_sysconfdir}/containers/registries.conf.d/shortnames.conf
install -m0644 %{SOURCE17} %{buildroot}%{_sysconfdir}/containers/policy.json
install -dp %{buildroot}%{_mandir}/man5
go-md2man -in %{SOURCE2} -out %{buildroot}%{_mandir}/man5/containers-storage.conf.5
go-md2man -in %{SOURCE4} -out %{buildroot}%{_mandir}/man5/containers-registries.conf.5
go-md2man -in %{SOURCE6} -out %{buildroot}%{_mandir}/man5/containers-policy.json.5
go-md2man -in %{SOURCE8} -out %{buildroot}%{_mandir}/man5/containers-mounts.conf.5
go-md2man -in %{SOURCE9} -out %{buildroot}%{_mandir}/man5/containers-signature.5
go-md2man -in %{SOURCE10} -out %{buildroot}%{_mandir}/man5/containers-transports.5
go-md2man -in %{SOURCE11} -out %{buildroot}%{_mandir}/man5/containers-certs.d.5
go-md2man -in %{SOURCE12} -out %{buildroot}%{_mandir}/man5/containers-registries.d.5
go-md2man -in %{SOURCE14} -out %{buildroot}%{_mandir}/man5/containers.conf.5
go-md2man -in %{SOURCE15} -out %{buildroot}%{_mandir}/man5/containers-auth.json.5
go-md2man -in %{SOURCE16} -out %{buildroot}%{_mandir}/man5/containers-registries.conf.d.5
install -dp %{buildroot}%{_datadir}/containers
install -m0644 %{SOURCE3} %{buildroot}%{_datadir}/containers/mounts.conf
install -m0644 %{SOURCE7} %{buildroot}%{_datadir}/containers/seccomp.json
install -m0644 %{SOURCE13} %{buildroot}%{_datadir}/containers/containers.conf
# install secrets patch directory
install -d -p -m 755 %{buildroot}/%{_datadir}/rhel/secrets
# rhbz#1110876 - update symlinks for subscription management
ln -s %{_sysconfdir}/pki/entitlement %{buildroot}%{_datadir}/rhel/secrets/etc-pki-entitlement
ln -s %{_sysconfdir}/rhsm %{buildroot}%{_datadir}/rhel/secrets/rhsm
ln -s %{_sysconfdir}/yum.repos.d/redhat.repo %{buildroot}%{_datadir}/rhel/secrets/redhat.repo
%files
%dir %{_sysconfdir}/containers
%dir %{_sysconfdir}/containers/certs.d
%dir %{_sysconfdir}/containers/registries.d
%dir %{_sysconfdir}/containers/oci
%dir %{_sysconfdir}/containers/oci/hooks.d
%config(noreplace) %{_sysconfdir}/containers/policy.json
%config(noreplace) %{_sysconfdir}/containers/registries.d/default.yaml
%config(noreplace) %{_sysconfdir}/containers/storage.conf
%config(noreplace) %{_sysconfdir}/containers/registries.conf
%config(noreplace) %{_sysconfdir}/containers/registries.conf.d/shortnames.conf
%ghost %{_sysconfdir}/containers/containers.conf
%dir %{_sharedstatedir}/containers/sigstore
%{_mandir}/man5/*
%dir %{_datadir}/containers
%{_datadir}/containers/mounts.conf
%{_datadir}/containers/seccomp.json
%{_datadir}/containers/containers.conf
%dir %{_datadir}/rhel/secrets
%{_datadir}/rhel/secrets/*
%changelog
* Tue Jan 12 2021 Lokesh Mandvekar <lsm5@fedoraproject.org> - 3:1-2
- update registries.conf and other files
* Tue Dec 08 2020 Jindrich Novy <jnovy@redhat.com> - 3:1-1
- initial build