Skip to content

ci: add v6 remote install tests for RPM #1216

ci: add v6 remote install tests for RPM

ci: add v6 remote install tests for RPM #1216

Workflow file for this run

name: Yum 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 yum-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 rpm
uses: actions/cache@v4
id: cache-rpm
with:
path: |
fluent-package/yum/repositories
fluent-release/yum/repositories
fluent-lts-release/yum/repositories
key: ${{ runner.os }}-cache-${{ matrix.rake-job }}-aarch64-${{ hashFiles('**/config.rb', '**/Rakefile', '**/Gemfile*', '**/*.spec.in', 'fluent-package/templates/**', 'fluent-package/yum/**/Dockerfile') }}
- uses: ruby/setup-ruby@v1
with:
ruby-version: '3.4'
- name: Install dependencies
if: ${{ ! steps.cache-rpm.outputs.cache-hit }}
run: |
gem install serverspec --no-document
- name: Build rpm with Docker
if: ${{ ! steps.cache-rpm.outputs.cache-hit }}
run: |
rake yum:build YUM_TARGETS=${{ matrix.rake-job }}-aarch64
- name: Upload fluent-package rpm
uses: actions/upload-artifact@v4
with:
name: packages-${{ matrix.rake-job }}-aarch64
path: fluent-package/yum/repositories
- name: Upload fluent-release rpm
uses: actions/upload-artifact@v4
with:
name: packages-release-${{ matrix.rake-job }}-aarch64
path: fluent-release/yum/repositories
- name: Upload fluent-lts-release rpm
uses: actions/upload-artifact@v4
with:
name: packages-lts-release-${{ matrix.rake-job }}-aarch64
path: fluent-lts-release/yum/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 }}-aarch64
path: fluent-package/yum/repositories
- name: Check Package Size
run: |
fluent-package/yum/pkgsize-test.sh ${{ matrix.rake-job }} aarch64
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 }}-aarch64
path: fluent-package/yum/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/yum/install-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 }}-aarch64
path: fluent-package/yum/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/yum/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 }}-aarch64
path: fluent-package/yum/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/yum/confluent-test.sh
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 }}-aarch64
path: fluent-package/yum/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/yum/binstubs-test.sh