From 510dce369ed2f699d0ebfe80a62482de77806487 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 9 Jul 2026 22:26:59 +0000 Subject: [PATCH 1/3] Initial plan From 7360a60618387504fbb2879447400e0cf1837316 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 9 Jul 2026 22:28:48 +0000 Subject: [PATCH 2/3] Migrate CI from Travis to GitHub Actions for main --- .github/workflows/unit-tests.yml | 41 ++++++++++++++++++++++++++++++++ .travis.yml | 2 -- README.md | 2 +- 3 files changed, 42 insertions(+), 3 deletions(-) create mode 100644 .github/workflows/unit-tests.yml delete mode 100644 .travis.yml diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml new file mode 100644 index 0000000..a83caab --- /dev/null +++ b/.github/workflows/unit-tests.yml @@ -0,0 +1,41 @@ +name: Unit Tests + +on: + push: + branches: [main] + pull_request: + branches: [main] + schedule: + # Daily run that fans out across every active branch via the matrix + # job below. GitHub only fires `schedule:` from the workflow file on + # the default branch (main); copies of this file on + # non-default branches keep the block for symmetry but it is dormant + # there. + - cron: '0 8 * * *' + workflow_dispatch: + +jobs: + tests: + if: github.event_name != 'schedule' + uses: logstash-plugins/.ci/.github/workflows/unit-tests.yml@1.x + # Forward org/repo secrets (e.g. SLACK_BOT_TOKEN used by the reusable's + # failure-notification step). The reusable does not declare a + # workflow_call.secrets block, so `inherit` is required. + secrets: inherit + concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: ${{ github.ref != 'refs/heads/main' }} + with: + timeout-minutes: 60 + + scheduled: + if: github.event_name == 'schedule' + strategy: + fail-fast: false + matrix: + branch: [main] + uses: logstash-plugins/.ci/.github/workflows/unit-tests.yml@1.x + secrets: inherit + with: + ref: ${{ matrix.branch }} + timeout-minutes: 60 diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index a50fc73..0000000 --- a/.travis.yml +++ /dev/null @@ -1,2 +0,0 @@ -import: -- logstash-plugins/.ci:travis/travis.yml@1.x \ No newline at end of file diff --git a/README.md b/README.md index 6b9ba52..faad473 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,6 @@ # Logstash Plugin -[![Travis Build Status](https://travis-ci.com/logstash-plugins/logstash-filter-ruby.svg)](https://travis-ci.com/logstash-plugins/logstash-filter-ruby) +[![Unit Tests](https://github.com/logstash-plugins/logstash-filter-ruby/actions/workflows/unit-tests.yml/badge.svg?branch=main)](https://github.com/logstash-plugins/logstash-filter-ruby/actions/workflows/unit-tests.yml) This is a plugin for [Logstash](https://github.com/elastic/logstash). From 92d08f3696c6c93c8aa6a3757e9ae04581c19733 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Thu, 9 Jul 2026 22:29:39 +0000 Subject: [PATCH 3/3] Harden unit test workflow token permissions --- .github/workflows/unit-tests.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/unit-tests.yml b/.github/workflows/unit-tests.yml index a83caab..b8bd51a 100644 --- a/.github/workflows/unit-tests.yml +++ b/.github/workflows/unit-tests.yml @@ -14,6 +14,9 @@ on: - cron: '0 8 * * *' workflow_dispatch: +permissions: + contents: read + jobs: tests: if: github.event_name != 'schedule'