Switching to GitHub Actions
See original GitHub issueSo I’ve been playing with this in #382, and I’m impressed.
Motivations:
- Better build times (especially for macOS and Windows), see #370.
- Integrated into GitHub, better UX in general
- Easier/cleaner config (especially with regards to multi-platform support)
- Seems more reliable
- Not a high bar to beat
- Travis has had outages, build backlogs, builds stalling
- I’ve been getting “An error occurred while generating the build script.” frequently recently (the last two days) for macOS builds.
- It makes us able to finally get rid of Appveyor and unify our CI process
- It allows for more advanced automation, such as automating creating releases with changelog and everything.
I’m seriously tired of mucking with Travis and Appveyor, especially due to the long build times, so pretty excited about getting this done, so we can scrap them.
Subtasks before ready to completely migrate to GitHub Actions:
- Upload build artifacts on every build
- Upload releases to GitHub releases
- Can even automate the creating of the release, including generating the release description & changelog. See: https://github.com/actions/upload-release-asset
- Add caching for
aw-server-rust/target - Build aw-server-rust in debug mode on non-releases (for faster builds), see https://github.com/ActivityWatch/aw-server-rust/pull/100
- Test builds on all platforms
- Linux
Problems found, see comments.- Fixed in #604
- Windows
- macOS (done in https://github.com/ActivityWatch/activitywatch/issues/388#issuecomment-751726505)
- Problems anticipated on versions of macOS older than the version used in CI, probably need to do some xcode-select magic (done in https://github.com/ActivityWatch/activitywatch/pull/544/commits/9f0f7c7af389cd878889b60e9c9b00c1bb878d7f)
- Stumbled into some issues… Might work now, but should check with otool to be sure: https://stackoverflow.com/questions/17143373/determine-minimum-osx-version-a-binary-was-compiled-for (done in https://github.com/ActivityWatch/activitywatch/pull/544#issuecomment-751801675)
- Problems anticipated on versions of macOS older than the version used in CI, probably need to do some xcode-select magic (done in https://github.com/ActivityWatch/activitywatch/pull/544/commits/9f0f7c7af389cd878889b60e9c9b00c1bb878d7f)
- Linux
Progress on moving module repos to GitHub Actions:
- aw-server (https://github.com/ActivityWatch/aw-server/pull/73)
- aw-server-rust
- aw-webui
- aw-qt (https://github.com/ActivityWatch/aw-qt/commit/20261da3f38731f30726b15531943bc9e5332de1)
- aw-core (https://github.com/ActivityWatch/aw-core/pull/89)
- aw-client (https://github.com/ActivityWatch/aw-client/pull/51)
- aw-watcher-afk (https://github.com/ActivityWatch/aw-watcher-afk/commit/4b9eea5e1bd71e90f07bee159ae17ab03615a8c9)
- aw-watcher-web (https://github.com/ActivityWatch/aw-watcher-web/pull/63)
- aw-watcher-window
- activitywatch.github.io (https://github.com/ActivityWatch/activitywatch.github.io/issues/13)
An overview of migration progress can also be seen on the CI overview page
Issue Analytics
- State:
- Created 3 years ago
- Reactions:1
- Comments:10 (10 by maintainers)
Top Results From Across the Web
Migrating to GitHub Actions
Migrating to GitHub Actions. Learn how to migrate your existing CI/CD workflows to GitHub Actions. Automating migration with GitHub Actions Importer.
Read more >Migrating from Jenkins to GitHub Actions
GitHub Actions and Jenkins share multiple similarities, which makes migration to GitHub Actions relatively straightforward.
Read more >Migrating from Travis CI to GitHub Actions
GitHub Actions and Travis CI share multiple similarities, which helps make it relatively straightforward to migrate to GitHub Actions.
Read more >Migrating from Azure Pipelines to GitHub Actions
GitHub Actions and Azure Pipelines share several configuration similarities, which makes migrating to GitHub Actions relatively straightforward.
Read more >GitHub Actions Documentation
Automate, customize, and execute your software development workflows right in your repository with GitHub Actions. You can discover, create, and share ...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found

Disagree, but that’s off topic I guess.
#604 worked!
Looks like we are good to go! (assuming the Windows build is fine)