Add rubocop and GitHub Actions to plugin generator #51822
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation / Background
As I was working on my RailsConf 2024 talk, I realized the Rails plugin generator had not been updated to include the new rubocop and GitHub Actions files that ship with the app generator. These are particularly useful for plugin developers to make it easier to get started.
I spoke briefly with @rafaelfranca about making these additions which he agreed was a good idea. I also asked about brakeman, but he said that didn't make sense.
Detail
This Pull Request updates the plugin generator to include templates for GitHub Actions and rubocop. It also updated a couple of files to ensure they pass the rubocop linting.
I have kept these templates separate from the app templates as they are likely to diverge slightly over time.
Additional information
I decided not to include any functionality for testing CI against multiple Rails versions, but this could be added in the future.
Same for testing multiple Ruby versions. This could be added later.
Checklist
Before submitting the PR make sure the following are checked:
[Fix #issue-number]