Compare commits
87 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
d4d527c371 | ||
|
|
c0cc68f3e1 | ||
|
|
7c141b863e |
||
|
|
90ad4c354a |
||
|
|
a884e54cb0 |
||
|
|
6fc353cd85 | ||
|
|
5fedcf4ec6 | ||
|
|
7d0ac054b5 | ||
|
|
561d0ac58e | ||
|
|
fb16241361 | ||
|
|
6d07ec6d35 | ||
|
|
d76916f386 | ||
|
|
1b8d009750 | ||
|
|
9679193c21 | ||
|
|
932bf4d262 | ||
|
|
4939c53015 | ||
|
|
b6e01ac0fe | ||
|
|
000cb986c4 | ||
|
|
f38d0e1c25 | ||
|
|
bc8689debf | ||
|
|
c09e532cef | ||
|
|
a54dfc47ef | ||
|
|
8743ff42b9 | ||
|
|
3a31f6dc42 |
||
|
|
ce852ef3ee | ||
|
|
e95e0c0da3 | ||
|
|
6bf3dfee55 | ||
|
|
a40979722c |
||
|
|
045d9ed54d | ||
|
|
149ed1c0a8 | ||
|
|
2b30cd161d | ||
|
|
68cf6e550f |
||
|
|
bb9ef83dc2 | ||
|
|
2b187755e3 |
||
|
|
014ef23135 | ||
|
|
abe177cf0f | ||
|
|
eb8ab75146 | ||
|
|
5402218d32 | ||
|
|
5d71612b0d | ||
|
|
37bc79bcdc | ||
|
|
fe3229cea7 | ||
|
|
326e78444f | ||
|
|
73cc54f5bb | ||
|
|
72edd2e7fe | ||
|
|
1a800e73be | ||
|
|
b152e156fc | ||
|
|
28e33e4e5c |
||
|
|
c160691abf | ||
|
|
54d58aa607 | ||
|
|
3ace49d3ac | ||
|
|
6f9ee87f9e | ||
|
|
b8fa441757 | ||
|
|
64c58bf0ba | ||
|
|
e8e909ce3c | ||
|
|
ab31c80779 | ||
|
|
1f6d2f7e6a | ||
|
|
047a9f8cdf | ||
|
|
2ded9f0893 | ||
|
|
315cce6ac5 | ||
|
|
f441aad839 | ||
|
|
970be0dd2c | ||
|
|
adfea5d872 | ||
|
|
9eeb0aed95 | ||
|
|
c6d2d347ff | ||
|
|
2b69d27425 | ||
|
|
128d79c87e | ||
|
|
0ac3c2ee09 | ||
|
|
c5da879705 | ||
|
|
13dc086e81 | ||
|
|
5af76a5e55 | ||
|
|
849720672b | ||
|
|
2b8ee68f86 | ||
|
|
66dfaf0fea | ||
|
|
40bdab03bf | ||
|
|
64a5677385 | ||
|
|
6dd08dba8a | ||
|
|
0748b12435 | ||
|
|
6988bc13c6 | ||
|
|
97fac8727b | ||
|
|
bcf3455ced | ||
|
|
2a164591d1 | ||
|
|
f6702dafee | ||
|
|
62002a5e06 | ||
|
|
6a103c38f6 | ||
|
|
5268ea2ba7 | ||
|
|
f9d0f9991e | ||
|
|
7c3363c599 |
13 changed files with 383 additions and 202 deletions
1
.fmf/version
Normal file
1
.fmf/version
Normal file
|
|
@ -0,0 +1 @@
|
|||
1
|
||||
50
.gitignore
vendored
50
.gitignore
vendored
|
|
@ -685,3 +685,53 @@
|
|||
/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
|
||||
/v1.29.1.tar.gz
|
||||
/v1.30.0.tar.gz
|
||||
/v1.31.0.tar.gz
|
||||
/v1.31.1.tar.gz
|
||||
/v1.31.2.tar.gz
|
||||
/v1.31.3.tar.gz
|
||||
/v1.32.0.tar.gz
|
||||
/v1.32.1.tar.gz
|
||||
/v1.32.2.tar.gz
|
||||
/v1.33.2.tar.gz
|
||||
/v1.34.0.tar.gz
|
||||
/v1.34.1.tar.gz
|
||||
/v1.35.0.tar.gz
|
||||
/v1.35.1.tar.gz
|
||||
/v1.35.2.tar.gz
|
||||
/v1.35.3.tar.gz
|
||||
/v1.35.4.tar.gz
|
||||
/v1.36.0.tar.gz
|
||||
/v1.37.0.tar.gz
|
||||
/v1.37.1.tar.gz
|
||||
/v1.37.2.tar.gz
|
||||
/v1.37.3.tar.gz
|
||||
/v1.37.4.tar.gz
|
||||
/v1.37.5.tar.gz
|
||||
/v1.38.0.tar.gz
|
||||
/v1.38.1.tar.gz
|
||||
/v1.39.0.tar.gz
|
||||
/v1.39.1.tar.gz
|
||||
/v1.39.2.tar.gz
|
||||
/v1.39.3.tar.gz
|
||||
/v1.39.4.tar.gz
|
||||
/v1.40.0.tar.gz
|
||||
/v1.40.1.tar.gz
|
||||
/v1.41.0.tar.gz
|
||||
/v1.41.1.tar.gz
|
||||
/v1.41.2.tar.gz
|
||||
/v1.41.3.tar.gz
|
||||
/v1.41.4.tar.gz
|
||||
/v1.41.5.tar.gz
|
||||
/v1.42.0.tar.gz
|
||||
/v1.42.1.tar.gz
|
||||
/v1.42.2.tar.gz
|
||||
|
|
|
|||
149
.packit.yaml
Normal file
149
.packit.yaml
Normal file
|
|
@ -0,0 +1,149 @@
|
|||
---
|
||||
# See the documentation for more information:
|
||||
# https://packit.dev/docs/configuration/
|
||||
|
||||
downstream_package_name: buildah
|
||||
upstream_tag_template: v{version}
|
||||
|
||||
# These files get synced from upstream to downstream (Fedora / CentOS Stream) on every
|
||||
# propose-downstream job. This is done so tests maintained upstream can be run
|
||||
# downstream in Zuul CI and Bodhi.
|
||||
# Ref: https://packit.dev/docs/configuration#files_to_sync
|
||||
files_to_sync:
|
||||
- src: rpm/gating.yaml
|
||||
dest: gating.yaml
|
||||
delete: true
|
||||
- src: plans/
|
||||
dest: plans/
|
||||
delete: true
|
||||
mkpath: true
|
||||
- src: tests/tmt/
|
||||
dest: tests/tmt/
|
||||
delete: true
|
||||
mkpath: true
|
||||
- src: .fmf/
|
||||
dest: .fmf/
|
||||
delete: true
|
||||
- .packit.yaml
|
||||
|
||||
packages:
|
||||
buildah-fedora:
|
||||
pkg_tool: fedpkg
|
||||
specfile_path: rpm/buildah.spec
|
||||
buildah-centos:
|
||||
pkg_tool: centpkg
|
||||
specfile_path: rpm/buildah.spec
|
||||
buildah-eln:
|
||||
specfile_path: rpm/buildah.spec
|
||||
|
||||
srpm_build_deps:
|
||||
- make
|
||||
|
||||
jobs:
|
||||
- job: copr_build
|
||||
trigger: pull_request
|
||||
packages: [buildah-fedora]
|
||||
notifications: &copr_build_failure_notification
|
||||
failure_comment:
|
||||
message: "Ephemeral COPR build failed. @containers/packit-build please check."
|
||||
# Fedora aliases documentation: https://packit.dev/docs/configuration#aliases
|
||||
# python3-fedora-distro-aliases provides `resolve-fedora-aliases` command
|
||||
targets: &fedora_copr_targets
|
||||
- fedora-all-x86_64
|
||||
- fedora-all-aarch64
|
||||
enable_net: true
|
||||
# Disable osh diff scan until Go support is available
|
||||
# Ref: https://github.com/openscanhub/known-false-positives/pull/30#issuecomment-2858698495
|
||||
osh_diff_scan_after_copr_build: false
|
||||
|
||||
# Ignore until golang is updated in distro buildroot to 1.23.3+
|
||||
- job: copr_build
|
||||
trigger: ignore
|
||||
packages: [buildah-eln]
|
||||
notifications: *copr_build_failure_notification
|
||||
targets:
|
||||
fedora-eln-x86_64:
|
||||
additional_repos:
|
||||
- "https://kojipkgs.fedoraproject.org/repos/eln-build/latest/x86_64/"
|
||||
fedora-eln-aarch64:
|
||||
additional_repos:
|
||||
- "https://kojipkgs.fedoraproject.org/repos/eln-build/latest/aarch64/"
|
||||
enable_net: true
|
||||
|
||||
# Ignore until golang is updated in distro buildroot to 1.23.3+
|
||||
- job: copr_build
|
||||
trigger: ignore
|
||||
packages: [buildah-centos]
|
||||
notifications: *copr_build_failure_notification
|
||||
targets: ¢os_copr_targets
|
||||
- centos-stream-9-x86_64
|
||||
- centos-stream-9-aarch64
|
||||
- centos-stream-10-x86_64
|
||||
- centos-stream-10-aarch64
|
||||
enable_net: true
|
||||
|
||||
# Run on commit to main branch
|
||||
- job: copr_build
|
||||
trigger: commit
|
||||
packages: [buildah-fedora]
|
||||
notifications:
|
||||
failure_comment:
|
||||
message: "podman-next COPR build failed. @containers/packit-build please check."
|
||||
branch: main
|
||||
owner: rhcontainerbot
|
||||
project: podman-next
|
||||
enable_net: true
|
||||
|
||||
# Tests on Fedora for main branch PRs
|
||||
- job: tests
|
||||
trigger: pull_request
|
||||
packages: [buildah-fedora]
|
||||
targets:
|
||||
- fedora-all-x86_64
|
||||
tf_extra_params:
|
||||
environments:
|
||||
- artifacts:
|
||||
- type: repository-file
|
||||
id: https://copr.fedorainfracloud.org/coprs/rhcontainerbot/podman-next/repo/fedora-$releasever/rhcontainerbot-podman-next-fedora-$releasever.repo
|
||||
|
||||
# Ignore until golang is updated in distro buildroot to 1.23.3+
|
||||
# Tests on CentOS Stream for main branch PRs
|
||||
- job: tests
|
||||
trigger: ignore
|
||||
packages: [buildah-centos]
|
||||
targets:
|
||||
- centos-stream-9-x86_64
|
||||
- centos-stream-10-x86_64
|
||||
tf_extra_params:
|
||||
environments:
|
||||
- artifacts:
|
||||
- type: repository-file
|
||||
id: https://copr.fedorainfracloud.org/coprs/rhcontainerbot/podman-next/repo/centos-stream-$releasever/rhcontainerbot-podman-next-centos-stream-$releasever.repo
|
||||
|
||||
# Sync to Fedora
|
||||
- job: propose_downstream
|
||||
trigger: release
|
||||
packages: [buildah-fedora]
|
||||
update_release: false
|
||||
dist_git_branches: &fedora_targets
|
||||
- fedora-all
|
||||
|
||||
# Sync to CentOS Stream
|
||||
- job: propose_downstream
|
||||
trigger: release
|
||||
packages: [buildah-centos]
|
||||
update_release: false
|
||||
dist_git_branches:
|
||||
- c10s
|
||||
|
||||
# Fedora Koji build
|
||||
- job: koji_build
|
||||
trigger: commit
|
||||
packages: [buildah-fedora]
|
||||
sidetag_group: podman-releases
|
||||
# Dependents are not rpm dependencies, but the package whose bodhi update
|
||||
# should include this package.
|
||||
# Ref: https://packit.dev/docs/fedora-releases-guide/releasing-multiple-packages
|
||||
dependents:
|
||||
- podman
|
||||
dist_git_branches: *fedora_targets
|
||||
3
README.packit
Normal file
3
README.packit
Normal file
|
|
@ -0,0 +1,3 @@
|
|||
This repository is maintained by packit.
|
||||
https://packit.dev/
|
||||
The file was generated using packit 1.12.0.post1.dev20+g7d30dac21.
|
||||
206
buildah.spec
206
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}
|
||||
|
|
@ -11,98 +7,73 @@
|
|||
%global debug_package %{nil}
|
||||
%endif
|
||||
|
||||
%global provider github
|
||||
%global provider_tld com
|
||||
%global project containers
|
||||
%global repo buildah
|
||||
# https://github.com/containers/buildah
|
||||
%global import_path %{provider}.%{provider_tld}/%{project}/%{repo}
|
||||
%global git0 https://%{import_path}
|
||||
%global gomodulesmode GO111MODULE=on
|
||||
|
||||
%global built_tag v1.26.2
|
||||
%if %{defined fedora}
|
||||
%define build_with_btrfs 1
|
||||
%if 0%{?fedora} >= 43
|
||||
%define sequoia 1
|
||||
%endif
|
||||
%endif
|
||||
|
||||
Name: %{repo}
|
||||
Version: 1.26.2
|
||||
%if "%{_vendor}" == "debbuild"
|
||||
Maintainer: Lokesh Mandvekar <lsm5@fedoraproject.org>
|
||||
License: ASL-2.0+
|
||||
Release: 0%{?dist}
|
||||
%if %{defined rhel}
|
||||
%define fips 1
|
||||
%endif
|
||||
|
||||
%global git0 https://github.com/containers/%{name}
|
||||
|
||||
Name: buildah
|
||||
# Set different Epoch for copr
|
||||
%if %{defined copr_username}
|
||||
Epoch: 102
|
||||
%else
|
||||
License: ASL 2.0 and BSD and MIT and MPLv2.0
|
||||
Epoch: 2
|
||||
%endif
|
||||
# DO NOT TOUCH the Version string!
|
||||
# The TRUE source of this specfile is:
|
||||
# https://github.com/containers/skopeo/blob/main/rpm/skopeo.spec
|
||||
# If that's what you're reading, Version must be 0, and will be updated by Packit for
|
||||
# copr and koji builds.
|
||||
# If you're reading this on dist-git, the version is automatically filled in by Packit.
|
||||
Version: 1.42.2
|
||||
# The `AND` needs to be uppercase in the License for SPDX compatibility
|
||||
License: Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND ISC AND MIT AND MPL-2.0
|
||||
Release: %autorelease
|
||||
%if %{defined golang_arches_future}
|
||||
ExclusiveArch: %{golang_arches_future}
|
||||
%else
|
||||
ExclusiveArch: aarch64 ppc64le s390x x86_64
|
||||
%endif
|
||||
Summary: A command line tool used for creating OCI Images
|
||||
URL: https://%{name}.io
|
||||
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
|
||||
# Tarball fetched from upstream
|
||||
Source: %{git0}/archive/v%{version}.tar.gz
|
||||
BuildRequires: device-mapper-devel
|
||||
BuildRequires: git-core
|
||||
BuildRequires: golang >= 1.16.6
|
||||
BuildRequires: glib2-devel
|
||||
BuildRequires: glibc-static
|
||||
%if !%{defined gobuild}
|
||||
BuildRequires: go-rpm-macros
|
||||
%endif
|
||||
BuildRequires: gpgme-devel
|
||||
BuildRequires: libassuan-devel
|
||||
BuildRequires: make
|
||||
BuildRequires: ostree-devel
|
||||
%if %{defined build_with_btrfs}
|
||||
BuildRequires: btrfs-progs-devel
|
||||
%endif
|
||||
BuildRequires: shadow-utils-subid-devel
|
||||
Requires: containers-common >= 4:1-46
|
||||
Suggests: containernetworking-plugins >= 0.9.1-1
|
||||
Requires: netavark
|
||||
Requires: iptables
|
||||
Requires: nftables
|
||||
BuildRequires: sqlite-devel
|
||||
Requires: containers-common-extra
|
||||
%if %{defined fedora}
|
||||
BuildRequires: libseccomp-static
|
||||
%else
|
||||
BuildRequires: libseccomp-devel
|
||||
%endif
|
||||
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/ghodss/yaml)) = v1.0.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/mattn/go_shellwords)) = v1.0.12
|
||||
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/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/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/spf13/pflag)) = v1.0.5
|
||||
Provides: bundled(golang(github.com/stretchr/testify)) = v1.7.0
|
||||
Provides: bundled(golang(github.com/syndtr/gocapability)) = v0.0.0_20200815063812_42c35b437635
|
||||
%if %{defined sequoia}
|
||||
Requires: podman-sequoia
|
||||
%endif
|
||||
|
||||
%description
|
||||
|
|
@ -114,11 +85,17 @@ or
|
|||
* save container's root file system layer to create a new image
|
||||
* delete a working container or an image
|
||||
|
||||
# This subpackage is only intended for CI testing.
|
||||
# Not meant for end user/customer usage.
|
||||
%package tests
|
||||
Summary: Tests for %{name}
|
||||
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
Requires: %{name} = %{epoch}:%{version}-%{release}
|
||||
%if %{defined bats_epel}
|
||||
Requires: bats
|
||||
%else
|
||||
Recommends: bats
|
||||
%endif
|
||||
Requires: bzip2
|
||||
Requires: podman
|
||||
Requires: golang
|
||||
|
|
@ -134,11 +111,12 @@ Requires: git-daemon
|
|||
This package contains system tests for %{name}
|
||||
|
||||
%prep
|
||||
%autosetup -Sgit
|
||||
%autosetup -Sgit -n %{name}-%{version}
|
||||
|
||||
%build
|
||||
%if "%{_vendor}" != "debbuild"
|
||||
%set_build_flags
|
||||
export CGO_CFLAGS=$CFLAGS
|
||||
|
||||
# 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')
|
||||
CGO_CFLAGS=$(echo $CGO_CFLAGS | sed 's/-Wp,D_GLIBCXX_ASSERTIONS//g')
|
||||
|
|
@ -147,54 +125,58 @@ 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
|
||||
|
||||
mkdir _build
|
||||
cd _build
|
||||
mkdir -p src/%{provider}.%{provider_tld}/%{project}
|
||||
ln -s ../../../../ src/%{import_path}
|
||||
cd ..
|
||||
|
||||
mv vendor src
|
||||
|
||||
export CNI_VERSION=`grep '^# github.com/containernetworking/cni ' src/modules.txt | sed 's,.* ,,'`
|
||||
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'
|
||||
export BUILDTAGS="seccomp $(hack/systemd_tag.sh) $(hack/libsubid_tag.sh) libsqlite3"
|
||||
%if !%{defined build_with_btrfs}
|
||||
export BUILDTAGS+=" exclude_graphdriver_btrfs"
|
||||
%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
|
||||
GOMD2MAN=go-md2man %{__make} -C docs
|
||||
|
||||
%if %{defined fips}
|
||||
export BUILDTAGS+=" libtrust_openssl"
|
||||
%endif
|
||||
|
||||
%if %{defined sequoia}
|
||||
export BUILDTAGS+=" containers_image_sequoia"
|
||||
%endif
|
||||
|
||||
%gobuild -o bin/%{name} ./cmd/%{name}
|
||||
%gobuild -o bin/imgtype ./tests/imgtype
|
||||
%gobuild -o bin/copy ./tests/copy
|
||||
%gobuild -o bin/tutorial ./tests/tutorial
|
||||
%gobuild -o bin/inet ./tests/inet
|
||||
%gobuild -o bin/dumpspec ./tests/dumpspec
|
||||
%gobuild -o bin/passwd ./tests/passwd
|
||||
%gobuild -o bin/crash ./tests/crash
|
||||
%gobuild -o bin/wait ./tests/wait
|
||||
%{__make} 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
|
||||
cp bin/inet %{buildroot}/%{_bindir}/%{name}-inet
|
||||
cp bin/dumpspec %{buildroot}/%{_bindir}/%{name}-dumpspec
|
||||
cp bin/passwd %{buildroot}/%{_bindir}/%{name}-passwd
|
||||
cp bin/crash %{buildroot}/%{_bindir}/%{name}-crash
|
||||
cp bin/wait %{buildroot}/%{_bindir}/%{name}-wait
|
||||
|
||||
rm %{buildroot}%{_datadir}/%{name}/test/system/tools/build/*
|
||||
|
||||
#define license tag if not already defined
|
||||
%{!?_licensedir:%global license %doc}
|
||||
|
||||
# Include check to silence rpmlint.
|
||||
%check
|
||||
|
||||
%files
|
||||
%license LICENSE
|
||||
%license LICENSE vendor/modules.txt
|
||||
%doc README.md
|
||||
%{_bindir}/%{name}
|
||||
%{_mandir}/man1/%{name}*
|
||||
|
|
@ -206,9 +188,13 @@ cp bin/copy %{buildroot}/%{_bindir}/%{name}-copy
|
|||
%license LICENSE
|
||||
%{_bindir}/%{name}-imgtype
|
||||
%{_bindir}/%{name}-copy
|
||||
%{_bindir}/%{name}-tutorial
|
||||
%{_bindir}/%{name}-inet
|
||||
%{_bindir}/%{name}-dumpspec
|
||||
%{_bindir}/%{name}-passwd
|
||||
%{_bindir}/%{name}-crash
|
||||
%{_bindir}/%{name}-wait
|
||||
%{_datadir}/%{name}/test
|
||||
|
||||
%changelog
|
||||
%if "%{_vendor}" != "debbuild"
|
||||
%autochangelog
|
||||
%endif
|
||||
|
|
|
|||
12
gating.yaml
12
gating.yaml
|
|
@ -1,14 +1,16 @@
|
|||
--- !Policy
|
||||
product_versions:
|
||||
- fedora-*
|
||||
decision_context: bodhi_update_push_stable
|
||||
decision_contexts:
|
||||
- bodhi_update_push_stable
|
||||
- bodhi_update_push_testing
|
||||
subject_type: koji_build
|
||||
rules:
|
||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
|
||||
|
||||
--- !Policy
|
||||
product_versions:
|
||||
- fedora-*
|
||||
decision_context: bodhi_update_push_testing
|
||||
subject_type: koji_build
|
||||
- rhel-*
|
||||
decision_context: osci_compose_gate
|
||||
rules:
|
||||
- !PassingTestCaseRule {test_case_name: fedora-ci.koji-build.tier0.functional}
|
||||
- !PassingTestCaseRule {test_case_name: osci.brew-build.tier0.functional}
|
||||
|
|
|
|||
34
plans/main.fmf
Normal file
34
plans/main.fmf
Normal file
|
|
@ -0,0 +1,34 @@
|
|||
discover:
|
||||
how: fmf
|
||||
|
||||
execute:
|
||||
how: tmt
|
||||
|
||||
prepare:
|
||||
- when: distro == centos-stream or distro == rhel
|
||||
how: shell
|
||||
script: |
|
||||
dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-$(rpm --eval '%{?rhel}').noarch.rpm
|
||||
dnf -y config-manager --set-enabled epel
|
||||
order: 10
|
||||
- when: initiator == packit
|
||||
how: shell
|
||||
script: |
|
||||
COPR_REPO_FILE="/etc/yum.repos.d/*podman-next*.repo"
|
||||
if compgen -G $COPR_REPO_FILE > /dev/null; then
|
||||
sed -i -n '/^priority=/!p;$apriority=1' $COPR_REPO_FILE
|
||||
fi
|
||||
dnf -y upgrade --allowerasing
|
||||
order: 20
|
||||
|
||||
provision:
|
||||
how: artemis
|
||||
hardware:
|
||||
memory: ">= 16 GB"
|
||||
cpu:
|
||||
cores: ">= 4"
|
||||
threads: ">=8"
|
||||
disk:
|
||||
- size: ">= 512 GB"
|
||||
|
||||
|
||||
2
sources
2
sources
|
|
@ -1 +1 @@
|
|||
SHA512 (v1.26.2.tar.gz) = f50a7ee787d10a8f8d1a7e0ff9f86990de975df427af894be5bcc84bceafd2eb87dfe75c1b967ae57056299893c942df257aef1e9aaeb712022a8abceeaebba9
|
||||
SHA512 (v1.42.2.tar.gz) = adb1de700db9b589639f6fd02cad95d9bedacb9d0363838315f33c978a8c900570d55af95073992ff69cff4f2a9d18776c5d786af294aaa1604144580c957414
|
||||
|
|
|
|||
|
|
@ -1,68 +0,0 @@
|
|||
#!/bin/bash -e
|
||||
|
||||
# Log program and kernel versions
|
||||
echo "Important package versions:"
|
||||
(
|
||||
uname -r
|
||||
rpm -qa |\
|
||||
egrep 'buildah|podman|conmon|containers-common|crun|runc|iptable|slirp|aardvark|netavark|containernetworking-plugins|systemd|container-selinux' |\
|
||||
sort
|
||||
) | sed -e 's/^/ /'
|
||||
|
||||
# Log environment; or at least the useful bits
|
||||
echo "Environment:"
|
||||
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
|
||||
|
||||
###############################################################################
|
||||
# BEGIN setup/teardown
|
||||
|
||||
# Start a registry
|
||||
pre_bats_setup() {
|
||||
REGISTRY_FQIN=quay.io/libpod/registry:2
|
||||
|
||||
AUTHDIR=/tmp/buildah-tests-auth.$$
|
||||
mkdir -p $AUTHDIR
|
||||
|
||||
CERT=$AUTHDIR/domain.crt
|
||||
if [ ! -e $CERT ]; then
|
||||
openssl req -newkey rsa:4096 -nodes -sha256 \
|
||||
-keyout $AUTHDIR/domain.key -x509 -days 2 \
|
||||
-out $AUTHDIR/domain.crt \
|
||||
-subj "/C=US/ST=Foo/L=Bar/O=Red Hat, Inc./CN=registry host certificate" \
|
||||
-addext subjectAltName=DNS:localhost
|
||||
fi
|
||||
|
||||
if [ ! -e $AUTHDIR/htpasswd ]; then
|
||||
htpasswd -Bbn testuser testpassword > $AUTHDIR/htpasswd
|
||||
fi
|
||||
|
||||
podman rm -f registry || true
|
||||
podman run -d -p 5000:5000 \
|
||||
--name registry \
|
||||
-v $AUTHDIR:/auth:Z \
|
||||
-e "REGISTRY_AUTH=htpasswd" \
|
||||
-e "REGISTRY_AUTH_HTPASSWD_REALM=Registry Realm" \
|
||||
-e REGISTRY_AUTH_HTPASSWD_PATH=/auth/htpasswd \
|
||||
-e REGISTRY_HTTP_TLS_CERTIFICATE=/auth/domain.crt \
|
||||
-e REGISTRY_HTTP_TLS_KEY=/auth/domain.key \
|
||||
$REGISTRY_FQIN
|
||||
}
|
||||
|
||||
post_bats_teardown() {
|
||||
podman rm -f registry
|
||||
}
|
||||
|
||||
# END setup/teardown
|
||||
###############################################################################
|
||||
# BEGIN actual test
|
||||
|
||||
pre_bats_setup
|
||||
bats /usr/share/buildah/test/system
|
||||
rc=$?
|
||||
post_bats_teardown
|
||||
|
||||
exit $rc
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
---
|
||||
- hosts: localhost
|
||||
environment:
|
||||
TMPDIR: /var/tmp
|
||||
roles:
|
||||
- role: standard-test-basic
|
||||
tags:
|
||||
- classic
|
||||
- container
|
||||
required_packages:
|
||||
- buildah
|
||||
- buildah-tests
|
||||
tests:
|
||||
- root-test:
|
||||
dir: ./
|
||||
run: ./test_buildah.sh
|
||||
timeout: 80m
|
||||
|
|
@ -1 +0,0 @@
|
|||
- import_playbook: test_buildah.yml
|
||||
24
tests/tmt/system.fmf
Normal file
24
tests/tmt/system.fmf
Normal file
|
|
@ -0,0 +1,24 @@
|
|||
require:
|
||||
- buildah-tests
|
||||
- git-daemon
|
||||
- slirp4netns
|
||||
|
||||
environment:
|
||||
BUILDAH_BINARY: /usr/bin/buildah
|
||||
IMGTYPE_BINARY: /usr/bin/buildah-imgtype
|
||||
INET_BINARY: /usr/bin/buildah-inet
|
||||
COPY_BINARY: /usr/bin/buildah-copy
|
||||
TUTORIAL_BINARY: /usr/bin/buildah-tutorial
|
||||
DUMPSPEC_BINARY: /usr/bin/buildah-dumpspec
|
||||
PASSWD_BINARY: /usr/bin/buildah-passwd
|
||||
TMPDIR: /var/tmp
|
||||
|
||||
adjust:
|
||||
- when: initiator != "packit"
|
||||
environment+:
|
||||
RELEASE_TESTING: true
|
||||
|
||||
/local/root:
|
||||
summary: System test
|
||||
test: bash ./system.sh
|
||||
duration: 60m
|
||||
18
tests/tmt/system.sh
Normal file
18
tests/tmt/system.sh
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
set -exo pipefail
|
||||
|
||||
uname -r
|
||||
|
||||
rpm -q \
|
||||
aardvark-dns \
|
||||
buildah \
|
||||
buildah-tests \
|
||||
conmon \
|
||||
container-selinux \
|
||||
containers-common \
|
||||
crun \
|
||||
netavark \
|
||||
systemd
|
||||
|
||||
bats /usr/share/buildah/test/system
|
||||
Loading…
Add table
Add a link
Reference in a new issue