Skip to content

ci: add v6 remote install tests for DEB (#905) #1219

ci: add v6 remote install tests for DEB (#905)

ci: add v6 remote install tests for DEB (#905) #1219

Workflow file for this run

name: Apt based Linux (AArch64)
on:
push:
branches:
- master
- fluent-package-v5
pull_request:
concurrency:
group: ${{ github.head_ref || github.sha }}-${{ github.workflow }}
cancel-in-progress: true
jobs:
define-matrix:
runs-on: ubuntu-24.04-arm
outputs:
matrix: ${{ steps.set-matrix.outputs.matrix }}
steps:
- uses: actions/checkout@v4
- id: set-matrix
# See https://docs.github.com/en/actions/writing-workflows/choosing-what-your-workflow-does/evaluate-expressions-in-workflows-and-actions#example-returning-a-json-object
run: echo "matrix=$(cat apt-arm.matrix.json | jq --compact-output)" >> $GITHUB_OUTPUT
working-directory: .github/workflows/
build:
name: Build
needs: define-matrix
strategy:
fail-fast: false
matrix: ${{ fromJSON(needs.define-matrix.outputs.matrix) }}
runs-on: ubuntu-24.04-arm
steps:
- uses: actions/checkout@v4
- name: cache deb
uses: actions/cache@v4
id: cache-deb
with:
path: |
fluent-package/apt/repositories
key: ${{ runner.os }}-cache-${{ matrix.rake-job }}-arm64-${{ hashFiles('**/config.rb', '**/Rakefile', '**/Gemfile*', 'fluent-package/templates/**', 'fluent-package/debian/**', 'fluent-package/apt/**/Dockerfile') }}
- uses: ruby/setup-ruby@v1
with:
ruby-version: '3.4'
- name: Install dependencies
if: ${{ ! steps.cache-deb.outputs.cache-hit }}
run: |
gem install serverspec --no-document
- name: Build deb with Docker
if: ${{ ! steps.cache-deb.outputs.cache-hit }}
run: |
rake apt:build APT_TARGETS=${{ matrix.rake-job }}-arm64 ${{ matrix.rake-options }}
- name: Upload fluent-package deb
uses: actions/upload-artifact@master
with:
name: packages-${{ matrix.rake-job }}-arm64
path: fluent-package/apt/repositories
check_package_size:
name: Check Package Size
runs-on: ubuntu-24.04-arm
needs: [define-matrix, build]
strategy:
fail-fast: false
matrix: ${{ fromJSON(needs.define-matrix.outputs.matrix) }}
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v4
with:
name: packages-${{ matrix.rake-job }}-arm64
path: fluent-package/apt/repositories
- name: Check Package Size
run: |
fluent-package/apt/pkgsize-test.sh ${{ matrix.rake-job }} arm64
binstubs_test:
name: Binstubs Test
runs-on: ubuntu-24.04-arm
needs: [define-matrix, build]
strategy:
fail-fast: false
matrix: ${{ fromJSON(needs.define-matrix.outputs.matrix) }}
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v4
with:
name: packages-${{ matrix.rake-job }}-arm64
path: fluent-package/apt/repositories
- name: Binstubs Test
run: |
mkdir -p .bundle
docker run \
--rm \
--tty \
--env CI=true \
--volume ${PWD}:/fluentd:ro \
${{ matrix.test-docker-image }} \
/fluentd/fluent-package/apt/binstubs-test.sh
installation_test:
name: Installation Test
runs-on: ubuntu-24.04-arm
needs: [define-matrix, build]
strategy:
fail-fast: false
matrix: ${{ fromJSON(needs.define-matrix.outputs.matrix) }}
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v4
with:
name: packages-${{ matrix.rake-job }}-arm64
path: fluent-package/apt/repositories
- name: Installation Test
run: |
mkdir -p .bundle
docker run \
--rm \
--tty \
--env CI=true \
--volume ${PWD}:/fluentd:ro \
${{ matrix.test-docker-image }} \
/fluentd/fluent-package/apt/install-test.sh
piuparts_test:
name: Piuparts Test
runs-on: ubuntu-24.04-arm
needs: [define-matrix, build]
strategy:
fail-fast: false
matrix: ${{ fromJSON(needs.define-matrix.outputs.matrix) }}
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v4
with:
name: packages-${{ matrix.rake-job }}-arm64
path: fluent-package/apt/repositories
- name: Piuparts (Install/Remove/Upgrade) Test
run: |
mkdir -p .bundle
docker run \
--privileged \
--rm \
--tty \
--env CI=true \
--volume ${PWD}:/fluentd:ro \
${{ matrix.test-docker-image }} \
/fluentd/fluent-package/apt/piuparts-test.sh
serverspec_test:
name: Serverspec Test
runs-on: ubuntu-24.04-arm
needs: [define-matrix, build]
strategy:
fail-fast: false
matrix: ${{ fromJSON(needs.define-matrix.outputs.matrix) }}
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v4
with:
name: packages-${{ matrix.rake-job }}-arm64
path: fluent-package/apt/repositories
- name: Serverspec Test
run: |
mkdir -p .bundle
docker run \
--rm \
--tty \
--env CI=true \
--volume ${PWD}:/fluentd:ro \
${{ matrix.test-docker-image }} \
/fluentd/fluent-package/apt/serverspec-test.sh
confluent_test:
name: Confluent Test
runs-on: ubuntu-24.04-arm
needs: [define-matrix, build]
strategy:
fail-fast: false
matrix: ${{ fromJSON(needs.define-matrix.outputs.matrix) }}
steps:
- uses: actions/checkout@v4
- uses: actions/download-artifact@v4
with:
name: packages-${{ matrix.rake-job }}-arm64
path: fluent-package/apt/repositories
- name: Confluent Test
run: |
mkdir -p .bundle
docker run \
--rm \
--tty \
--env CI=true \
--volume ${PWD}:/fluentd:ro \
${{ matrix.test-docker-image }} \
/fluentd/fluent-package/apt/confluent-test.sh