diff --git a/.gitignore b/.gitignore index 6e5547f..d977000 100644 --- a/.gitignore +++ b/.gitignore @@ -685,3 +685,11 @@ /v1.26.0.tar.gz /v1.26.1.tar.gz /v1.26.2.tar.gz +/v1.26.3.tar.gz +/v1.26.4.tar.gz +/v1.27.0.tar.gz +/v1.27.1.tar.gz +/v1.27.2.tar.gz +/v1.28.0.tar.gz +/v1.28.2.tar.gz +/v1.29.0.tar.gz diff --git a/buildah.spec b/buildah.spec index 399c583..6984b4e 100644 --- a/buildah.spec +++ b/buildah.spec @@ -1,7 +1,3 @@ -%if "%{_vendor}" == "debbuild" -%define gobuild(o:) GO111MODULE=off go build -buildmode pie -tags=" ${BUILDTAGS:-}" -a -v -x %{?**}; -%endif - %global with_debug 1 %if 0%{?with_debug} @@ -19,36 +15,19 @@ %global import_path %{provider}.%{provider_tld}/%{project}/%{repo} %global git0 https://%{import_path} -%global built_tag v1.26.2 +%global built_tag v1.29.0 +%global built_tag_strip %(b=%{built_tag}; echo ${b:1}) +%global gen_version %(b=%{built_tag_strip}; echo ${b/-/"~"}) Name: %{repo} -Version: 1.26.2 -%if "%{_vendor}" == "debbuild" -Maintainer: Lokesh Mandvekar -License: ASL-2.0+ -Release: 0%{?dist} -%else +Version: %{gen_version} License: ASL 2.0 and BSD and MIT and MPLv2.0 Release: %autorelease -%endif Summary: A command line tool used for creating OCI Images URL: https://%{name}.io +# Tarball fetched from upstream Source: %{git0}/archive/%{built_tag}.tar.gz BuildRequires: go-md2man -%if "%{_vendor}" == "debbuild" -BuildRequires: git -BuildRequires: golang -BuildRequires: libassuan-dev -BuildRequires: libbtrfs-dev -BuildRequires: libdevmapper-dev -BuildRequires: libglib2.0-dev -BuildRequires: libgpg-error-dev -BuildRequires: libgpgme-dev -BuildRequires: libseccomp-dev -BuildRequires: libsystemd-dev -BuildRequires: pkg-config -Requires: containers-common >= 4:1 -%else BuildRequires: device-mapper-devel BuildRequires: git-core BuildRequires: golang >= 1.16.6 @@ -61,49 +40,132 @@ BuildRequires: make BuildRequires: ostree-devel BuildRequires: btrfs-progs-devel BuildRequires: shadow-utils-subid-devel -Requires: containers-common >= 4:1-46 -Suggests: containernetworking-plugins >= 0.9.1-1 -Requires: netavark -Requires: iptables -Requires: nftables +%if 0%{?fedora} > 37 +Requires: containers-common-extra >= 4:1-78 +%else +%if 0%{?fedora} == 37 +Requires: containers-common-extra >= 4:1-73 +%else +Requires: containers-common-extra >= 4:1-62 +%endif +%endif BuildRequires: libseccomp-static Requires: libseccomp >= 2.4.1-0 Suggests: cpp -Suggests: qemu-user-static # awk '{print "Provides: bundled(golang("$1")) = "$2}' go.mod | sort | uniq | sed -e 's/-/_/g' -e '/bundled(golang())/d' -e '/bundled(golang(go\|module\|replace\|require))/d' -Provides: bundled(golang(github.com/containerd/containerd)) = v1.5.9 -Provides: bundled(golang(github.com/containernetworking/cni)) = v1.0.1 -Provides: bundled(golang(github.com/containers/common)) = v0.47.4 -Provides: bundled(golang(github.com/containers/image/v5)) = v5.19.1 -Provides: bundled(golang(github.com/containers/ocicrypt)) = v1.1.2 -Provides: bundled(golang(github.com/containers/storage)) = v1.38.2 -Provides: bundled(golang(github.com/docker/distribution)) = v2.8.0+incompatible -Provides: bundled(golang(github.com/docker/docker)) = v20.10.12+incompatible -Provides: bundled(golang(github.com/docker/go_units)) = v0.4.0 -Provides: bundled(golang(github.com/docker/libnetwork)) = v0.8.0_dev.2.0.20190625141545_5a177b73e316 -Provides: bundled(golang(github.com/fsouza/go_dockerclient)) = v1.7.8 +Provides: bundled(golang(github.com/Azure/go_ansiterm)) = v0.0.0_20210617225240_d185dfc1b5a1 +Provides: bundled(golang(github.com/BurntSushi/toml)) = v1.2.1 +Provides: bundled(golang(github.com/Microsoft/go_winio)) = v0.6.0 +Provides: bundled(golang(github.com/Microsoft/hcsshim)) = v0.9.6 +Provides: bundled(golang(github.com/VividCortex/ewma)) = v1.2.0 +Provides: bundled(golang(github.com/acarl005/stripansi)) = v0.0.0_20180116102854_5a71ef0e047d +Provides: bundled(golang(github.com/asaskevich/govalidator)) = v0.0.0_20210307081110_f21760c49a8d +Provides: bundled(golang(github.com/blang/semver/v4)) = v4.0.0 +Provides: bundled(golang(github.com/chzyer/readline)) = v1.5.1 +Provides: bundled(golang(github.com/container_orchestrated_devices/container_device_interface)) = v0.5.3 +Provides: bundled(golang(github.com/containerd/cgroups)) = v1.0.4 +Provides: bundled(golang(github.com/containerd/containerd)) = v1.6.15 +Provides: bundled(golang(github.com/containerd/stargz_snapshotter/estargz)) = v0.13.0 +Provides: bundled(golang(github.com/containernetworking/cni)) = v1.1.2 +Provides: bundled(golang(github.com/containernetworking/plugins)) = v1.2.0 +Provides: bundled(golang(github.com/containers/common)) = v0.51.0 +Provides: bundled(golang(github.com/containers/image/v5)) = v5.24.0 +Provides: bundled(golang(github.com/containers/libtrust)) = v0.0.0_20230121012942_c1716e8a8d01 +Provides: bundled(golang(github.com/containers/ocicrypt)) = v1.1.7 +Provides: bundled(golang(github.com/containers/storage)) = v1.45.3 +Provides: bundled(golang(github.com/cyberphone/json_canonicalization)) = v0.0.0_20220623050100_57a0ce2678a7 +Provides: bundled(golang(github.com/cyphar/filepath_securejoin)) = v0.2.3 +Provides: bundled(golang(github.com/davecgh/go_spew)) = v1.1.1 +Provides: bundled(golang(github.com/disiqueira/gotree/v3)) = v3.0.2 +Provides: bundled(golang(github.com/docker/distribution)) = v2.8.1+incompatible +Provides: bundled(golang(github.com/docker/docker)) = v20.10.23+incompatible +Provides: bundled(golang(github.com/docker/docker_credential_helpers)) = v0.7.0 +Provides: bundled(golang(github.com/docker/go_connections)) = v0.4.1_0.20210727194412_58542c764a11 +Provides: bundled(golang(github.com/docker/go_units)) = v0.5.0 +Provides: bundled(golang(github.com/fsnotify/fsnotify)) = v1.6.0 +Provides: bundled(golang(github.com/fsouza/go_dockerclient)) = v1.9.3 Provides: bundled(golang(github.com/ghodss/yaml)) = v1.0.0 +Provides: bundled(golang(github.com/go_openapi/analysis)) = v0.21.4 +Provides: bundled(golang(github.com/go_openapi/errors)) = v0.20.3 +Provides: bundled(golang(github.com/go_openapi/jsonpointer)) = v0.19.5 +Provides: bundled(golang(github.com/go_openapi/jsonreference)) = v0.20.0 +Provides: bundled(golang(github.com/go_openapi/loads)) = v0.21.2 +Provides: bundled(golang(github.com/go_openapi/runtime)) = v0.24.1 +Provides: bundled(golang(github.com/go_openapi/spec)) = v0.20.7 +Provides: bundled(golang(github.com/go_openapi/strfmt)) = v0.21.3 +Provides: bundled(golang(github.com/go_openapi/swag)) = v0.22.3 +Provides: bundled(golang(github.com/go_openapi/validate)) = v0.22.0 +Provides: bundled(golang(github.com/gogo/protobuf)) = v1.3.2 +Provides: bundled(golang(github.com/golang/groupcache)) = v0.0.0_20210331224755_41bb18bfe9da +Provides: bundled(golang(github.com/golang/protobuf)) = v1.5.2 +Provides: bundled(golang(github.com/google/go_cmp)) = v0.5.9 +Provides: bundled(golang(github.com/google/go_containerregistry)) = v0.12.1 +Provides: bundled(golang(github.com/google/go_intervals)) = v0.0.2 +Provides: bundled(golang(github.com/google/uuid)) = v1.3.0 +Provides: bundled(golang(github.com/gorilla/mux)) = v1.8.0 +Provides: bundled(golang(github.com/hashicorp/errwrap)) = v1.1.0 Provides: bundled(golang(github.com/hashicorp/go_multierror)) = v1.1.1 -Provides: bundled(golang(github.com/ishidawataru/sctp)) = v0.0.0_20210226210310_f2269e66cdee -Provides: bundled(golang(github.com/konsorten/go_windows_terminal_sequences)) = v1.0.3 +Provides: bundled(golang(github.com/imdario/mergo)) = v0.3.13 +Provides: bundled(golang(github.com/inconshreveable/mousetrap)) = v1.0.1 +Provides: bundled(golang(github.com/jinzhu/copier)) = v0.3.5 +Provides: bundled(golang(github.com/josharian/intern)) = v1.0.0 +Provides: bundled(golang(github.com/json_iterator/go)) = v1.1.12 +Provides: bundled(golang(github.com/klauspost/compress)) = v1.15.15 +Provides: bundled(golang(github.com/klauspost/pgzip)) = v1.2.6_0.20220930104621_17e8dac29df8 +Provides: bundled(golang(github.com/letsencrypt/boulder)) = v0.0.0_20221109233200_85aa52084eaf +Provides: bundled(golang(github.com/mailru/easyjson)) = v0.7.7 +Provides: bundled(golang(github.com/manifoldco/promptui)) = v0.9.0 +Provides: bundled(golang(github.com/mattn/go_runewidth)) = v0.0.14 Provides: bundled(golang(github.com/mattn/go_shellwords)) = v1.0.12 +Provides: bundled(golang(github.com/miekg/pkcs11)) = v1.1.1 +Provides: bundled(golang(github.com/mistifyio/go_zfs/v3)) = v3.0.0 +Provides: bundled(golang(github.com/mitchellh/mapstructure)) = v1.5.0 +Provides: bundled(golang(github.com/moby/sys/mount)) = v0.3.3 +Provides: bundled(golang(github.com/moby/sys/mountinfo)) = v0.6.2 +Provides: bundled(golang(github.com/moby/term)) = v0.0.0_20210619224110_3f7ff695adc6 +Provides: bundled(golang(github.com/modern_go/concurrent)) = v0.0.0_20180306012644_bacd9c7ef1dd +Provides: bundled(golang(github.com/modern_go/reflect2)) = v1.0.2 +Provides: bundled(golang(github.com/morikuni/aec)) = v1.0.0 +Provides: bundled(golang(github.com/nxadm/tail)) = v1.4.8 +Provides: bundled(golang(github.com/oklog/ulid)) = v1.3.1 Provides: bundled(golang(github.com/onsi/ginkgo)) = v1.16.5 -Provides: bundled(golang(github.com/onsi/gomega)) = v1.18.1 +Provides: bundled(golang(github.com/onsi/gomega)) = v1.26.0 Provides: bundled(golang(github.com/opencontainers/go_digest)) = v1.0.0 -Provides: bundled(golang(github.com/opencontainers/image_spec)) = v1.0.3_0.20211202193544_a5463b7f9c84 -Provides: bundled(golang(github.com/opencontainers/runc)) = v1.1.0 -Provides: bundled(golang(github.com/opencontainers/runtime_spec)) = v1.0.3_0.20210326190908_1c3f411f0417 -Provides: bundled(golang(github.com/opencontainers/runtime_tools)) = v0.9.0 -Provides: bundled(golang(github.com/opencontainers/selinux)) = v1.10.0 -Provides: bundled(golang(github.com/openshift/imagebuilder)) = v1.2.2 +Provides: bundled(golang(github.com/opencontainers/image_spec)) = v1.1.0_rc2 +Provides: bundled(golang(github.com/opencontainers/runc)) = v1.1.4 +Provides: bundled(golang(github.com/opencontainers/runtime_spec)) = v1.0.3_0.20220825212826_86290f6a00fb +Provides: bundled(golang(github.com/opencontainers/runtime_tools)) = v0.9.1_0.20221014010322_58c91d646d86 +Provides: bundled(golang(github.com/opencontainers/selinux)) = v1.10.2 +Provides: bundled(golang(github.com/openshift/imagebuilder)) = v1.2.4_0.20220711175835_4151e43600df +Provides: bundled(golang(github.com/ostreedev/ostree_go)) = v0.0.0_20210805093236_719684c64e4f Provides: bundled(golang(github.com/pkg/errors)) = v0.9.1 -Provides: bundled(golang(github.com/seccomp/libseccomp_golang)) = v0.9.2_0.20210429002308_3879420cc921 -Provides: bundled(golang(github.com/sirupsen/logrus)) = v1.8.1 -Provides: bundled(golang(github.com/spf13/cobra)) = v1.3.0 +Provides: bundled(golang(github.com/pmezard/go_difflib)) = v1.0.0 +Provides: bundled(golang(github.com/proglottis/gpgme)) = v0.1.3 +Provides: bundled(golang(github.com/rivo/uniseg)) = v0.4.3 +Provides: bundled(golang(github.com/seccomp/libseccomp_golang)) = v0.10.0 +Provides: bundled(golang(github.com/sigstore/fulcio)) = v1.0.0 +Provides: bundled(golang(github.com/sigstore/rekor)) = v1.0.1 +Provides: bundled(golang(github.com/sigstore/sigstore)) = v1.5.1 +Provides: bundled(golang(github.com/sirupsen/logrus)) = v1.9.0 +Provides: bundled(golang(github.com/spf13/cobra)) = v1.6.1 Provides: bundled(golang(github.com/spf13/pflag)) = v1.0.5 -Provides: bundled(golang(github.com/stretchr/testify)) = v1.7.0 +Provides: bundled(golang(github.com/stefanberger/go_pkcs11uri)) = v0.0.0_20201008174630_78d3cae3a980 +Provides: bundled(golang(github.com/stretchr/testify)) = v1.8.1 +Provides: bundled(golang(github.com/sylabs/sif/v2)) = v2.9.0 Provides: bundled(golang(github.com/syndtr/gocapability)) = v0.0.0_20200815063812_42c35b437635 -%endif +Provides: bundled(golang(github.com/tchap/go_patricia)) = v2.3.0+incompatible +Provides: bundled(golang(github.com/theupdateframework/go_tuf)) = v0.5.2_0.20221207161717_9cb61d6e65f5 +Provides: bundled(golang(github.com/titanous/rocacheck)) = v0.0.0_20171023193734_afe73141d399 +Provides: bundled(golang(github.com/ulikunitz/xz)) = v0.5.11 +Provides: bundled(golang(github.com/vbatts/tar_split)) = v0.11.2 +Provides: bundled(golang(github.com/vbauerster/mpb/v7)) = v7.5.3 +Provides: bundled(golang(github.com/vishvananda/netlink)) = v1.2.1_beta.2 +Provides: bundled(golang(github.com/vishvananda/netns)) = v0.0.0_20210104183010_2eb08e3e575f +Provides: bundled(golang(github.com/xeipuuv/gojsonpointer)) = v0.0.0_20190905194746_02993c407bfb +Provides: bundled(golang(github.com/xeipuuv/gojsonreference)) = v0.0.0_20180127040603_bd5ef7bd5415 +Provides: bundled(golang(github.com/xeipuuv/gojsonschema)) = v1.2.0 +Provides: bundled(golang(k8s.io/klog)) = v1.0.0 +Provides: bundled(golang(sigs.k8s.io/yaml)) = v1.3.0 %description The %{name} package provides a command line tool which can be used to @@ -134,10 +196,9 @@ Requires: git-daemon This package contains system tests for %{name} %prep -%autosetup -Sgit +%autosetup -Sgit -n %{name}-%{built_tag_strip} %build -%if "%{_vendor}" != "debbuild" %set_build_flags # These extra flags present in $CFLAGS have been skipped for now as they break the build CGO_CFLAGS=$(echo $CGO_CFLAGS | sed 's/-flto=auto//g') @@ -147,7 +208,6 @@ CGO_CFLAGS=$(echo $CGO_CFLAGS | sed 's/-specs=\/usr\/lib\/rpm\/redhat\/redhat-an %ifarch x86_64 export CGO_CFLAGS+=" -m64 -mtune=generic -fcf-protection=full" %endif -%endif export GOPATH=$(pwd)/_build:$(pwd) export CGO_CFLAGS=$CFLAGS @@ -164,31 +224,23 @@ export CNI_VERSION=`grep '^# github.com/containernetworking/cni ' src/modules.tx export LDFLAGS="-X main.buildInfo=`date +%s` -X main.cniVersion=${CNI_VERSION}" export BUILDTAGS='seccomp exclude_graphdriver_devicemapper' -%if "%{_vendor}" != "debbuild" export BUILDTAGS+=' libsubid selinux' -%endif %gobuild -o bin/%{name} %{import_path}/cmd/%{name} %gobuild -o bin/imgtype %{import_path}/tests/imgtype %gobuild -o bin/copy %{import_path}/tests/copy +%gobuild -o bin/tutorial %{import_path}/tests/tutorial GOMD2MAN=go-md2man %{__make} -C docs %install export GOPATH=$(pwd)/_build:$(pwd) -%if "%{_vendor}" != "debbuild" make DESTDIR=%{buildroot} PREFIX=%{_prefix} install install.completions make DESTDIR=%{buildroot} PREFIX=%{_prefix} -C docs install -%else -install -D -m0755 bin/%{name} %{buildroot}%{_bindir}/%{name} -install -m 644 -D contrib/completions/bash/%{name} %{buildroot}%{_datadir}/bash-completion/completions/%{name} -install -d %{buildroot}/%{_mandir}/man1 -install -m 0644 docs/%{name}*.1 %{buildroot}%{_mandir}/man1 -install -m 0644 docs/links/%{name}*.1 %{buildroot}%{_mandir}/man1 -%endif install -d -p %{buildroot}/%{_datadir}/%{name}/test/system cp -pav tests/. %{buildroot}/%{_datadir}/%{name}/test/system cp bin/imgtype %{buildroot}/%{_bindir}/%{name}-imgtype cp bin/copy %{buildroot}/%{_bindir}/%{name}-copy +cp bin/tutorial %{buildroot}/%{_bindir}/%{name}-tutorial #define license tag if not already defined %{!?_licensedir:%global license %doc} @@ -206,9 +258,8 @@ cp bin/copy %{buildroot}/%{_bindir}/%{name}-copy %license LICENSE %{_bindir}/%{name}-imgtype %{_bindir}/%{name}-copy +%{_bindir}/%{name}-tutorial %{_datadir}/%{name}/test %changelog -%if "%{_vendor}" != "debbuild" %autochangelog -%endif diff --git a/sources b/sources index 3bbc28b..941b455 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (v1.26.2.tar.gz) = f50a7ee787d10a8f8d1a7e0ff9f86990de975df427af894be5bcc84bceafd2eb87dfe75c1b967ae57056299893c942df257aef1e9aaeb712022a8abceeaebba9 +SHA512 (v1.29.0.tar.gz) = 9d5dfe46007aeb9b7ae80a804b20c45b149156ec5edeb181ec00c021a0b6499394d676a7189389e51c2968fc60680c6d8438c11f46f5b7d523fba00d7cf17894 diff --git a/tests/test_buildah.sh b/tests/test_buildah.sh index 5974d30..f8776bb 100755 --- a/tests/test_buildah.sh +++ b/tests/test_buildah.sh @@ -16,6 +16,7 @@ env | grep -v LS_COLORS= | sort | sed -e 's/^/ /' export BUILDAH_BINARY=/usr/bin/buildah export IMGTYPE_BINARY=/usr/bin/buildah-imgtype export COPY_BINARY=/usr/bin/buildah-copy +export TUTORIAL_BINARY=/usr/bin/buildah-tutorial ############################################################################### # BEGIN setup/teardown