From ba809e7eaf2f50fd688c5fa20912602dfe32c928 Mon Sep 17 00:00:00 2001 From: Kentaro Hayashi Date: Thu, 6 Feb 2025 18:08:11 +0900 Subject: [PATCH 1/3] github: use latest actions Signed-off-by: Kentaro Hayashi --- .github/workflows/ci.yml | 22 +++++++++++----------- .github/workflows/pr.yml | 26 +++++++++++++------------- 2 files changed, 24 insertions(+), 24 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f0fbe11..562da94 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -13,11 +13,11 @@ jobs: uses: actions/checkout@v3 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v3 - name: Build and push id: docker_build - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v6 with: file: test/docker/Dockerfile.ubuntu tdagent-deb: @@ -27,46 +27,46 @@ jobs: uses: actions/checkout@v3 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v3 - name: Build and push id: docker_build - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v6 with: file: test/docker/Dockerfile.tdagent-ubuntu tdagent-rpm: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v3 - name: Build and push id: docker_build - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v6 with: file: test/docker/Dockerfile.tdagent-almalinux ruby32: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v3 - name: Build and push id: docker_build - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v6 with: file: test/docker/Dockerfile.ruby32 rubocop: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + uses: actions/checkout@v4 - uses: ruby/setup-ruby@v1 with: diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index 094c7f9..2b467a9 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -8,63 +8,63 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v3 - name: Build and push id: docker_build - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v6 with: file: test/docker/Dockerfile.ubuntu tdagent-deb: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v3 - name: Build and push id: docker_build - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v6 with: file: test/docker/Dockerfile.tdagent-ubuntu tdagent-rpm: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v3 - name: Build and push id: docker_build - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v6 with: file: test/docker/Dockerfile.tdagent-almalinux ruby32: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + uses: actions/checkout@v4 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@v3 - name: Build and push id: docker_build - uses: docker/build-push-action@v2 + uses: docker/build-push-action@v6 with: file: test/docker/Dockerfile.ruby32 rubocop: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v3 + uses: actions/checkout@v4 - uses: ruby/setup-ruby@v1 with: From 8d0c17fa2a46812a1e71f8943b0687809825f2b1 Mon Sep 17 00:00:00 2001 From: Kentaro Hayashi Date: Thu, 6 Feb 2025 18:10:06 +0900 Subject: [PATCH 2/3] github: add Ruby 3.4 for CI Signed-off-by: Kentaro Hayashi --- test/docker/Dockerfile.ruby34 | 7 +++++++ 1 file changed, 7 insertions(+) create mode 100644 test/docker/Dockerfile.ruby34 diff --git a/test/docker/Dockerfile.ruby34 b/test/docker/Dockerfile.ruby34 new file mode 100644 index 0000000..606aa48 --- /dev/null +++ b/test/docker/Dockerfile.ruby34 @@ -0,0 +1,7 @@ +FROM ruby:3.4 + +WORKDIR /usr/local/src + +COPY . . +RUN bundle install -j4 -r3 +RUN bundle exec rake test TESTOPTS="-v" From acd2014a6b13d48a3a4e263d8fcf46cc3df8b4f6 Mon Sep 17 00:00:00 2001 From: Kentaro Hayashi Date: Thu, 6 Feb 2025 18:14:58 +0900 Subject: [PATCH 3/3] github: simplify with matrix Signed-off-by: Kentaro Hayashi --- .github/workflows/ci.yml | 69 +++++++++++----------------------------- .github/workflows/pr.yml | 60 ++++++++++------------------------ 2 files changed, 35 insertions(+), 94 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 562da94..62cab20 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -6,62 +6,31 @@ on: - master jobs: - ubuntu: + docker: + name: ${{ matrix.target.env }} + strategy: + matrix: + target: + - env: ubuntu + dockerfile: Dockerfile.ubuntu + - env: td-agent-deb + dockerfile: Dockerfile.tdagent-ubuntu + - env: td-agent-rpm + dockerfile: Dockerfile.tdagent-almalinux + - env: ruby32 + dockerfile: Dockerfile.ruby32 + - env: ruby34 + dockerfile: Dockerfile.ruby34 runs-on: ubuntu-latest steps: - - - uses: actions/checkout@v3 - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 - - - name: Build and push - id: docker_build - uses: docker/build-push-action@v6 - with: - file: test/docker/Dockerfile.ubuntu - tdagent-deb: - runs-on: ubuntu-latest - steps: - - - uses: actions/checkout@v3 - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 - - - name: Build and push - id: docker_build - uses: docker/build-push-action@v6 - with: - file: test/docker/Dockerfile.tdagent-ubuntu - tdagent-rpm: - runs-on: ubuntu-latest - steps: - - - uses: actions/checkout@v4 - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 - - - name: Build and push - id: docker_build - uses: docker/build-push-action@v6 - with: - file: test/docker/Dockerfile.tdagent-almalinux - ruby32: - runs-on: ubuntu-latest - steps: - - - uses: actions/checkout@v4 - - - name: Set up Docker Buildx + - uses: actions/checkout@v3 + - name: Set up Docker Buildx uses: docker/setup-buildx-action@v3 - - - name: Build and push + - name: Build and push id: docker_build uses: docker/build-push-action@v6 with: - file: test/docker/Dockerfile.ruby32 + file: test/docker/${{ matrix.target.dockerfile }} rubocop: runs-on: ubuntu-latest steps: diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml index 2b467a9..8c19f65 100644 --- a/.github/workflows/pr.yml +++ b/.github/workflows/pr.yml @@ -4,7 +4,21 @@ on: pull_request: jobs: - ubuntu: + docker: + name: ${{ matrix.target.env }} + strategy: + matrix: + target: + - env: ubuntu + dockerfile: Dockerfile.ubuntu + - env: td-agent-deb + dockerfile: Dockerfile.tdagent-ubuntu + - env: td-agent-rpm + dockerfile: Dockerfile.tdagent-almalinux + - env: ruby32 + dockerfile: Dockerfile.ruby32 + - env: ruby34 + dockerfile: Dockerfile.ruby34 runs-on: ubuntu-latest steps: - @@ -17,49 +31,7 @@ jobs: id: docker_build uses: docker/build-push-action@v6 with: - file: test/docker/Dockerfile.ubuntu - tdagent-deb: - runs-on: ubuntu-latest - steps: - - - uses: actions/checkout@v4 - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 - - - name: Build and push - id: docker_build - uses: docker/build-push-action@v6 - with: - file: test/docker/Dockerfile.tdagent-ubuntu - tdagent-rpm: - runs-on: ubuntu-latest - steps: - - - uses: actions/checkout@v4 - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 - - - name: Build and push - id: docker_build - uses: docker/build-push-action@v6 - with: - file: test/docker/Dockerfile.tdagent-almalinux - ruby32: - runs-on: ubuntu-latest - steps: - - - uses: actions/checkout@v4 - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 - - - name: Build and push - id: docker_build - uses: docker/build-push-action@v6 - with: - file: test/docker/Dockerfile.ruby32 + file: test/docker/${{ matrix.target.dockerfile }} rubocop: runs-on: ubuntu-latest steps: