Backport: ci: install transitional package (#731) #3096
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: Apt 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: | |
- Debian bullseye amd64 | |
- Debian bookworm amd64 | |
- Ubuntu Focal amd64 | |
- Ubuntu Jammy amd64 | |
- Ubuntu Noble amd64 | |
include: | |
- label: Debian bullseye amd64 | |
rake-job: debian-bullseye | |
test-docker-image: debian:bullseye | |
- label: Debian bookworm amd64 | |
rake-job: debian-bookworm | |
test-docker-image: debian:bookworm | |
- label: Ubuntu Focal amd64 | |
rake-job: ubuntu-focal | |
test-docker-image: ubuntu:focal | |
- label: Ubuntu Jammy amd64 | |
rake-job: ubuntu-jammy | |
test-docker-image: ubuntu:jammy | |
- label: Ubuntu Noble amd64 | |
rake-job: ubuntu-noble | |
test-docker-image: ubuntu:noble | |
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 deb with Docker | |
run: | | |
rake apt:build APT_TARGETS=${{ matrix.rake-job }} | |
- name: Upload fluent-package deb | |
uses: actions/upload-artifact@master | |
with: | |
name: packages-${{ matrix.rake-job }} | |
path: fluent-package/apt/repositories | |
- name: Upload fluent-apt-source deb | |
uses: actions/upload-artifact@master | |
with: | |
name: packages-apt-source-${{ matrix.rake-job }} | |
path: fluent-apt-source/apt/repositories | |
- name: Upload fluent-lts-apt-source deb | |
uses: actions/upload-artifact@master | |
with: | |
name: packages-lts-apt-source-${{ matrix.rake-job }} | |
path: fluent-lts-apt-source/apt/repositories | |
# TODO move the following steps to "Test" job | |
- name: Check Package Size | |
run: | | |
fluent-package/apt/pkgsize-test.sh ${{ matrix.rake-job }} amd64 | |
- name: Installation Test | |
run: | | |
mkdir -p .bundle | |
docker run \ | |
--rm \ | |
--tty \ | |
--volume ${PWD}:/fluentd:ro \ | |
${{ matrix.test-docker-image }} \ | |
/fluentd/fluent-package/apt/install-test.sh | |
- name: Piuparts (Install/Remove/Upgrade) Test | |
run: | | |
mkdir -p .bundle | |
docker run \ | |
--privileged \ | |
--rm \ | |
--tty \ | |
--volume ${PWD}:/fluentd:ro \ | |
${{ matrix.test-docker-image }} \ | |
/fluentd/fluent-package/apt/piuparts-test.sh | |
- name: Serverspec Test | |
run: | | |
mkdir -p .bundle | |
docker run \ | |
--rm \ | |
--tty \ | |
--volume ${PWD}:/fluentd:ro \ | |
${{ matrix.test-docker-image }} \ | |
/fluentd/fluent-package/apt/serverspec-test.sh | |
- name: Confluent Test | |
run: | | |
mkdir -p .bundle | |
docker run \ | |
--rm \ | |
--tty \ | |
--volume ${PWD}:/fluentd:ro \ | |
${{ matrix.test-docker-image }} \ | |
/fluentd/fluent-package/apt/confluent-test.sh | |
- name: Binstubs Test | |
run: | | |
mkdir -p .bundle | |
docker run \ | |
--rm \ | |
--tty \ | |
--volume ${PWD}:/fluentd:ro \ | |
${{ matrix.test-docker-image }} \ | |
/fluentd/fluent-package/apt/binstubs-test.sh | |
test: | |
name: Test ${{ matrix.label }} ${{ matrix.test-file }} | |
needs: build | |
runs-on: ubuntu-latest | |
timeout-minutes: 15 | |
strategy: | |
fail-fast: false | |
matrix: | |
label: | |
- Debian bullseye amd64 | |
- Debian bookworm amd64 | |
- Ubuntu Focal amd64 | |
- Ubuntu Jammy amd64 | |
- Ubuntu Noble amd64 | |
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: Debian bullseye amd64 | |
rake-job: debian-bullseye | |
test-lxc-image: images:debian/11 | |
- label: Debian bookworm amd64 | |
rake-job: debian-bookworm | |
test-lxc-image: images:debian/12 | |
- label: Ubuntu Focal amd64 | |
rake-job: ubuntu-focal | |
test-lxc-image: ubuntu:20.04 | |
- label: Ubuntu Jammy amd64 | |
rake-job: ubuntu-jammy | |
test-lxc-image: ubuntu:22.04 | |
- label: Ubuntu Noble amd64 | |
rake-job: ubuntu-noble | |
test-lxc-image: ubuntu:24.04 | |
exclude: | |
- label: Debian bookworm amd64 | |
test-file: update-from-v4.sh | |
- label: Debian bookworm amd64 | |
test-file: update-to-next-version-with-backward-compat-for-v4.sh | |
- label: Debian bookworm amd64 | |
test-file: downgrade-to-v4.sh | |
- label: Ubuntu Noble amd64 | |
test-file: update-from-v4.sh | |
- label: Ubuntu Noble amd64 | |
test-file: update-to-next-version-with-backward-compat-for-v4.sh | |
- label: Ubuntu Noble amd64 | |
test-file: downgrade-to-v4.sh | |
- label: Ubuntu Noble amd64 | |
test-file: install-newly.sh v5 | |
- label: Ubuntu Noble amd64 | |
test-file: install-newly.sh lts | |
steps: | |
- uses: actions/checkout@master | |
- uses: actions/download-artifact@v4 | |
with: | |
name: packages-${{ matrix.rake-job }} | |
- uses: actions/download-artifact@v4 | |
with: | |
name: packages-apt-source-${{ 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/apt/systemd-test/test.sh ${{ matrix.test-lxc-image }} ${{ matrix.test-file }} |