Release v605 #4579
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: Apt based Linux | |
| on: | |
| push: | |
| branches: | |
| - master | |
| - fluent-package-v6 | |
| 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@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - 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.matrix.json | jq --compact-output)" >> $GITHUB_OUTPUT | |
| working-directory: .github/workflows/ | |
| build: | |
| name: Build | |
| runs-on: ubuntu-latest | |
| needs: define-matrix | |
| strategy: | |
| fail-fast: false | |
| matrix: ${{ fromJSON(needs.define-matrix.outputs.matrix) }} | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - name: Build deb on ${{ matrix.label }} | |
| uses: ./.github/actions/build-deb | |
| with: | |
| rake-job: ${{ matrix.rake-job }} | |
| next-major: 'false' | |
| cache-group: v6 | |
| build-next: | |
| name: Build next major | |
| runs-on: ubuntu-latest | |
| needs: define-matrix | |
| strategy: | |
| fail-fast: false | |
| matrix: ${{ fromJSON(needs.define-matrix.outputs.matrix) }} | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - name: Build next major deb on ${{ matrix.label }} | |
| uses: ./.github/actions/build-deb | |
| with: | |
| rake-job: ${{ matrix.rake-job }} | |
| next-major: 'true' | |
| cache-group: v7 | |
| 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@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 | |
| with: | |
| name: packages-${{ matrix.rake-job }} | |
| path: fluent-package/apt/repositories | |
| - name: Check Package Size | |
| run: | | |
| fluent-package/apt/pkgsize-test.sh ${{ matrix.rake-job }} amd64 | |
| 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@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - name: Installation Test on ${{ matrix.label }} | |
| uses: ./.github/actions/test-on-docker | |
| with: | |
| rake-job: ${{ matrix.rake-job }} | |
| repository-type: apt | |
| test-script: install-test.sh | |
| test-docker-image: ${{ matrix.test-docker-image }} | |
| piuparts_test: | |
| name: Piuparts Test | |
| runs-on: ubuntu-latest | |
| needs: [define-matrix, build] | |
| strategy: | |
| fail-fast: false | |
| matrix: ${{ fromJSON(needs.define-matrix.outputs.matrix) }} | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - name: Piuparts Test on ${{ matrix.label }} | |
| uses: ./.github/actions/test-on-docker | |
| with: | |
| rake-job: ${{ matrix.rake-job }} | |
| docker-options: --privileged | |
| repository-type: apt | |
| test-docker-image: ${{ matrix.test-docker-image }} | |
| test-script: piuparts-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@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - name: Serverspec Test on ${{ matrix.label }} | |
| uses: ./.github/actions/test-on-docker | |
| with: | |
| rake-job: ${{ matrix.rake-job }} | |
| repository-type: apt | |
| test-docker-image: ${{ matrix.test-docker-image }} | |
| test-script: 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@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - name: Binstubs Test on ${{ matrix.label }} | |
| uses: ./.github/actions/test-on-docker | |
| with: | |
| rake-job: ${{ matrix.rake-job }} | |
| repository-type: apt | |
| test-docker-image: ${{ matrix.test-docker-image }} | |
| test-script: binstubs-test.sh | |
| test: | |
| name: Test ${{ matrix.label }} ${{ matrix.test }} | |
| needs: [build-next, check_package_size, installation_test, piuparts_test, serverspec_test, binstubs_test] | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 15 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| label: | |
| - Debian bookworm amd64 | |
| - Debian trixie amd64 | |
| - Ubuntu Jammy amd64 | |
| - Ubuntu Noble amd64 | |
| - Ubuntu Resolute amd64 | |
| test: | |
| - "update-from-v4.sh" | |
| - "update-from-v4.sh via-v5" | |
| - "update-from-v5-lts.sh" | |
| - "downgrade-to-v4.sh" | |
| - "downgrade-to-v5-lts.sh" | |
| - "downgrade-to-v6-lts-tmpfiles.sh" | |
| - "install-newly.sh local" | |
| - "install-newly.sh v6" | |
| - "install-newly.sh lts" | |
| - "update-to-next-version.sh" | |
| - "update-to-next-version-with-backward-compat-for-v4.sh" | |
| - "update-to-next-version-service-status.sh enabled active" | |
| - "update-to-next-version-service-status.sh enabled inactive" | |
| - "update-to-next-version-service-status.sh disabled active" | |
| - "update-to-next-version-service-status.sh disabled inactive" | |
| - "update-to-next-version-with-auto-and-manual.sh" | |
| - "update-to-next-major-version.sh auto active" | |
| - "update-to-next-major-version.sh auto inactive" | |
| - "update-to-next-major-version.sh manual active" | |
| - "update-to-next-major-version.sh manual inactive" | |
| - "update-to-next-major-version.sh etc active" | |
| - "update-to-next-major-version.sh etc inactive" | |
| - "update-without-data-lost.sh v6 v7" | |
| - "update-without-data-lost.sh v7 v6" | |
| - "obsolete-plugins.sh" | |
| - "tmpfiles.sh" | |
| include: | |
| - label: Debian bookworm amd64 | |
| rake-job: debian-bookworm | |
| container-image: images:debian/12 | |
| - label: Debian trixie amd64 | |
| rake-job: debian-trixie | |
| container-image: images:debian/13 | |
| - label: Ubuntu Jammy amd64 | |
| rake-job: ubuntu-jammy | |
| container-image: images:ubuntu/22.04 | |
| - label: Ubuntu Noble amd64 | |
| rake-job: ubuntu-noble | |
| container-image: images:ubuntu/24.04 | |
| - label: Ubuntu Resolute amd64 | |
| rake-job: ubuntu-resolute | |
| container-image: images:ubuntu/26.04 | |
| exclude: | |
| - label: Debian bookworm amd64 | |
| test: update-from-v4.sh | |
| - label: Debian bookworm amd64 | |
| test: update-from-v4.sh via-v5 | |
| - label: Debian bookworm amd64 | |
| test: update-to-next-version-with-backward-compat-for-v4.sh | |
| - label: Debian bookworm amd64 | |
| test: downgrade-to-v4.sh | |
| # Temporary disable test for trixie (not released yet) | |
| - label: Debian trixie amd64 | |
| test: update-from-v4.sh | |
| - label: Debian trixie amd64 | |
| test: update-from-v4.sh via-v5 | |
| - label: Debian trixie amd64 | |
| test: update-from-v5-lts.sh | |
| - label: Debian trixie amd64 | |
| test: downgrade-to-v4.sh | |
| - label: Debian trixie amd64 | |
| test: downgrade-to-v5-lts.sh | |
| - label: Debian trixie amd64 | |
| test: install-newly.sh v5 | |
| - label: Debian trixie amd64 | |
| test: install-newly.sh lts | |
| - label: Debian trixie amd64 | |
| test: update-to-next-version-with-backward-compat-for-v4.sh | |
| - label: Ubuntu Noble amd64 | |
| test: update-from-v4.sh | |
| - label: Ubuntu Noble amd64 | |
| test: update-from-v4.sh via-v5 | |
| - label: Ubuntu Noble amd64 | |
| test: update-to-next-version-with-backward-compat-for-v4.sh | |
| - label: Ubuntu Noble amd64 | |
| test: downgrade-to-v4.sh | |
| # Resolute | |
| - label: Ubuntu Resolute amd64 | |
| test: update-from-v4.sh | |
| - label: Ubuntu Resolute amd64 | |
| test: update-from-v4.sh via-v5 | |
| - label: Ubuntu Resolute amd64 | |
| test: update-from-v5-lts.sh | |
| - label: Ubuntu Resolute amd64 | |
| test: downgrade-to-v4.sh | |
| - label: Ubuntu Resolute amd64 | |
| test: downgrade-to-v4.sh | |
| - label: Ubuntu Resolute amd64 | |
| test: downgrade-to-v5-lts.sh | |
| - label: Ubuntu Resolute amd64 | |
| test: downgrade-to-v6-lts-tmpfiles.sh | |
| - label: Ubuntu Resolute amd64 | |
| test: update-to-next-version-with-backward-compat-for-v4.sh | |
| - label: Ubuntu Resolute amd64 | |
| test: install-newly.sh v6 | |
| - label: Ubuntu Resolute amd64 | |
| test: install-newly.sh lts | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 | |
| with: | |
| name: packages-${{ matrix.rake-job }} | |
| - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 | |
| with: | |
| name: v7-packages-${{ matrix.rake-job }} | |
| path: v7-test | |
| - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 | |
| with: | |
| name: packages-apt-source-${{ matrix.rake-job }} | |
| - name: Setup Incus | |
| run: ./fluent-package/test-tools/setup-incus.sh | |
| - name: Run Test ${{ matrix.test }} on ${{ matrix.container-image }} | |
| run: fluent-package/apt/systemd-test/test.sh ${{ matrix.container-image }} ${{ matrix.test }} | |
| confluent_test: | |
| name: Confluent Test | |
| runs-on: ubuntu-latest | |
| needs: [define-matrix, test] | |
| strategy: | |
| fail-fast: false | |
| matrix: ${{ fromJSON(needs.define-matrix.outputs.matrix) }} | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 | |
| with: | |
| name: packages-${{ matrix.rake-job }} | |
| 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 | |
| s3_test: | |
| name: S3 Test (${{ matrix.label }} s3.sh | |
| needs: [define-matrix, test] | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: ${{ fromJSON(needs.define-matrix.outputs.matrix) }} | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 | |
| with: | |
| name: packages-${{ matrix.rake-job }} | |
| - name: Setup Incus | |
| run: ./fluent-package/test-tools/setup-incus.sh | |
| - name: Setup localstack on host | |
| run: | | |
| docker run -d --name localstack -p 4566:4566 \ | |
| -e AWS_ACCESS_KEY_ID=localstack-test -e AWS_SECRET_ACCESS_KEY=localstack-test -e AWS_DEFAULT_REGION=ap-northeast-1 localstack/localstack:4.13.1 | |
| - name: Copy s3.conf | |
| run: cp fluent-package/test-tools/s3.conf fluent-package/apt/systemd-test | |
| - name: Ensure localstack availability from host | |
| run: sleep 10 && curl http://127.0.0.1:4566/_localstack/health | |
| - name: Run Test ${{matrix.test}} on ${{ matrix.test-incus-image }} | |
| run: fluent-package/apt/systemd-test/test.sh ${{ matrix.test-incus-image }} s3.sh | |
| elasticsearch_test: | |
| name: Elasticsearch Test ${{ matrix.label }} | |
| needs: [define-matrix, test] | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: ${{ fromJSON(needs.define-matrix.outputs.matrix) }} | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 | |
| with: | |
| name: packages-${{ matrix.rake-job }} | |
| - name: Setup Incus | |
| run: ./fluent-package/test-tools/setup-incus.sh | |
| - name: Setup Elasticsearch on host | |
| run: | | |
| docker run -d -p 9200:9200 -e "discovery.type=single-node" -e "xpack.security.enabled=false" docker.elastic.co/elasticsearch/elasticsearch:8.19.11 | |
| - name: Copy elasticsearch.conf | |
| run: cp fluent-package/test-tools/elasticsearch.conf fluent-package/apt/systemd-test | |
| - name: Ensure elasticsearch availability from host | |
| run: | | |
| until curl --silent "http://localhost:9200/_cluster/health" | jq --raw-output ".status // empty" | grep -E "yellow|green"; do | |
| sleep 5 | |
| done | |
| curl --silent "http://localhost:9200/_cat/indices?v" | |
| - name: Run Test elasticsearch.sh on ${{ matrix.test-incus-image }} | |
| run: fluent-package/apt/systemd-test/test.sh ${{ matrix.test-incus-image }} elasticsearch.sh | |
| opensearch_test: | |
| name: Opensearch Test ${{ matrix.label }} | |
| needs: [define-matrix, test] | |
| runs-on: ubuntu-latest | |
| strategy: | |
| fail-fast: false | |
| matrix: ${{ fromJSON(needs.define-matrix.outputs.matrix) }} | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - uses: actions/download-artifact@3e5f45b2cfb9172054b4087a40e8e0b5a5461e7c # v8.0.1 | |
| with: | |
| name: packages-${{ matrix.rake-job }} | |
| - name: Setup Incus | |
| run: ./fluent-package/test-tools/setup-incus.sh | |
| - name: Setup Opensearch on host | |
| run: | | |
| docker run -d -p 9200:9200 -p 9600:9600 \ | |
| -e "discovery.type=single-node" -e OPENSEARCH_INITIAL_ADMIN_PASSWORD=Passvv0rd@ opensearchproject/opensearch:2 | |
| - name: Copy opensearch.conf | |
| run: cp fluent-package/test-tools/opensearch.conf fluent-package/apt/systemd-test | |
| - name: Ensure Opensearch availability from host | |
| run: | | |
| until curl --silent --insecure --user "admin:Passvv0rd@" \ | |
| "https://localhost:9200/_cluster/health" | jq --raw-output ".status // empty" | grep -E "yellow|green"; do | |
| sleep 5 | |
| done | |
| curl --silent --insecure --user "admin:Passvv0rd@" "https://localhost:9200/_cat/indices?v" | |
| - name: Run Test opensearch.sh on ${{ matrix.test-incus-image }} | |
| run: fluent-package/apt/systemd-test/test.sh ${{ matrix.test-incus-image }} opensearch.sh |