Compare commits
13 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
df7a9d3d4e | ||
|
|
dd6c9afa84 |
||
|
|
856da66c2b | ||
|
|
d27a919ff1 |
||
|
|
3774b0f03c | ||
|
|
0ed5554777 | ||
|
|
f67de4e98d | ||
|
|
71a69e1c17 | ||
|
|
0bb3cb3ba5 |
||
|
|
85c350279b | ||
|
|
69151b77b6 | ||
|
|
b980b93f2b | ||
|
|
feec1702a0 |
12 changed files with 94 additions and 137 deletions
8
.gitignore
vendored
8
.gitignore
vendored
|
|
@ -89,16 +89,8 @@ crun-0.1.1.tar.gz
|
|||
/crun-1.15.tar.zst
|
||||
/crun-1.17.tar.zst
|
||||
/crun-1.18.tar.zst
|
||||
/crun-1.18.1.tar.zst
|
||||
/crun-1.18.2.tar.zst
|
||||
/crun-1.19.tar.zst
|
||||
/crun-1.19.1.tar.zst
|
||||
/crun-1.20.tar.zst
|
||||
/crun-1.21.tar.zst
|
||||
/crun-1.22.tar.zst
|
||||
/crun-1.23.tar.zst
|
||||
/crun-1.23.1.tar.zst
|
||||
/crun-1.24.tar.zst
|
||||
/crun-1.25.tar.zst
|
||||
/crun-1.25.1.tar.zst
|
||||
/crun-1.26.tar.zst
|
||||
|
|
|
|||
32
.packit.yaml
32
.packit.yaml
|
|
@ -66,10 +66,16 @@ jobs:
|
|||
packages: [crun-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
|
||||
# Need epel9 repos to fetch wasmedge build dependency
|
||||
centos-stream-9-x86_64:
|
||||
additional_repos:
|
||||
- https://dl.fedoraproject.org/pub/epel/9/Everything/x86_64/
|
||||
centos-stream-9-aarch64:
|
||||
additional_repos:
|
||||
- https://dl.fedoraproject.org/pub/epel/9/Everything/aarch64/
|
||||
# TODO: build on CS10 with wasmedge once epel-10 is available
|
||||
centos-stream-10-x86_64: {}
|
||||
centos-stream-10-aarch64: {}
|
||||
|
||||
# Run on commit to main branch
|
||||
- job: copr_build
|
||||
|
|
@ -86,9 +92,9 @@ jobs:
|
|||
- job: tests
|
||||
trigger: pull_request
|
||||
packages: [crun-fedora]
|
||||
notifications: &test_failure_notification
|
||||
notifications: &podman_system_test_fail_notification
|
||||
failure_comment:
|
||||
message: "TMT tests failed. @containers/packit-build please check."
|
||||
message: "podman system tests failed. @containers/packit-build please check."
|
||||
targets: *fedora_copr_targets
|
||||
tf_extra_params:
|
||||
environments:
|
||||
|
|
@ -100,15 +106,8 @@ jobs:
|
|||
- job: tests
|
||||
trigger: pull_request
|
||||
packages: [crun-centos]
|
||||
notifications: *test_failure_notification
|
||||
# TODO: Re-enable centos-stream-10-x86_64 once criu issues are solved
|
||||
# Ref: https://github.com/containers/crun/pull/1758#issuecomment-2901772392
|
||||
# Issue filed: https://github.com/containers/crun/issues/1759
|
||||
#targets: *centos_copr_targets
|
||||
targets:
|
||||
- centos-stream-9-x86_64
|
||||
- centos-stream-9-aarch64
|
||||
- centos-stream-10-aarch64
|
||||
notifications: *podman_system_test_fail_notification
|
||||
targets: *centos_copr_targets
|
||||
tf_extra_params:
|
||||
environments:
|
||||
- artifacts:
|
||||
|
|
@ -121,9 +120,8 @@ jobs:
|
|||
dist_git_branches: &fedora_targets
|
||||
- fedora-all
|
||||
|
||||
# Disabled until we're switching to Packit for CentOS Stream
|
||||
- job: propose_downstream
|
||||
trigger: ignore
|
||||
trigger: release
|
||||
packages: [crun-centos]
|
||||
dist_git_branches:
|
||||
- c10s
|
||||
|
|
|
|||
|
|
@ -1,3 +1,3 @@
|
|||
This repository is maintained by packit.
|
||||
https://packit.dev/
|
||||
The file was generated using packit 1.13.0.post1.dev2+g84134016c.
|
||||
The file was generated using packit 1.3.0.post1.dev4+gb85da743.
|
||||
|
|
|
|||
23
crun.spec
23
crun.spec
|
|
@ -9,17 +9,20 @@
|
|||
# krun and wasm support only on aarch64 and x86_64
|
||||
%ifarch aarch64 || x86_64
|
||||
|
||||
%if %{defined fedora}
|
||||
# krun only exists on fedora
|
||||
%global krun_support 1
|
||||
%global krun_opts --with-libkrun
|
||||
|
||||
# Keep wasmedge enabled only on Fedora. It breaks a lot on EPEL.
|
||||
# Disable wasmedge on rhel 10 until EPEL10 is in place, otherwise it causes
|
||||
# build issues on copr
|
||||
%if %{defined fedora} || (%{defined copr_build} && %{defined rhel} && 0%{?rhel} < 10)
|
||||
%global wasm_support 1
|
||||
%global wasmedge_support 1
|
||||
%global wasmedge_opts --with-wasmedge
|
||||
%endif
|
||||
|
||||
# krun only exists on fedora
|
||||
%if %{defined fedora}
|
||||
%global krun_support 1
|
||||
%global krun_opts --with-libkrun
|
||||
%endif
|
||||
|
||||
%endif
|
||||
|
||||
%if %{defined fedora} || (%{defined rhel} && 0%{?rhel} < 10)
|
||||
|
|
@ -39,7 +42,7 @@ Epoch: 102
|
|||
# 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.26
|
||||
Version: 1.21
|
||||
Release: %autorelease
|
||||
URL: https://github.com/containers/%{name}
|
||||
Source0: %{url}/releases/download/%{version}/%{name}-%{version}.tar.zst
|
||||
|
|
@ -66,14 +69,15 @@ BuildRequires: libseccomp-devel
|
|||
BuildRequires: python3-libmount
|
||||
BuildRequires: libtool
|
||||
BuildRequires: protobuf-c-devel
|
||||
%ifnarch riscv64
|
||||
BuildRequires: criu-devel >= 3.17.1-2
|
||||
Recommends: criu >= 3.17.1
|
||||
Recommends: criu-libs
|
||||
%endif
|
||||
%if %{defined wasmedge_support}
|
||||
BuildRequires: wasmedge-devel
|
||||
%endif
|
||||
BuildRequires: python
|
||||
BuildRequires: glibc-static
|
||||
Provides: oci-runtime
|
||||
|
||||
%description
|
||||
|
|
@ -117,9 +121,6 @@ Recommends: wasmedge
|
|||
%make_install prefix=%{_prefix}
|
||||
rm -rf %{buildroot}%{_prefix}/lib*
|
||||
|
||||
# Placeholder check to silence rpmlint
|
||||
%check
|
||||
|
||||
%files
|
||||
%license COPYING
|
||||
%{_bindir}/%{name}
|
||||
|
|
|
|||
|
|
@ -24,17 +24,18 @@ prepare:
|
|||
- crun
|
||||
- podman-tests
|
||||
|
||||
/shellcheck:
|
||||
/upstream:
|
||||
summary: Run crun specific Podman system tests on upstream PRs
|
||||
discover+:
|
||||
filter: 'tag:shellcheck'
|
||||
enabled: true
|
||||
adjust:
|
||||
enabled: false
|
||||
when: distro == centos-stream-10 or distro == rhel-10
|
||||
prepare+:
|
||||
- how: install
|
||||
package: ShellCheck
|
||||
filter: tag:upstream
|
||||
adjust+:
|
||||
- enabled: false
|
||||
when: initiator is not defined or initiator != packit
|
||||
|
||||
/tests:
|
||||
/downstream:
|
||||
summary: Run crun specific Podman system tests on bodhi / errata and dist-git PRs
|
||||
discover+:
|
||||
filter: 'tag:podman | tag:sanity'
|
||||
filter: tag:downstream
|
||||
adjust+:
|
||||
- enabled: false
|
||||
when: initiator == packit
|
||||
|
|
|
|||
|
|
@ -1,9 +0,0 @@
|
|||
/:
|
||||
inherit: false
|
||||
|
||||
summary: Run tmt's integration tests
|
||||
plan:
|
||||
import:
|
||||
url: https://github.com/teemtee/tmt
|
||||
path: /plans/friends
|
||||
name: /podman
|
||||
2
sources
2
sources
|
|
@ -1 +1 @@
|
|||
SHA512 (crun-1.26.tar.zst) = 0785af6095a26290f433c5739bea5d98a029c3f0e8efbeed420481849ebddd70acde6c1105133c392abf26bca90d232cced5e5994da7506d66a020a02c129fb3
|
||||
SHA512 (crun-1.21.tar.zst) = 022bb56dbf20eb7c479b76a92fc55c69b219e36233ee7e588eb883afd092fb4aaeca842e64d83e53bbb08bd09f635d582a86824950971842b73921d1ce134bd1
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@ adjust:
|
|||
duration: 10m
|
||||
when: arch == aarch64
|
||||
|
||||
summary: Run crun specific Podman tests
|
||||
test: bash ./system-test.sh
|
||||
tag: [ podman ]
|
||||
/system_test:
|
||||
tag: [ upstream, downstream ]
|
||||
summary: Run crun specific Podman tests
|
||||
test: bash ./system-test.sh
|
||||
|
|
|
|||
|
|
@ -14,4 +14,3 @@ rpm -q conmon containers-common crun podman podman-tests
|
|||
bats -t /usr/share/podman/test/system/030-run.bats
|
||||
bats -t /usr/share/podman/test/system/075-exec.bats
|
||||
bats -t /usr/share/podman/test/system/280-update.bats
|
||||
bats -t /usr/share/podman/test/system/520-checkpoint.bats
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
summary: Sanity test for crun
|
||||
tag: ['upstream', 'downstream']
|
||||
test: bash ./runtest.sh
|
||||
duration: 10m
|
||||
tag: [ sanity ]
|
||||
|
|
|
|||
|
|
@ -10,104 +10,82 @@ cat /etc/redhat-release
|
|||
uname -r
|
||||
rpm -q crun criu
|
||||
|
||||
if ! crun --version; then
|
||||
exit 1
|
||||
fi
|
||||
crun --version
|
||||
[ $? -ne 0 ] && exit 1
|
||||
|
||||
if ! crun features; then
|
||||
exit 1
|
||||
fi
|
||||
crun features
|
||||
[ $? -ne 0 ] && exit 1
|
||||
|
||||
if ! crun list; then
|
||||
exit 1
|
||||
fi
|
||||
crun list
|
||||
[ $? -ne 0 ] && exit 1
|
||||
|
||||
# create the top most bundle and rootfs directory
|
||||
mkdir -p "$TEMPDIR"/rootfs
|
||||
mkdir -p $TEMPDIR/rootfs
|
||||
|
||||
# export busybox via podman into the rootfs directory
|
||||
if ! (podman export "$(podman create $TESTIMG)" | tar -C "$TEMPDIR"/rootfs -xvf -); then
|
||||
exit 1
|
||||
fi
|
||||
podman export $(podman create $TESTIMG) | tar -C $TEMPDIR/rootfs -xvf -
|
||||
[ $? -ne 0 ] && exit 1
|
||||
|
||||
# use existing spec
|
||||
cp ./config.json "$TEMPDIR"
|
||||
ls "$TEMPDIR"
|
||||
cd "$TEMPDIR"
|
||||
cp ./config.json $TEMPDIR
|
||||
ls $TEMPDIR
|
||||
cd $TEMPDIR
|
||||
|
||||
if ! crun create $CNAME; then
|
||||
exit 1
|
||||
fi
|
||||
crun create $CNAME
|
||||
[ $? -ne 0 ] && exit 1
|
||||
|
||||
if ! crun list; then
|
||||
exit 1
|
||||
fi
|
||||
crun list
|
||||
[ $? -ne 0 ] && exit 1
|
||||
|
||||
if ! crun start $CNAME; then
|
||||
exit 1
|
||||
fi
|
||||
crun start $CNAME
|
||||
[ $? -ne 0 ] && exit 1
|
||||
|
||||
if ! crun list; then
|
||||
exit 1
|
||||
fi
|
||||
crun list
|
||||
[ $? -ne 0 ] && exit 1
|
||||
|
||||
if ! crun state $CNAME; then
|
||||
exit 1
|
||||
fi
|
||||
crun state $CNAME
|
||||
[ $? -ne 0 ] && exit 1
|
||||
|
||||
if ! crun ps $CNAME; then
|
||||
exit 1
|
||||
fi
|
||||
crun ps $CNAME
|
||||
[ $? -ne 0 ] && exit 1
|
||||
|
||||
if ! ret=$(crun exec $CNAME pwd) || [[ "$ret" != '/' ]]; then
|
||||
exit 1
|
||||
fi
|
||||
ret=$(crun exec $CNAME pwd)
|
||||
[ $? -ne 0 ] || [ $ret != '/' ] && exit 1
|
||||
|
||||
if ! crun pause $CNAME; then
|
||||
exit 1
|
||||
fi
|
||||
crun pause $CNAME
|
||||
[ $? -ne 0 ] && exit 1
|
||||
|
||||
if ! crun state $CNAME; then
|
||||
exit 1
|
||||
fi
|
||||
crun state $CNAME
|
||||
[ $? -ne 0 ] && exit 1
|
||||
|
||||
if ! crun resume $CNAME; then
|
||||
exit 1
|
||||
fi
|
||||
crun resume $CNAME
|
||||
[ $? -ne 0 ] && exit 1
|
||||
|
||||
if ! crun state $CNAME; then
|
||||
exit 1
|
||||
fi
|
||||
crun state $CNAME
|
||||
[ $? -ne 0 ] && exit 1
|
||||
|
||||
if ! ret=$(crun exec $CNAME pwd) || [[ "$ret" != '/' ]]; then
|
||||
exit 1
|
||||
fi
|
||||
ret=$(crun exec $CNAME pwd)
|
||||
[ $? -ne 0 ] || [ $ret != '/' ] && exit 1
|
||||
|
||||
if ! crun delete --force $CNAME; then
|
||||
exit 1
|
||||
fi
|
||||
crun delete --force $CNAME
|
||||
[ $? -ne 0 ] && exit 1
|
||||
|
||||
if ! crun list; then
|
||||
exit 1
|
||||
fi
|
||||
crun list
|
||||
[ $? -ne 0 ] && exit 1
|
||||
|
||||
if ! (crun run $CNAME &); then
|
||||
exit 1
|
||||
fi
|
||||
crun run $CNAME &
|
||||
[ $? -ne 0 ] && exit 1
|
||||
|
||||
if ! crun list; then
|
||||
exit 1
|
||||
fi
|
||||
crun list
|
||||
[ $? -ne 0 ] && exit 1
|
||||
|
||||
# make sure the container is running state
|
||||
sleep 2
|
||||
|
||||
if ! ret=$(crun exec $CNAME echo 'ok') || [[ "$ret" != 'ok' ]]; then
|
||||
exit 1
|
||||
fi
|
||||
ret=$(crun exec $CNAME echo 'ok')
|
||||
[ $? -ne 0 ] || [ $ret != 'ok' ] && exit 1
|
||||
|
||||
if ! crun kill $CNAME; then
|
||||
exit 1
|
||||
fi
|
||||
crun kill $CNAME
|
||||
[ $? -ne 0 ] && exit 1
|
||||
|
||||
exit 0
|
||||
|
|
|
|||
|
|
@ -1,4 +0,0 @@
|
|||
summary: Shellcheck tests
|
||||
test: find ../ -type f -name "*.sh" -exec shellcheck {} +
|
||||
duration: 10m
|
||||
tag: [ shellcheck ]
|
||||
Loading…
Add table
Add a link
Reference in a new issue