Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release Process #22

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
52 changes: 52 additions & 0 deletions policies/0008-release-process.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# Creating a standard software release process

This documents defines the set of standards and practices that we use for releasing artifacts.

## Problem Description

So far we've worked individually on developing software, each one adopting their own set of standards for the code and software we are respectively responsible for.
As we come together as a team we need to adopt a common set of standards.

## Policy

- We have a formal release process and we version the released artifacts.
- We use semantic versioning and create the respective releases (and their corresponding tag) on GitHub.
- We write a brief description of what's changed or been fixed before releases in the description of the release.
- We package applications and services as container images.
- We use a workflow to build the image every time a new PR gets merged on the main/master branch or a new release gets created.
- Unless otherwise required, we deploy software that we have previously released by referencing the desired version on the tag of the image.

## Alternatives & History

TODO

## Implementation

### Author(s)

Primary author:
- Kristi Nikolla <[email protected]>

Other contributors:
- Rest of team

### Milestones

Work Items below does a good job highlighting the steps and milestones.

### Work Items

- Go through our repos and enumerate the released artifacts for each.
- Create the required workflows for building them.
- Create an initial release.
- Update deployment scripts and manifests to reference released versions.

## References

* [Semantic Versioning](https://semver.org)

## License

This work is licensed under a Creative Commons Attribution 3.0
Unported License.
<http://creativecommons.org/licenses/by/3.0/legalcode>