Skip to content

Commit 79db544

Browse files
authored
add release process and cut version 0.1.0 (#29)
Adding CI steps to tag releases following CHANGELOG entries to reduce unknowns and provide an easy way to communicate relevant changes.
1 parent 60a5a28 commit 79db544

File tree

3 files changed

+49
-12
lines changed

3 files changed

+49
-12
lines changed

.github/workflows/ci.yml

+29-11
Original file line numberDiff line numberDiff line change
@@ -10,16 +10,34 @@ jobs:
1010
tests:
1111
runs-on: ubuntu-latest
1212
steps:
13-
- uses: actions/[email protected]
14-
- uses: cachix/install-nix-action@v16
15-
with:
16-
install_url: https://github.com/numtide/nix-unstable-installer/releases/download/nix-2.8.0pre20220311_d532269/install
17-
extra_nix_config: |
18-
experimental-features = nix-command flakes
19-
allow-import-from-derivation = true
13+
- name: checkout repo
14+
uses: actions/checkout@v3
15+
16+
- name: install nix
17+
uses: cachix/install-nix-action@v20
2018

21-
- name: Run Nix Flake Check
22-
run: nix -Lv flake check
19+
- name: configure cache
20+
uses: DeterminateSystems/magic-nix-cache-action@v1
21+
22+
- name: check flake
23+
run: nix -Lv flake check
24+
25+
- name: check nix parsing
26+
run: nix -Lv develop -c evalnix
2327

24-
- name: Check Nix parsing
25-
run: nix -Lv develop -c evalnix
28+
- name: get latest tag
29+
id: latest
30+
uses: actions-ecosystem/action-get-latest-tag@v1
31+
32+
- name: parse changelog
33+
id: changelog
34+
uses: coditory/changelog-parser@v1
35+
36+
- name: create release
37+
id: release
38+
uses: softprops/action-gh-release@v1
39+
if: github.ref == 'refs/heads/main' && steps.changelog.outputs.version != steps.latest.outputs.tag
40+
with:
41+
files: ${{ steps.package.outputs.path }}
42+
body: ${{ steps.changelog.outputs.description }}
43+
tag_name: ${{ steps.changelog.outputs.version }}

CHANGELOG.md

+14
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
# Changelog
2+
3+
All notable changes to this project will be documented in this file.
4+
5+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7+
8+
## [Unreleased]
9+
10+
## [0.1.0] - 2023-07-06
11+
12+
### Added
13+
14+
- initial tagged release

CONTRIBUTING.md

+6-1
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,11 @@ Do try to format the repo with [treefmt](https://github.com/numtide/treefmt) bef
1919

2020
nix fmt
2121

22+
## Releases
23+
24+
User-facing changes should be reflected in [`CHANGELOG.md`](./CHANGELOG.md).
25+
When a new entry is added to the default branch, a new release will automatically be tagged.
26+
2227
## Kubernetes versions
2328

2429
To support a new Kubernetes version:
@@ -31,7 +36,7 @@ To support a new Kubernetes version:
3136
}
3237
```
3338

34-
- Build and copy the updated specs to [`modules/generated/`](./modules/generated/) with
39+
- Build the updated specs to [`modules/generated/`](./modules/generated/) with
3540

3641
nix run '.#generate'
3742

0 commit comments

Comments
 (0)