[GITHUB] Automatic Changelog Generator #523
Closed
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.
Change list
Additional Notes
Changelog standard
The changelog standard is based around PRs, to lessen the requirements for writing commit messages, and to not have a log file for each commit. When a PR is opened the required sections is already in the PR template. These fields are used for generated the bare minimum of the changelog file. There are optional fields that can be filled if applicable or deleted if unused. Lastly there is a field for writing stuff unrelated to the changelog file. The generated files is based on GeneralsGamePatch changelog files.
Flow
flowchart TD A[User Opens PR] --> B[Automated Linting] B --> C{Linting Passed?} C -->|Yes| D[Manual Review] C -->|No| E[Comment Errors] E --> L[Update PR] L --> B D --> F{Approved?} F -->|Yes| G[Merge PR] F -->|No| H[Request Changes] H --> L G --> I[Generate Changelog] I --> J[Commit to Repo]The Linter is called by GitHub actions to check for errors. If there are errors, the action will fail and display the errors, if none then the action passes.
Then when the PR is ready to merge, GitHub actions will call the Changelog generator and generate a changelog file on the PR. The generated file has the naming format:
$pr_number + "_" +$clean_title.yaml.Supported Fields
Change listAuthor(s)Fixes Issue(s)Updates PR(s)Additional NotesExamples