Commit Graph

17 Commits

Author SHA1 Message Date
Gergely Nagy
43e1dd2d6e tools: When creating a new snapshot, commit the updated README too
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
2022-07-07 11:20:48 +02:00
Gergely Nagy
2cc36b0964 tools/release: Do the firmware update step later
We need to do the firmware update step later, after we finalized the Chrysalis
versions, otherwise there will be a mismatch.

Signed-off-by: Gergely Nagy <algernon@keyboard.io>
2022-07-06 22:19:52 +02:00
Gergely Nagy
de8b0c051b Update the firmware update tooling
Adjust the documentation and the firmware update & release scripts to how we're
doing firmware releases going forward.

Signed-off-by: Gergely Nagy <algernon@keyboard.io>
2022-06-25 01:14:56 +02:00
Gergely Nagy
3fee79d3dd Enable auto-update for snapshot builds too
For this to work, we need to change our workflow a little: instead of a static
`snapshot` tag, we have to use a SemVer-compatible tag, such as
`0.10.3-snapshot` - effectively the same version that is in `package.json` (sans
the build number).

To make this automatic, there's a new tool, `tools/snapshot-tag`, which strips
the build number from the version in `package.json`, if there's any. We use this
tool to figure out which tag to re-release during the snapshot workflow.

We also have to update README.md to point to the appropriate snapshot, so the
`tools/release/create-snapshot.sh` tool has been updated to take care of that,
too.

With the workflow changes, we can adjust the autoUpdater configuration to allow
pre-releases, and use the "snapshot" channel. Because we only enable this when
running a snapshot release, auto-upgrade *to* a snapshot release will only work
from a snapshot release. Upgrading from an earlier snapshot to a release is not
done either, because we're tied to a given channel.

Signed-off-by: Gergely Nagy <algernon@keyboard.io>
2022-06-24 12:10:58 +02:00
Gergely Nagy
7345fcc0e7 tools/release/release.sh: Remove the unused extract_news() function
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
2022-05-30 10:12:50 +02:00
Gergely Nagy
29d0ffa47b tools/release/release.sh: Create a signed, annotated tag
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
2022-05-30 10:11:56 +02:00
Gergely Nagy
e3417c239b tools/release/release.sh: Confirm the screenshot is up to date
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
2022-05-30 08:28:11 +02:00
Gergely Nagy
bae63032cd tools/release/release.sh: Confirm the usb and serialport versions are correct
The `usb` and `serialport` packages are finnicky, they break us easily. During
the release process, ask if the versions found are correct.

Signed-off-by: Gergely Nagy <algernon@keyboard.io>
2022-05-30 08:25:25 +02:00
Gergely Nagy
dc5322da79 tools/release/release.sh: Replace draft release creation with tagging
We delegated the release creation to the github actions workflow, so all we need
to do now is tag a release and push it.

Signed-off-by: Gergely Nagy <algernon@keyboard.io>
2021-03-29 20:15:08 +02:00
Gergely Nagy
96ffa1bfed github/workflows: Update the release workflow to be more reliable
Instead of relying on electron-builder to do the right thing, do the release
process ourselves, step by step.

Signed-off-by: Gergely Nagy <algernon@keyboard.io>
2021-03-29 19:14:50 +02:00
Gergely Nagy
e8dccfc2ab Update our release and snapshot workflows
This is a major restructuring of our GitHub Actions workflows. First of all, we
now have separate workflows for release and snapshot builds, as having them
separate makes it easier to control which one runs when. It also allows us to
fine tune a lot of things for the snapshot workflow, which runs much more often.

Another change is that we're now using a static tag (`snapshot`) for development
builds, rather than a versioned tag, and this tag - and the pre-release on
GitHub - will get remade on every run, to keep it up to date.

We also have the build number back for our snapshot builds again, something we
lost with the transition away from Travis.

Documentation and scripts have been appropriately updated.

Signed-off-by: Gergely Nagy <algernon@keyboard.io>
2021-03-23 21:28:15 +01:00
Gergely Nagy
9be206c16f tools/release/release.sh: Update the script to be smarter
We should not require a version to be specified on the commandline, we can just
cut the -snapshot part and run with it. We can then automatically update both
package.json and NEWS.md.

We should also ask if we need to update the shipped firmware.

Signed-off-by: Gergely Nagy <algernon@keyboard.io>
2021-01-25 21:47:18 +01:00
Gergely Nagy
bda7d76d7a tools/release/release.sh: Fix verify_version()
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
2021-01-25 21:33:05 +01:00
Gergely Nagy
3fda69f540 tools: Use v${VERSION} as the tag when releasing
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
2021-01-19 12:42:22 +01:00
Gergely Nagy
0ab52878fc tools: Fix the name of the firmware update script in the release helper
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
2021-01-19 12:39:22 +01:00
Gergely Nagy
34d794069a tools: Update the README too when creating a new snapshot
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
2021-01-19 12:37:48 +01:00
Gergely Nagy
507947cea6 tools: Add two scripts to aid us in the release process
Signed-off-by: Gergely Nagy <algernon@keyboard.io>
2021-01-18 16:15:45 +01:00