Portal¶
Julia in GitHub actions
Official Julia GitHub actions
- julia-actions/setup-julia action downloads
juliaand adds it toPATH. - julia-actions/julia-buildpkg runs build scripts and installs dependencies for the Julia package.
- julia-actions/julia-runtest runs unit test for the Julia project.
- julia-actions/cache is a shortcut action to cache Julia artifacts, packages, and registries.
- julia-actions/julia-docdeploy deploys documentation.
- julia-actions/julia-processcoverage generates test coverage data.
NodeJS in GitHub actions
The actions/setup-node action installs Node.js and caches package dependencies.
GitHub Pages in GitHub actions
Publish your website to GitHub pages with GitHub actions (CI/CD).
Release in GitHub actions
- softprops/action-gh-release : A GitHub Action for creating GitHub Releases on Linux, Windows, and macOS virtual environments.
- release-drafter/release-drafter : Drafts your next release notes as pull requests are merged into master.
- robinraju/release-downloader : Github action to download release assets from private or public repositories.
- actions/delete-package-versions : This action deletes versions of a package from GitHub Packages. This action will only delete a maximum of 100 versions in one run.
Status check for a multi-stage workflow
If you run a multi-stage workflow with status checks in branch protection rules, you might found that skipped jobs are treated as "passed". That is, if you have a workflow with a chain of dependent jobs A -> B -> C. When B fails and C is skipped, it still counts as passed when checking job C.1 Thus, auto-merging may merge broken code.
Dynamic parallel matrix
Job matrix creates multiple job runs that are based on the combinations of the variables. Sometimes we want a dynamic number of matrix jobs, which requires a JSON array as an output. Here we use json and glob modules in Python to generate that JSON list.12
Mount NAS drive in Linux at boot
Add the following entry to /etc/fstab to automatically mount NAS drives at boot