Skip to content

Commit 868bc04

Browse files
committed
chore: clean up CI config, contributing docs, and PR template
## What Simplify the release workflow trigger condition by collapsing redundant label checks, add Docker ecosystem to Dependabot monitoring, rewrite CONTRIBUTING.md with structured guidance, and add a pull request template. ## Why The release workflow condition enumerated every combination of the release label with major/minor/patch, which was logically equivalent to just checking for the release label. The contributing guide needed modernization with clearer sections for bug reports, enhancements, and PR standards. ## Notes - The simplified release condition is functionally identical — major/minor/patch labels alone still do NOT trigger a release - CONTRIBUTING.md now references GitHub Issues templates (bug_report.yml, feature_request.yml) that should exist in .github/ISSUE_TEMPLATE/ Signed-off-by: jmeridth <jmeridth@gmail.com>
1 parent 1a0a6fe commit 868bc04

4 files changed

Lines changed: 121 additions & 62 deletions

File tree

.github/dependabot.yaml

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
version: 2
22
updates:
3-
- package-ecosystem: 'github-actions'
4-
directory: '/'
3+
- package-ecosystem: "github-actions"
4+
directory: "/"
55
schedule:
6-
interval: 'daily'
7-
timezone: 'America/Chicago'
6+
interval: "daily"
7+
timezone: "America/Chicago"
88
commit-message:
99
prefix: "chore(deps)"
1010
labels: ["github_actions", "dependencies"]
@@ -14,3 +14,17 @@ updates:
1414
update-types:
1515
- "minor"
1616
- "patch"
17+
- package-ecosystem: "docker"
18+
directory: "/"
19+
schedule:
20+
interval: "weekly"
21+
cooldown:
22+
default-days: 7
23+
commit-message:
24+
prefix: "chore(deps)"
25+
labels: ["docker", "dependencies"]
26+
groups:
27+
dependencies:
28+
applies-to: version-updates
29+
update-types:
30+
- "minor"

.github/pull_request_template.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Pull Request
2+
3+
<!--
4+
PR title needs to be prefixed with a conventional commit type
5+
(build,chore,ci,docs,feat,fix,perf,refactor,revert,style,test)
6+
7+
It should also be brief and descriptive for a good changelog entry
8+
9+
examples: "feat: add new logger" or "fix: remove unused imports"
10+
-->
11+
12+
## Proposed Changes
13+
14+
<!-- Describe what the changes are and link to a GitHub Issue if one exists -->
15+
16+
## Readiness Checklist
17+
18+
### Author/Contributor
19+
20+
- [ ] If documentation is needed for this change, has that been included in this pull request

.github/workflows/release.yaml

Lines changed: 10 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -25,42 +25,17 @@ on:
2525
value: ${{ jobs.create_release.outputs.body }}
2626
jobs:
2727
create_release:
28-
# release if:
29-
# Manual deployment (workflow_dispatch) OR
30-
# The pull request was merged AND
31-
# It has at least one of these:
32-
# - reaking
33-
# - feature
34-
# - vuln
35-
# - release (with or without any of major / minor / patch labels)
36-
if: |
37-
(
38-
github.event_name == 'workflow_dispatch') ||
28+
# Release if:
29+
# - Manual deployment (workflow_dispatch), OR
30+
# - PR was merged with a breaking, feature, vuln, or release label
31+
# Note: major/minor/patch labels alone do NOT trigger a release
32+
if: >
33+
github.event_name == 'workflow_dispatch' ||
3934
(github.event.pull_request.merged == true &&
40-
((
41-
contains(github.event.pull_request.labels.*.name, 'breaking') ||
42-
contains(github.event.pull_request.labels.*.name, 'feature') ||
43-
contains(github.event.pull_request.labels.*.name, 'vuln')
44-
) ||
45-
(
46-
contains(github.event.pull_request.labels.*.name, 'release') &&
47-
!(
48-
contains(github.event.pull_request.labels.*.name, 'major') ||
49-
contains(github.event.pull_request.labels.*.name, 'minor') ||
50-
contains(github.event.pull_request.labels.*.name, 'patch')
51-
)) ||
52-
(
53-
contains(github.event.pull_request.labels.*.name, 'release') &&
54-
contains(github.event.pull_request.labels.*.name, 'major')
55-
) ||
56-
(
57-
contains(github.event.pull_request.labels.*.name, 'release') &&
58-
contains(github.event.pull_request.labels.*.name, 'minor')
59-
) ||
60-
(
61-
contains(github.event.pull_request.labels.*.name, 'release') &&
62-
contains(github.event.pull_request.labels.*.name, 'patch')
63-
)))
35+
(contains(github.event.pull_request.labels.*.name, 'breaking') ||
36+
contains(github.event.pull_request.labels.*.name, 'feature') ||
37+
contains(github.event.pull_request.labels.*.name, 'vuln') ||
38+
contains(github.event.pull_request.labels.*.name, 'release')))
6439
outputs:
6540
full-tag: ${{ steps.release-drafter.outputs.tag_name }}
6641
short-tag: ${{ steps.get_tag_name.outputs.SHORT_TAG }}

CONTRIBUTING.md

Lines changed: 73 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,83 @@
1-
## Contributing
1+
<!-- markdownlint-disable MD013 -->
2+
<!-- omit in toc -->
23

3-
[fork]: https://github.com/github-community-projects/ospo-reusable-workflows/fork
4-
[pr]: https://github.com/github-community-projects/ospo-reusable-workflows/compare
4+
# Contributing to ospo-reusable-workflows
55

6-
Hi there! We're thrilled that you'd like to contribute to this project. Your help is essential for keeping it great.
6+
First off, thanks for taking the time to contribute! :heart:
77

8-
Contributions to this project are [released](https://help.github.com/articles/github-terms-of-service/#6-contributions-under-repository-license) to the public under the [project's open source license](LICENSE).
8+
All types of contributions are encouraged and valued. See the [Table of Contents](#table-of-contents) for different ways to help and details about how this project handles them. Please make sure to read the relevant section before making your contribution. It will make it a lot easier for us project owners and smooth out the experience for all involved. The team looks forward to your contributions. :tada:
99

10-
Please note that this project is released with a [Contributor Code of Conduct](CODE_OF_CONDUCT.md). By participating in this project you agree to abide by its terms.
10+
<!-- omit in toc -->
1111

12-
## Submitting a pull request
12+
## Table of Contents
1313

14-
1. [Fork][fork] and clone the repository
15-
1. Configure and install the dependencies: `script/bootstrap`
16-
1. Make sure the tests pass on your machine: `rake`
17-
1. Create a new branch: `git checkout -b my-branch-name`
18-
1. Make your change, add tests, and make sure the tests still pass
19-
1. Push to your fork and [submit a pull request][pr]
20-
1. Pat yourself on the back and wait for your pull request to be reviewed and merged.
14+
- [I Have a Question](#i-have-a-question)
15+
- [I Want To Contribute](#i-want-to-contribute)
16+
- [Reporting Bugs](#reporting-bugs)
17+
- [Suggesting Enhancements](#suggesting-enhancements)
18+
- [Releases](#releases)
2119

22-
Here are a few things you can do that will increase the likelihood of your pull request being accepted:
20+
## I Have a Question
2321

24-
- Follow the [style guide][style].
25-
- Write tests.
26-
- Keep your change as focused as possible. If there are multiple changes you would like to make that are not dependent upon each other, consider submitting them as separate pull requests.
27-
- Write a [good commit message](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html).
22+
Before you ask a question, it is best to search for existing [Issues](https://github.com/github-community-projects/ospo-reusable-workflows/issues) that might help you. In case you have found a suitable issue and still need clarification, you can write your question in this issue.
2823

29-
## Resources
24+
If you then still feel the need to ask a question and need clarification, we recommend the following:
3025

31-
- [How to Contribute to Open Source](https://opensource.guide/how-to-contribute/)
32-
- [Using Pull Requests](https://help.github.com/articles/about-pull-requests/)
33-
- [GitHub Help](https://help.github.com)
26+
- Open an [Issue](https://github.com/github-community-projects/ospo-reusable-workflows/issues/new).
27+
- Provide as much context as you can about what you're running into.
28+
- Provide project and platform versions (Node.js, npm, etc), depending on what seems relevant.
29+
30+
We will then take care of the issue as soon as possible.
31+
32+
## I Want To Contribute
33+
34+
### Legal Notice <!-- omit in toc -->
35+
36+
When contributing to this project, you must agree that you have authored 100% of the content, that you have the necessary rights to the content and that the content you contribute may be provided under the project license.
37+
38+
## Reporting Bugs
39+
40+
<!-- omit in toc -->
41+
42+
### Before Submitting a Bug Report
43+
44+
A good bug report shouldn't leave others needing to chase you up for more information. Therefore, we ask you to investigate carefully, collect information and describe the issue in detail in your report. Please complete the following steps in advance to help us fix any potential bug as fast as possible.
45+
46+
- Make sure that you are using the latest version.
47+
- Determine if your bug is really a bug and not an error on your side e.g. using incompatible environment components/versions (Make sure that you have read the documentation. If you are looking for support, you might want to check [this section](#i-have-a-question)).
48+
- To see if other users have experienced (and potentially already solved) the same issue you are having, check if there is not already a bug report existing for your bug or error in the [bug tracker](https://github.com/github-community-projects/ospo-reusable-workflows/issues).
49+
- Collect information about the bug:
50+
- Stack trace (Traceback)
51+
- OS, Platform and Version (Windows, Linux, macOS, x86, ARM)
52+
- Version of the interpreter, compiler, SDK, runtime environment, package manager, depending on what seems relevant.
53+
- Possibly your input and the output
54+
- Can you reliably reproduce the issue? And can you also reproduce it with older versions?
55+
56+
<!-- omit in toc -->
57+
58+
### How Do I Submit a Good Bug Report?
59+
60+
Please submit a bug report using our [GitHub Issues template](https://github.com/github-community-projects/ospo-reusable-workflows/issues/new?template=bug_report.yml).
61+
62+
## Suggesting Enhancements
63+
64+
This section guides you through submitting an enhancement suggestion for ospo-reusable-workflows, **including completely new features and minor improvements to existing functionality**. Following these guidelines will help maintainers and the community to understand your suggestion and find related suggestions.
65+
66+
<!-- omit in toc -->
67+
68+
### Before Submitting an Enhancement
69+
70+
- Make sure that you are using the latest version.
71+
- Read the documentation carefully and find out if the functionality is already covered, maybe by an individual configuration.
72+
- Perform a [search](https://github.com/github-community-projects/ospo-reusable-workflows/issues) to see if the enhancement has already been suggested. If it has, add a comment to the existing issue instead of opening a new one.
73+
- Find out whether your idea fits with the scope and aims of the project. It's up to you to make a strong case to convince the project's developers of the merits of this feature or to develop the feature yourself and contribute it to the project.
74+
75+
<!-- omit in toc -->
76+
77+
### How Do I Submit a Good Enhancement Suggestion?
78+
79+
Please submit an enhancement suggestion using our [GitHub Issues template](https://github.com/github-community-projects/ospo-reusable-workflows/issues/new?template=feature_request.yml).
80+
81+
### Pull Request Standards
82+
83+
We are using [Conventional Commits](https://www.conventionalcommits.org/en/v1.0.0/) to standardize our pull request titles. This allows us to automatically generate labels and changelogs and follow semantic versioning. Please follow the commit message format when creating a pull request. What pull request title prefixes are expected are in the [pull_request_template.md](.github/pull_request_template.md) that is shown when creating a pull request.

0 commit comments

Comments
 (0)