diff --git a/.gitignore b/.gitignore index ce2e7b1..12562a6 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -SOURCES/skopeo-28d4e08.tar.gz +SOURCES/skopeo-2e8377a.tar.gz diff --git a/.skopeo.metadata b/.skopeo.metadata index 879e47a..0cd02c2 100644 --- a/.skopeo.metadata +++ b/.skopeo.metadata @@ -1 +1 @@ -bc36610bfa87dfe4b627e46079d44ea079d9346a SOURCES/skopeo-28d4e08.tar.gz +5a582219cf068b18f7b0f5879ebe1bd41a08cb6d SOURCES/skopeo-2e8377a.tar.gz diff --git a/SOURCES/containers-storage.conf.5.md b/SOURCES/containers-storage.conf.5.md new file mode 100644 index 0000000..429e42e --- /dev/null +++ b/SOURCES/containers-storage.conf.5.md @@ -0,0 +1,61 @@ +% storage.conf(5) Container Storage Configuration File +% Dan Walsh +% May 2017 + +# NAME +storage.conf - Syntax of Container Storage configuration file + +# DESCRIPTION +The STORAGE configuration file specifies all of the available container storage options +for tools using shared container storage, but in a TOML format that can be more easily modified +and versioned. + +# FORMAT +The [TOML format][toml] is used as the encoding of the configuration file. +Every option and subtable listed here is nested under a global "storage" table. +No bare options are used. The format of TOML can be simplified to: + + [table] + option = value + + [table.subtable1] + option = value + + [table.subtable2] + option = value + +## STORAGE TABLE + +The `storage` table supports the following options: + +**graphroot**="" + container storage graph dir (default: "/var/lib/containers/storage") + Default directory to store all writable content created by container storage programs + +**runroot**="" + container storage run dir (default: "/var/run/containers/storage") + Default directory to store all temporary writable content created by container storage programs + +**driver**="" + container storage driver (default is "overlay") + Default Copy On Write (COW) container storage driver + +### STORAGE OPTIONS TABLE + +The `storage.options` table supports the following options: + +**additionalimagestores**=[] + Paths to additional container image stores. Usually these are read/only and stored on remote network shares. + +**size**="" + Maximum size of a container image. Default is 10GB. This flag can be used to set quota + on the size of container images. + +**override_kernel_check**="" + Tell storage drivers to ignore kernel version checks. Some storage drivers assume that if a kernel is too + old, the driver is not supported. But for kernels that have had the drivers backported, this flag + allows users to override the checks + +# HISTORY +May 2017, Originally compiled by Dan Walsh +Format copied from crio.conf man page created by Aleksa Sarai diff --git a/SOURCES/mounts.conf b/SOURCES/mounts.conf new file mode 100644 index 0000000..b7cde9d --- /dev/null +++ b/SOURCES/mounts.conf @@ -0,0 +1 @@ +/usr/share/rhel/secrets:/run/secrets diff --git a/SOURCES/storage.conf b/SOURCES/storage.conf new file mode 100644 index 0000000..ffd9ef1 --- /dev/null +++ b/SOURCES/storage.conf @@ -0,0 +1,28 @@ +# storage.conf is the configuration file for all tools +# that share the containers/storage libraries +# See man 5 containers-storage.conf for more information + +# The "container storage" table contains all of the server options. +[storage] + +# Default Storage Driver +driver = "overlay" + +# Temporary storage location +runroot = "/var/run/containers/storage" + +# Primary Read/Write location of container storage +graphroot = "/var/lib/containers/storage" + +[storage.options] +# AdditionalImageStores is used to pass paths to additional Read/Only image stores +# Must be comma separated list. +additionalimagestores = [ +] + +# Size is used to set a maximum size of the container image. Only supported by +# certain container storage drivers. +size = "" + +# OverrideKernelCheck tells the driver to ignore kernel checks based on kernel version +override_kernel_check = "true" diff --git a/SPECS/skopeo.spec b/SPECS/skopeo.spec index bb37f92..a8b77ec 100644 --- a/SPECS/skopeo.spec +++ b/SPECS/skopeo.spec @@ -19,18 +19,21 @@ # https://github.com/projectatomic/skopeo %global provider_prefix %{provider}.%{provider_tld}/%{project}/%{repo} %global import_path %{provider_prefix} -%global commit0 28d4e08a4bee85ad7c25106431df649c6f9e389b +%global commit0 2e8377a7085c13674be156f32c100708da838b7e %global shortcommit0 %(c=%{commit0}; echo ${c:0:7}) %global git0 https://%{import_path} Name: %{repo} Epoch: 1 -Version: 0.1.24 -Release: 1.dev.git%{shortcommit0}%{?dist} +Version: 0.1.26 +Release: 2.dev.git%{shortcommit0}%{?dist} Summary: Inspect Docker images and repositories on registries License: ASL 2.0 URL: %{git0} Source0: %{git0}/archive/%{commit0}/%{name}-%{shortcommit0}.tar.gz +Source1: storage.conf +Source2: containers-storage.conf.5.md +Source3: mounts.conf BuildRequires: git # If go_compiler is not set to 1, there is no virtual provide. Use golang instead. BuildRequires: %{?go_compiler:compiler(go-compiler)}%{!?go_compiler:golang} >= 1.6.2 @@ -170,7 +173,7 @@ policy under `/etc/containers/`. %build mkdir -p src/github.com/projectatomic -ln -s ../../../ src/github.com/projectatomic/skopeo +ln -s ../../../ src/github.com/projectatomic/%{name} mkdir -p vendor/src for v in vendor/*; do @@ -191,15 +194,28 @@ export GOPATH=$(pwd):$(pwd)/vendor:%{gopath} %define gobuild(o:) go build -ldflags "${LDFLAGS:-} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n')" -a -v -x %{?**}; %endif -%gobuild -o skopeo ./cmd/skopeo +%gobuild -o %{name} ./cmd/%{name} -if test -f man/skopeo.1.md; then - go-md2man -in man/skopeo.1.md -out skopeo.1 +if test -f man/%{name}.1.md; then + go-md2man -in man/%{name}.1.md -out %{name}.1 fi +go-md2man -in %{SOURCE2} -out containers-storage.conf.5 + %install -mkdir -p %{buildroot}/%{_mandir}/man1 make DESTDIR=%{buildroot} install +install -m0644 %{SOURCE1} %{buildroot}%{_sysconfdir}/containers/storage.conf +mkdir -p %{buildroot}%{_mandir}/man5 +install -m644 containers-storage.conf.5 %{buildroot}%{_mandir}/man5 +mkdir -p %{buildroot}%{_datadir}/containers +install -m0644 %{SOURCE3} %{buildroot}%{_datadir}/containers/mounts.conf + +# install secrets patch directory +install -d -p -m 750 %{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/rhel7.repo # source codes for building projects %if 0%{?with_devel} @@ -261,9 +277,17 @@ export GOPATH=%{buildroot}/%{gopath}:$(pwd)/vendor:%{gopath} %{_sysconfdir}/containers %config(noreplace) %{_sysconfdir}/containers/policy.json %config(noreplace) %{_sysconfdir}/containers/registries.d/default.yaml +%config(noreplace) %{_sysconfdir}/containers/storage.conf %dir %{_sysconfdir}/containers +%dir %{_datadir}/containers +%{_datadir}/containers/mounts.conf %dir %{_sysconfdir}/containers/registries.d %dir %{_sharedstatedir}/atomic/sigstore +%{_mandir}/man5/containers-storage.conf.5* +%dir %{_datadir}/rhel/secrets +%{_datadir}/rhel/secrets/etc-pki-entitlement +%{_datadir}/rhel/secrets/rhel7.repo +%{_datadir}/rhel/secrets/rhsm %files %{_bindir}/%{name} @@ -273,6 +297,38 @@ export GOPATH=%{buildroot}/%{gopath}:$(pwd)/vendor:%{gopath} %{_datadir}/bash-completion/ %changelog +* Thu Nov 16 2017 Frantisek Kluknavsky - 1:0.1.26-2.dev.git2e8377a +- bump changelog + +* Wed Nov 15 2017 dwalsh - 0.1.25-2.git2e8377a7 +- Add manifest type conversion to skopeo copy +- User can select from 3 manifest types: oci, v2s1, or v2s2 +- e.g skopeo copy --format v2s1 --compress-blobs docker-archive:alp.tar dir:my-directory + +* Wed Nov 8 2017 dwalsh - 0.1.25-2.git7fd6f66b +- Force storage.conf to default to overlay + +* Wed Nov 8 2017 dwalsh - 0.1.25-1.git7fd6f66b +- Fix CVE in tar-split +- copy: add shared blob directory support for OCI sources/destinations +- Aligning Docker version between containers/image and skopeo +- Update image-tools, and remove the duplicate Sirupsen/logrus vendor +- makefile: use -buildmode=pie + +* Tue Nov 7 2017 dwalsh - 1:0.1.24-8.git28d4e08a +- Add /usr/share/containers/mounts.conf + +* Mon Oct 23 2017 Frantisek Kluknavsky - 1:0.1.24-5.gitdd2c3e3 +- built commit dd2c3e3a8e33b849f3625f4f56fa229c76448629 + +* Thu Oct 19 2017 Lokesh Mandvekar - 1:0.1.24-3.dev.git28d4e08 +- add rhel subscription secrets date to skopeo-containers +- skopeo-containers conflicts with docker >= 2:1.13.1-61 + +* Thu Oct 12 2017 Lokesh Mandvekar - 1:0.1.24-2.dev.git28d4e08 +- Update container/storage.conf and containers-storage.conf man page +- Default override to true so it is consistent with RHEL. + * Fri Oct 06 2017 Lokesh Mandvekar - 1:0.1.24-1.dev.git28d4e08 - Resolves: #1499274 - built commit 28d4e08