Backport: package: improve verify helper (#736) #3134
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Yum based Linux | |
on: | |
push: | |
branches: | |
- master | |
- fluent-package-v5 | |
pull_request: | |
concurrency: | |
group: ${{ github.head_ref || github.sha }}-${{ github.workflow }} | |
cancel-in-progress: true | |
jobs: | |
build: | |
name: Build | |
timeout-minutes: 60 | |
strategy: | |
fail-fast: false | |
matrix: | |
label: | |
- RockyLinux 8 x86_64 | |
- AlmaLinux 9 x86_64 | |
- Amazon Linux 2 x86_64 | |
- Amazon Linux 2023 x86_64 | |
include: | |
- label: RockyLinux 8 x86_64 | |
rake-job: rockylinux-8 | |
test-docker-image: rockylinux/rockylinux:8 | |
centos-stream: false | |
- label: AlmaLinux 9 x86_64 | |
rake-job: almalinux-9 | |
test-docker-image: almalinux:9 | |
centos-stream: false | |
- label: Amazon Linux 2 x86_64 | |
rake-job: amazonlinux-2 | |
test-docker-image: amazonlinux:2 | |
centos-stream: false | |
- label: Amazon Linux 2023 x86_64 | |
rake-job: amazonlinux-2023 | |
test-docker-image: amazonlinux:2023 | |
centos-stream: false | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@master | |
- name: Install dependencies | |
run: | | |
sudo apt update | |
sudo apt -V install ruby ruby-bundler ruby-serverspec | |
sudo gem install bundler:2.2.9 --no-document | |
sudo gem uninstall fileutils | |
- name: Build rpm with Docker | |
run: | | |
rake yum:build YUM_TARGETS=${{ matrix.rake-job }} | |
- name: Upload fluent-package rpm | |
uses: actions/upload-artifact@v4 | |
with: | |
name: packages-${{ matrix.rake-job }} | |
path: fluent-package/yum/repositories | |
# TODO move the following steps to "Test" job | |
- name: Check Package Size | |
run: | | |
fluent-package/yum/pkgsize-test.sh ${{ matrix.rake-job }} x86_64 | |
- name: Installation Test | |
run: | | |
mkdir -p .bundle | |
docker run \ | |
--rm \ | |
--tty \ | |
--volume ${PWD}:/fluentd:ro \ | |
--env CENTOS_STREAM=${{ matrix.centos-stream }} \ | |
${{ matrix.test-docker-image }} \ | |
/fluentd/fluent-package/yum/install-test.sh | |
- name: Serverspec Test | |
run: | | |
mkdir -p .bundle | |
docker run \ | |
--rm \ | |
--tty \ | |
--volume ${PWD}:/fluentd:ro \ | |
--env CENTOS_STREAM=${{ matrix.centos-stream }} \ | |
${{ matrix.test-docker-image }} \ | |
/fluentd/fluent-package/yum/serverspec-test.sh | |
- name: Binstubs Test | |
run: | | |
mkdir -p .bundle | |
docker run \ | |
--rm \ | |
--tty \ | |
--volume ${PWD}:/fluentd:ro \ | |
--env CENTOS_STREAM=${{ matrix.centos-stream }} \ | |
${{ matrix.test-docker-image }} \ | |
/fluentd/fluent-package/yum/binstubs-test.sh | |
v1test: | |
name: Test ${{ matrix.label }} ${{ matrix.test-file }} (CGroup V1) | |
needs: build | |
runs-on: ubuntu-20.04 | |
timeout-minutes: 15 | |
strategy: | |
fail-fast: false | |
matrix: | |
label: | |
- AmazonLinux 2 x86_64 | |
- AmazonLinux 2023 x86_64 | |
test-file: | |
- "update-from-v4.sh" | |
- "update-to-next-version-with-backward-compat-for-v4.sh" | |
- "downgrade-to-v4.sh" | |
- "install-newly.sh local" | |
- "install-newly.sh v5" | |
- "install-newly.sh lts" | |
include: | |
- label: AmazonLinux 2 x86_64 | |
rake-job: amazonlinux-2 | |
test-lxc-image: images:amazonlinux/2 | |
- label: AmazonLinux 2023 x86_64 | |
rake-job: amazonlinux-2023 | |
test-lxc-image: images:amazonlinux/2023 | |
exclude: | |
- label: AmazonLinux 2023 x86_64 | |
test-file: update-from-v4.sh | |
- label: AmazonLinux 2023 x86_64 | |
test-file: update-to-next-version-with-backward-compat-for-v4.sh | |
- label: AmazonLinux 2023 x86_64 | |
test-file: downgrade-to-v4.sh | |
steps: | |
- uses: actions/checkout@master | |
- uses: actions/download-artifact@v4 | |
with: | |
name: packages-${{ matrix.rake-job }} | |
- uses: canonical/[email protected] | |
- name: Run diagnostic | |
run: | | |
uname -a | |
echo "::group::snap info lxd" | |
snap info lxd | |
echo "::endgroup::" | |
echo "::group::snap services lxd" | |
snap services lxd | |
echo "::endgroup::" | |
echo "::group::snap logs lxd" | |
sudo snap logs lxd | |
echo "::endgroup::" | |
echo "::group::lxc remote list" | |
lxc remote list | |
echo "::endgroup::" | |
echo "::group::lxc list images:" | |
lxc image list images: | |
echo "::endgroup::" | |
- name: Run Test ${{ matrix.test-file }} on ${{ matrix.test-lxc-image }} | |
run: fluent-package/yum/systemd-test/test.sh ${{ matrix.test-lxc-image }} ${{ matrix.test-file }} | |
v2test: | |
name: Test ${{ matrix.label }} ${{ matrix.test-file }} (CGroup V2) | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 15 | |
strategy: | |
fail-fast: false | |
matrix: | |
label: | |
- RockyLinux 8 x86_64 | |
- AlmaLinux 9 x86_64 | |
test-file: | |
- "update-from-v4.sh" | |
- "update-to-next-version-with-backward-compat-for-v4.sh" | |
- "downgrade-to-v4.sh" | |
- "install-newly.sh local" | |
- "install-newly.sh v5" | |
- "install-newly.sh lts" | |
include: | |
- label: RockyLinux 8 x86_64 | |
rake-job: rockylinux-8 | |
test-lxc-image: images:rockylinux/8 | |
- label: AlmaLinux 9 x86_64 | |
rake-job: almalinux-9 | |
test-lxc-image: images:almalinux/9 | |
steps: | |
- uses: actions/checkout@master | |
- uses: actions/download-artifact@v4 | |
with: | |
name: packages-${{ matrix.rake-job }} | |
- uses: canonical/[email protected] | |
- name: Run Test ${{ matrix.test-file }} on ${{ matrix.test-lxc-image }} | |
run: fluent-package/yum/systemd-test/test.sh ${{ matrix.test-lxc-image }} ${{ matrix.test-file }} |