Skip to content

Adds a shared pipeline for gems verify workflow #20001

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged

Conversation

cgranleese-r7
Copy link
Contributor

@cgranleese-r7 cgranleese-r7 commented Apr 3, 2025

This PR adds two new shared pipelines for testing gems. One for testing gems with Rails and another for without. The idea here was to now have one centralized point of truth for testing our gems.

The shared pipeline will support inputs for dependencies and testing commands e.g.

  build:
    uses: cgranleese-r7/metasploit-framework/.github/workflows/shared_gem_verify.yml@add-gem-verify-shared-pipeline
    with:
      dependencies: '["graphviz"]'
      test_commands: |
        bundle exec rake spec
        bundle exec rake cucumber
        bundle exec rake yard

Initially the corresponding gem PRs will point at these new pipelines on my @cgranleese-r7 repository for testing. Once this is landed, I will rebase those PRs.

Gems PRs:

Verification

  • Ensure code changes are sane
  • Verify gem PRs are passing and being tested as expected

@cgranleese-r7 cgranleese-r7 force-pushed the add-gem-verify-shared-pipeline branch 2 times, most recently from a68e8ea to cabf58f Compare April 4, 2025 12:02
@jmartin-tech
Copy link
Contributor

jmartin-tech commented Apr 5, 2025

Just an opinion here, this seems to create a circular dependency in the github actions where sub-gems repos are now dependent on the state of a repo that consumes them. It might be better to create a repo that holds shared actions or to have the action defined in a repo that does not have dependencies.

@cgranleese-r7 cgranleese-r7 force-pushed the add-gem-verify-shared-pipeline branch 10 times, most recently from a2b230c to ea63928 Compare April 8, 2025 10:15
@cgranleese-r7 cgranleese-r7 force-pushed the add-gem-verify-shared-pipeline branch 18 times, most recently from 86698c3 to afa30d0 Compare April 9, 2025 10:38
@adfoster-r7
Copy link
Contributor

@jmartin-tech Thanks! I also think having it in a centralized repo could also reduce the checkout time for faster CI runs by a bit, but we'll keep things simple as a first pass and can revisit it if there's any issues with future upgrade efforts 🤞

@cgranleese-r7 cgranleese-r7 force-pushed the add-gem-verify-shared-pipeline branch from afa30d0 to 81aa4be Compare April 9, 2025 11:06
@adfoster-r7 adfoster-r7 added the rn-no-release-notes no release notes label Apr 9, 2025
@adfoster-r7 adfoster-r7 merged commit bfe3597 into rapid7:master Apr 9, 2025
32 checks passed
@cgranleese-r7 cgranleese-r7 deleted the add-gem-verify-shared-pipeline branch April 9, 2025 11:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
rn-no-release-notes no release notes
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants