Skip to content

Commit

Permalink
docs: contributing
Browse files Browse the repository at this point in the history
Signed-off-by: Anton Whalley <[email protected]>
  • Loading branch information
No9 committed Jan 30, 2023
1 parent 61784f7 commit b6d4aa0
Show file tree
Hide file tree
Showing 3 changed files with 131 additions and 5 deletions.
6 changes: 3 additions & 3 deletions .github/workflows/validate.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:
- uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: 1.67.0
toolchain: stable
override: true
- uses: actions-rs/cargo@v1
with:
Expand All @@ -31,7 +31,7 @@ jobs:
- uses: actions/checkout@v2
- uses: actions-rs/toolchain@v1
with:
toolchain: 1.67.0
toolchain: stable
override: true
components: rustfmt
- uses: actions-rs/cargo@v1
Expand All @@ -46,7 +46,7 @@ jobs:
# - uses: actions/checkout@v2
# - uses: actions-rs/toolchain@v1
# with:
# toolchain: 1.67.0
# toolchain: stable
# override: true
# components: clippy
# - uses: actions-rs/clippy-check@v1
Expand Down
125 changes: 125 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
# Contributing

Our project welcomes external contributions. If you have an itch, please feel
free to scratch it.

To contribute minor code or documentation, please submit a [pull request](https://github.com/knawd/deployer/pulls).

A good way to familiarize yourself with the codebase and contribution process is
to look for and tackle low-hanging fruit in the [issue tracker](https://github.com/knawd/deployer/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22).
Before embarking on a more ambitious contribution, please quickly [get in touch](#communication) with us.

**Note: We appreciate your effort, and want to avoid a situation where a contribution
requires extensive rework (by you or by us), sits in backlog for a long time, or
cannot be accepted at all!**

## Setup

This project is based on Rust - The easiest way to get setup is to us the [rustup install system](https://rustup.rs/).

To perform an end to end integration test you may want to use a [free cluster](https://cloud.ibm.com/docs/containers?topic=containers-getting-started#clusters_gs) on IBM Cloud.

Instructions on how to install are available in the main [README.md](https://github.com/knawd/deployer#installing-the-chart)

## Testing
PR's that modify the codebase will be expected to run against a cluster using the `integration/run.sh` before being accepted.

## Coding style guidelines
Code contributions should be PR'd with `cargo fmt` ran


## Developer Certificate of Origin

This project used the [Developer Certificate of Origin](https://developercertificate.org/). It requires all commit messages to contain the Signed-off-by line with an email address that matches the commit author.

```
Developer Certificate of Origin
Version 1.1
Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.
Developer's Certificate of Origin 1.1
By making a contribution to this project, I certify that:
(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or
(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or
(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.
(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.
```

In order to comply with the DCO please sign every commit as follows:
```
$ git commit -s -m 'This is my commit message'
```
or

```
This is my commit message
Signed-off-by: Random J Developer <[email protected]>
```

## Releases

Declaring formal releases remains the prerogative of the project maintainer(s).

### Proposing new features

#### First time contributors

If you would like to implement a new feature, please [raise an issue](https://github.com/knawd/deployer/issues)
before sending a pull request so the feature can be discussed. This is to avoid
you wasting your valuable time working on a feature that the project developers
are not interested in accepting into the code base.

#### On-boarded collaborators

1. **No `--force` pushes** or modifying the Git history in any way.
1. **Non-main branches** ought to be used for ongoing work.
1. **External API changes and significant modifications** ought to be subject to an **internal pull-request** to solicit feedback from other contributors.
1. Internal pull-requests to solicit feedback are *encouraged* for any other non-trivial contribution but left to the discretion of the contributor.

### Fixing bugs

If you would like to fix a bug, please feel free to open a [PR directly for a small change](https://github.com/knawd/deployer/pulls).
If you think the fix will be high impact then consider [opening an issue](https://github.com/knawd/deployer/issues) before sending a
pull request so it can be tracked.

### Merge approval

For first time PRs the project maintainers use LGTM (Looks Good To Me) in comments on the code
review to indicate acceptance.

For a list of the maintainers, see the [CONTRIBUTORS.md](CONTRIBUTORS.md) page.


# Legal conditions

- Any contributions (code, information etc) submitted will be subject to the same [license](LICENSE) as the rest of the code.
No new restrictions/conditions are permitted.
- As a contributor, you MUST have the legal right to grant permission for your contribution to be used under these conditions.

## Communication
Please use the [issue list] to keep communication transparent (https://github.com/knawd/deployer/issues)
5 changes: 3 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
# deployer

Deploy a WASM enabled crun into kubernetes. See https://knawd.dev for more information.
Deploy a WASM enabled crun into kubernetes to enable running WASM libraries in container infrastructure.

See https://knawd.dev for more information.


[![build status](https://github.com/knawd/deployer/workflows/CI/badge.svg)](https://github.com/knawd/deployer/actions)
[![Docker Repository on Quay](https://quay.io/repository/knawd/deployer/status "Docker Repository on Quay")](https://quay.io/repository/knawd/deployer)
[![OpenSSF Best Practices](https://bestpractices.coreinfrastructure.org/projects/6966/badge)](https://bestpractices.coreinfrastructure.org/projects/6966)
[![Artifact Hub](https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/knawd-deployer)](https://artifacthub.io/packages/search?repo=knawd-deployer)

## Overview

Expand Down

0 comments on commit b6d4aa0

Please sign in to comment.