You can view and edit the source code by cloning this repository:
git clone https://github.com/open-telemetry/opentelemetry-go-build-tools.git
Run make test
to run the tests instead of go test
.
There are some generated files checked into the repo. To make sure
that the generated files are up-to-date, run make
(or make precommit
- the precommit
target is the default).
The precommit
target also fixes the formatting of the code and
checks the status of the go module files.
If after running make precommit
the output of git status
contains
nothing to commit, working tree clean
then it means that everything
is up-to-date and properly formatted.
Everyone is welcome to contribute code to opentelemetry-go-build-tools
via
GitHub pull requests (PRs).
Open a pull request against the main opentelemetry-go-build-tools
repo.
Be sure to add the pull request ID to the entry you added to CHANGELOG.md
.
- If the PR is not ready for review, please put
[WIP]
in the title, tag it aswork-in-progress
, or mark it asdraft
. - Make sure CLA is signed and CI is clear.
A PR is considered to be ready to merge when:
-
It has received two approvals from Collaborators/Maintainers (at different companies). This is not enforced through technical means and a PR may be ready to merge with a single approval if the change and its approach have been discussed and consensus reached.
-
Feedback has been addressed.
-
Any substantive changes to your PR will require that you clear any prior Approval reviews, this includes changes resulting from other feedback. Unless the approver explicitly stated that their approval will persist across changes it should be assumed that the PR needs their review again. Other project members (e.g. approvers, maintainers) can help with this if there are any questions or if you forget to clear reviews.
-
It has been open for review for at least one working day. This gives people reasonable time to review.
-
Trivial changes (typo, cosmetic, doc, etc.) do not have to wait for one day and may be merged with a single Maintainer's approval.
-
CHANGELOG.md
file in this repo is autogenerated from.yaml
files in the./.chloggen
directory.Your pull-request should add a new .yaml file to this directory. The name of your file must be unique since the last release.
During the release process, all
./chloggen/*.yaml
files are transcribed intoCHANGELOG.md
and then deleted.Recommended Steps
- Create an entry file using
make chlog-new
. This generates a file based on your current branch (e.g../.chloggen/my-branch.yaml
) - Fill in all fields in the new file
- Run
make chlog-validate
to ensure the new file is valid - Commit and push the file
Alternately, copy
./.chloggen/TEMPLATE.yaml
, or just create your file from scratch. - Create an entry file using
-
README.md
has been updated if necessary. -
Urgent fix can take exception as long as it has been actively communicated.
Any Maintainer can merge the PR once it is ready to merge.
See the community membership document in OpenTelemetry community repo.