1- # Contributing to ` ni/python-actions `
1+ # Contributing to ` ni/python-actions `
22
33Contributions to ` ni/python-actions ` are welcome from all!
44
@@ -19,15 +19,65 @@ this repository.
1919
2020See [ GitHub's official documentation] ( https://help.github.com/articles/using-pull-requests/ ) for more details.
2121
22- # Getting Started
23-
24- - TODO: include build steps here.
25-
26- # Testing
27-
28- - TODO: include testing steps here.
29-
30- # Developer Certificate of Origin (DCO)
22+ ## Getting Started
23+
24+ To contribute to this project, it is recommended that you follow these steps:
25+
26+ - Fork the repository on GitHub.
27+ - Run the PR workflow on your fork of the repository. At this point, if any tests fail, do not begin
28+ development. Try to investigate these failures. If you're unable to do so, report an issue through
29+ our GitHub issues page.
30+ - Write new tests that demonstrate your bug or feature. Ensure that these new tests fail.
31+ - Make your change.
32+ - Run all the regression tests again (including the tests you just added), and confirm that they all
33+ pass.
34+ - Send a GitHub Pull Request to the main repository's ` main ` branch. GitHub Pull Requests are the
35+ expected method of code collaboration on this project.
36+
37+ ## Testing
38+
39+ To run the ` ni/python-actions ` regression tests, run the following command:
40+
41+ ``` bash
42+ gh workflow run PR.yml --ref users/me/my-dev-branch
43+ ```
44+
45+ View the workflow status and logs using the GitHub web UI.
46+
47+ ## Publishing a Release
48+
49+ Maintainers can publish ` ni/python-actions ` by creating a GitHub release in the ` ni/python-actions ` repo.
50+ Here are the steps to follow to publish the package:
51+
52+ - From the main GitHub repo page, select "Create a new release".
53+ - On the "New Release" page, create a new tag using the "Select Tag" drop down. The tag must be the
54+ letter 'v' followed the version number. Example: v0.1.2.
55+ - Enter a title in the "Release title" field. The title should contain the repo name and version
56+ tag. For example: ni/python-actions v0.1.2.
57+ - Click "Generate release notes" and edit the release notes.
58+ - Delete entries for PRs that do not affect users, such as "chore(deps):" and "fix(deps):" PRs.
59+ However, consider including significant dependency updates, such as major version updates.
60+ - Consider grouping related entries.
61+ - Reformat entries to be more readable. For example, change "Blah blah by so-and-so in \# 123" to
62+ "Blah blah (\# 123)".
63+ - If this is a pre-release release, check the "Set as a pre-release" checkbox.
64+ - Click "Publish release".
65+ - This repository does not have a publish workflow yet, so you must manually update the ` v{major} `
66+ and ` v{major}.{minor} ` tags:
67+
68+ ``` bash
69+ git checkout v0.1.2
70+ git tag -f v0.1
71+ git tag -f v0
72+ git push -f origin v0.1
73+ git push -f origin v0
74+ ```
75+
76+ > [ !NOTE]
77+ > This GitHub project has immutable releases enabled. Once you publish a release, you can only edit
78+ > the title and description. You cannot modify the full release tag (e.g. ` v0.1.2 ` ).
79+
80+ ## Developer Certificate of Origin (DCO)
3181
3282 Developer's Certificate of Origin 1.1
3383
0 commit comments