Skip to content

Migrate CI from Travis to GitHub Actions (main branch) - #63

Open
donoghuc with Copilot wants to merge 4 commits into
mainfrom
copilot/migrate-ci-from-travis-to-github-actions
Open

Migrate CI from Travis to GitHub Actions (main branch)#63
donoghuc with Copilot wants to merge 4 commits into
mainfrom
copilot/migrate-ci-from-travis-to-github-actions

Conversation

Copilot AI commented Jul 6, 2026

Copy link
Copy Markdown

This PR migrates CI for the main branch from Travis to GitHub Actions while preserving Travis test coverage parity. It replaces Travis configuration with a reusable GHA unit-test workflow and updates repository status badges accordingly.

  • Scope / branch

    • Targets main only (default branch migration path).
  • Workflow migration

    • Added: .github/workflows/unit-tests.yml
    • Uses reusable workflow: logstash-plugins/.ci/.github/workflows/unit-tests.yml@1.x
    • Includes required trigger shape (push, pull_request, schedule, workflow_dispatch), scheduled branch fanout (branch: [main]), secrets: inherit, and timeout-minutes: 60.
    • Added explicit token permissions:
      permissions:
        contents: read
  • Resolved Travis → GHA parity map

    • Resolved .travis.yml imports: travis/defaults.yml, travis/matrix.yml, travis/exec.yml from .ci@1.x.
    • Travis effective matrix entries mapped to GHA Unit Tests job matrix:
    Travis env combination GHA coverage
    ELASTIC_STACK_VERSION=9.current DOCKER_ENV=dockerjdk21.env unit-tests.yml → reusable unit-tests matrix
    ELASTIC_STACK_VERSION=9.previous DOCKER_ENV=dockerjdk21.env same
    ELASTIC_STACK_VERSION=8.current DOCKER_ENV=dockerjdk21.env same
    SNAPSHOT=true ELASTIC_STACK_VERSION=main DOCKER_ENV=dockerjdk21.env same
    SNAPSHOT=true ELASTIC_STACK_VERSION=9.current DOCKER_ENV=dockerjdk21.env same
    SNAPSHOT=true ELASTIC_STACK_VERSION=9.previous DOCKER_ENV=dockerjdk21.env same
    SNAPSHOT=true ELASTIC_STACK_VERSION=8.current DOCKER_ENV=dockerjdk21.env same
    • No resolved INTEGRATION=true or SECURE_INTEGRATION=true entries; no plugin-local performance trigger (HAS_PERFORMANCE_TESTS=1). Therefore no integration/secure/performance workflows were added.
  • Travis env variable reconciliation

    • Variables introduced by resolved Travis matrix: ELASTIC_STACK_VERSION, DOCKER_ENV, SNAPSHOT.
    • These are re-derived by the reusable workflow/setup path.
    • Vendored .ci/ references only JRUBY_OPTS; no Travis-only variable dependency requiring workflow env injection.
  • CI harness / vendored .ci/

    • Reviewed .ci/ (.ci/run.sh only).
    • No stale docker-compose v1 invocations and no vendored file changes required.
  • README badge migration

    • Replaced Travis badge with GitHub Actions Unit Tests badge for main:
      [![Unit Tests](https://github.com/logstash-plugins/logstash-input-jms/actions/workflows/unit-tests.yml/badge.svg?branch=main)](https://github.com/logstash-plugins/logstash-input-jms/actions/workflows/unit-tests.yml)
  • Travis removal

    • Deleted .travis.yml.

Copilot AI changed the title [WIP] Migrate CI from Travis to GitHub Actions Migrate CI from Travis to GitHub Actions (main branch) Jul 6, 2026
Copilot AI requested a review from donoghuc July 6, 2026 20:37
Normalize the use of Integer values regardless of jruby versions
@donoghuc

donoghuc commented Aug 7, 2026

Copy link
Copy Markdown

/pr_prepare release:patch

  • Fix NameError: uninitialized constant Fixnum when reading a JMS MapMessage on Logstash 9.4+
    • The jruby-jms gem references the Fixnum constant, which Ruby removed in 3.2 (shipped by the JRuby in Logstash 9.4+). This raised a NameError while decoding a JMS MapMessage. Alias the removed Fixnum/Bignum constants to Integer before requiring jms.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Migrate CI from Travis to GitHub Actions (main branch)

2 participants