grate-devs / grate-devs/grate

Improve the release story

Open
#796 2 comments 0 reactions 0 assignees View on GitHub
build-pipeline good first issue
Dominant language
C#
Stars
297
Forks
55
Avg merge
18m
Merged PRs (30d)
1

Description

Our release story atm isn't brilliant, is effectively undocumented, and is different to what I do elsewhere so I get confused every time I do it. We currently have no ability to push pre-release nuget packages, and making a release is a multi-step operation.

Where I think I'd like to get to is:

- Create a release in Github, configuring the version number (including pre-release suffixes) as a new Tag when saved.
- And release notes etc etc
- Release pipeline runs automatically on new tag/new release to Build and push the release
- Release Pipeline is the same as the CI build, but actually pushes artifacts (containers, nugets etc) downstream
- Put another way, I want as much of the release pipeline run as CI as possible, so the CI can catch as many issues as possible
- I'm _probably_ ok with skipping the tests in the Release pipeline because they are all run on PR/CI builds
- Light docco item explaining this process for future peeps

I might get a chance to play with this over the next day or two, otherwise it will a couple of weeks before my next chance... if anyone else has feedback/opinions, or wants to contribute please join in the conversation.

Contributor guide

Open the contributing guide

Research direction

No files or tests are named. Start by locating the existing CI/build and release configuration, then trace how tags, GitHub releases, containers, and NuGet artifacts are currently handled. Done means a documented release process can create versioned and pre-release tags, automatically build and publish artifacts, and reuse CI coverage as far as intended.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp, github-actions
Domain
ci-cd, devops, documentation, release
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.