Skip to content

Commit

Permalink
docs: improves the Contribution guidelines
Browse files Browse the repository at this point in the history
Signed-off-by: Andres <andres@Andres-Galante-DQV0F2QFT6.local>
  • Loading branch information
Andres authored and Andres committed Sep 22, 2023
1 parent df7d157 commit e9fbdc6
Showing 1 changed file with 47 additions and 13 deletions.
60 changes: 47 additions & 13 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,41 +1,75 @@
# Contributing to `cosign`
# Contributing to Cosign

The following document will detail the steps needed in order to ensure all of the correct processes are followed when contributing to `cosign`.
Thank you for considering contributing to Consign! We welcome any contributions, whether it's bug fixes, new features, or improvements to the existing codebase.

The following are needed to be completed before a Pull Request is raised:
## Your First Pull Request

- unit tests written, run, and passing
- lint run
- document generation run
Working on your first Pull Request? You can learn how from this free video series:

## Building
[How to Contribute to an Open Source Project on GitHub](https://egghead.io/courses/how-to-contribute-to-an-open-source-project-on-github)

To build `cosign` locally, run the following:
To help you get familiar with our contribution process, we have a list of [good first issues](https://github.com/sigstore/cosign/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22) which are relatively limited scope. This is a great place to get started!

Before working on an issue, please:

1. Check the comments to see if someone is already working on it.
1. If it's unassigned, comment that you're working on it to avoid duplication.

## Contribution Prerequisites

Before running Cosign, ensure that you have [Go](https://go.dev/doc/install) installed that includes `make`.

If you are using a mac, we highly recommend using [Homebrew](https://brew.sh/).

## Sending a Pull Request

The Cosign team is monitoring for contirbutions. We will review your pull request and either merge it, request changes to it, or close it with an explanation.

When you're ready to submit your contribution:

1. Fork [the repository](https://github.com/sigstore/cosign)
1. Navigate to the project folder
1. Create a branch from `main` following [Semantic Commit Messages](https://gist.github.com/joshbuchea/6f47e86d2510bce28f8e7f42ae84c716)
1. Follow the following instructions to guide you through the build, unit testing, linting, and documentation processes

### Building Cosign

To build cosign locally, run this command:

```shell
make cosign
```

## Running Unit Tests
### Running Unit Tests

To run the unit tests, run the following:
To run the unit tests, execute the following command:

```shell
make test
```

## Running Lint
**Make sure all tests pass** without any failures or errors.

### Running Lint

To run linting, run the following:
To run the linting checks, use the following command:

```shell
make lint
```
Address any linting warnings or errors before submitting your PR.

## Document Generation

To document generation, run the following:
If your changes require updates to project documentation, generate or update the documentation by running:

```shell
make docgen
```

Ensure that the documentation is up-to-date and reflects your changes accurately.


**Now you are ready!** When you send the PR make sure to sign the [Developer Certificate of Origin](https://github.com/src-d/guide/blob/master/developer-community/fix-DCO.md) and that all the build checks are green.

We are looking forward for your PRs and working together!

0 comments on commit e9fbdc6

Please sign in to comment.