CHANGELOG: fix fluent-package v5 openssl version (#944) #3940
This file contains hidden or 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: | |
| define-matrix: | |
| runs-on: ubuntu-latest | |
| 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.matrix.json | jq --compact-output)" >> $GITHUB_OUTPUT | |
| working-directory: .github/workflows/ | |
| build: | |
| needs: define-matrix | |
| name: Build | |
| timeout-minutes: 60 | |
| strategy: | |
| fail-fast: false | |
| matrix: ${{ fromJSON(needs.define-matrix.outputs.matrix) }} | |
| runs-on: ubuntu-latest | |
| 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 }}-${{ hashFiles('**/config.rb', '**/Rakefile', '**/Gemfile*', '**/*.spec.in', 'fluent-package/templates/**', 'fluent-package/yum/**/Dockerfile') }} | |
| - name: Install dependencies | |
| if: ${{ ! steps.cache-rpm.outputs.cache-hit }} | |
| 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 | |
| if: ${{ ! steps.cache-rpm.outputs.cache-hit }} | |
| run: | | |
| rake yum:build YUM_TARGETS=${{ matrix.rake-job }} | |
| - name: Upload fluent-package rpm | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: packages-v5-${{ matrix.rake-job }} | |
| path: fluent-package/yum/repositories | |
| - name: Upload fluent-release rpm | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: packages-release-v5-${{ matrix.rake-job }} | |
| path: fluent-release/yum/repositories | |
| - name: Upload fluent-lts-release rpm | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: packages-lts-release-v5-${{ matrix.rake-job }} | |
| path: fluent-lts-release/yum/repositories | |
| check_package_size: | |
| name: Check Package Size | |
| runs-on: ubuntu-latest | |
| 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-v5-${{ matrix.rake-job }} | |
| path: fluent-package/yum/repositories | |
| - name: Check Package Size | |
| run: | | |
| fluent-package/yum/pkgsize-test.sh ${{ matrix.rake-job }} x86_64 | |
| installation_test: | |
| name: Installation Test | |
| runs-on: ubuntu-latest | |
| 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-v5-${{ matrix.rake-job }} | |
| path: fluent-package/yum/repositories | |
| - 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 | |
| serverspec_test: | |
| name: Serverspec Test | |
| runs-on: ubuntu-latest | |
| 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-v5-${{ matrix.rake-job }} | |
| path: fluent-package/yum/repositories | |
| - 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 | |
| binstubs_test: | |
| name: Binstubs Test | |
| runs-on: ubuntu-latest | |
| 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-v5-${{ matrix.rake-job }} | |
| path: fluent-package/yum/repositories | |
| - 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 | |
| # | |
| # NOTE: It is hard to keep testing environment for AmazonLinux:2 properly and it is not sustainable enough at this time. | |
| # Thus disable v1test job for a while. (Running AmazonLinux:2 (CGroup v1) on CGroup v2 host with VirtualBox is fragile and not stable enough.) | |
| # If we found a better solution for it, replace with it. | |
| # | |
| # v1test: | |
| # name: Test ${{ matrix.label }} ${{ matrix.test-file }} (CGroup V1) | |
| # needs: [check_package_size, installation_test, serverspec_test, binstubs_test] | |
| # # Ubuntu 20.04 is not available anymore, so can't use container based | |
| # # approach. Instead, use vagrant on Ubuntu 24.04. | |
| # # (NOTE: nested VM is executable on macos-13, but it is too slow) | |
| # runs-on: ubuntu-24.04 | |
| # timeout-minutes: 15 | |
| # strategy: | |
| # fail-fast: false | |
| # matrix: | |
| # label: | |
| # - AmazonLinux 2 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 | |
| # steps: | |
| # - uses: actions/checkout@v4 | |
| # - uses: actions/download-artifact@v4 | |
| # with: | |
| # name: packages-${{ matrix.rake-job }} | |
| # - name: Show host runner information | |
| # run: | | |
| # cat /proc/cpuinfo | grep -E "vmx|svm" | |
| # lsmod | grep kvm | |
| # - name: Set up virtualbox | |
| # run: | | |
| # sudo apt-get update | |
| # sudo apt-get install -y virtualbox | |
| # - name: Set up vagrant | |
| # run: | | |
| # sudo apt-get update | |
| # wget -O - https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg | |
| # echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list | |
| # sudo apt-get update && sudo apt install -y vagrant | |
| # vagrant --version | |
| # vagrant status | |
| # - name: Spin up vagrant | |
| # run: | | |
| # vagrant up --provider virtualbox ${{ matrix.rake-job }} | |
| # # Run tests based on AlmaLinux 8 (CGroup v1) | |
| # - name: Run Test ${{ matrix.test-file }} on ${{ matrix.rake-job }} | |
| # run: | | |
| # BOX_MOUNT_DIR=fluent-package/yum/repositories vagrant ssh ${{ matrix.rake-job }} -- /host/fluent-package/yum/systemd-test/${{ matrix.test-file }} | |
| v2test: | |
| name: Test ${{ matrix.label }} ${{ matrix.test-file }} (CGroup V2) | |
| needs: [check_package_size, installation_test, serverspec_test, binstubs_test] | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 15 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| label: | |
| - RockyLinux 8 x86_64 | |
| - AlmaLinux 9 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" | |
| - "tmpfiles.sh" | |
| include: | |
| - label: RockyLinux 8 x86_64 | |
| rake-job: rockylinux-8 | |
| container-image: images:rockylinux/8 | |
| - label: AlmaLinux 9 x86_64 | |
| rake-job: almalinux-9 | |
| container-image: images:almalinux/9 | |
| - label: AmazonLinux 2023 x86_64 | |
| rake-job: amazonlinux-2023 | |
| container-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@v4 | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| name: packages-v5-${{ matrix.rake-job }} | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| name: packages-lts-release-v5-${{ matrix.rake-job }} | |
| - name: Install Incus | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y -V incus | |
| - name: Allow egress network traffic flows for Incus | |
| # https://linuxcontainers.org/incus/docs/main/howto/network_bridge_firewalld/#prevent-connectivity-issues-with-incus-and-docker | |
| run: | | |
| sudo iptables -I DOCKER-USER -i incusbr0 -j ACCEPT | |
| sudo iptables -I DOCKER-USER -o incusbr0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT | |
| - name: Setup Incus | |
| run: | | |
| sudo incus admin init --auto | |
| - name: Run Test ${{ matrix.test-file }} on ${{ matrix.container-image }} | |
| run: fluent-package/yum/systemd-test/test.sh ${{ matrix.container-image }} ${{ matrix.test-file }} | |
| fluent-release-test: | |
| name: Test ${{ matrix.label }} ${{ matrix.test }} (CGroup V2) | |
| needs: [v2test] | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 15 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| label: | |
| - RockyLinux 8 x86_64 | |
| - AlmaLinux 9 x86_64 | |
| #- AmazonLinux 2 x86_64 | |
| - AmazonLinux 2023 x86_64 | |
| test: | |
| - install-from-r2.sh | |
| include: | |
| - label: RockyLinux 8 x86_64 | |
| rake-job: rockylinux-8 | |
| container-image: images:rockylinux/8 | |
| - label: AlmaLinux 9 x86_64 | |
| rake-job: almalinux-9 | |
| container-image: images:almalinux/9 | |
| # - label: AmazonLinux 2 x86_64 | |
| # rake-job: amazonlinux-2 | |
| # container-image: images:amazonlinux/2 | |
| - label: AmazonLinux 2023 x86_64 | |
| rake-job: amazonlinux-2023 | |
| container-image: images:amazonlinux/2023 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| name: packages-release-v5-${{ matrix.rake-job }} | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| name: packages-lts-release-v5-${{ matrix.rake-job }} | |
| - name: Install Incus | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y -V incus | |
| - name: Allow egress network traffic flows for Incus | |
| # https://linuxcontainers.org/incus/docs/main/howto/network_bridge_firewalld/#prevent-connectivity-issues-with-incus-and-docker | |
| run: | | |
| sudo iptables -I DOCKER-USER -i incusbr0 -j ACCEPT | |
| sudo iptables -I DOCKER-USER -o incusbr0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT | |
| - name: Setup Incus | |
| run: | | |
| sudo incus admin init --auto | |
| - name: Run Test ${{matrix.test}} on ${{ matrix.container-image }} | |
| run: fluent-release/yum/systemd-test/test.sh ${{ matrix.container-image }} ${{ matrix.test }} |