Node.js release management.
- Creates release packages from node.js projects. The packages are self-contained executables.
- Uploads packages as attached files to GitHub releases.
- Downloads the latest package from GitHub and sets up permissions and symlinks.
artie upload [-o <os>] [-a <arch>] [-n <node version>] [-t <token>]
If the current commit also has a tag, the package is uploaded and attached to the GitHub release with the same tag.
If we are not on a tag, we assume that this package is for development purposes, and a new GitHub draft release is created using the abbreviated commit object as the name.
artie download <owner> <repo> [-o <os>] [-a <arch>] [-p] [-t <token>]
Queries GitHub for the latest package matching the supplied
arch, and downloads the package (if it doesn't already exist) to the
current directory. Creates a symlink with the same name as
pointing to the newly downloaded file.
-p is specified, we will only download fully tagged production
releases. Otherwise, we will also consider draft releases.
Releases marked as
pre-release will never be downloaded.
The version of the embedded node.js executable is determined as follows:
- If the
-noptions is specified, we will use that.
.nvmrcexists in the project root, we will look for a node.js version there.
- Otherwise, fall back to the system default.
artie needs a personal access token to be able to work with
GitHub. It can be supplied either with the
-t <token> option or by
GITHUB_OAUTH_TOKEN environment variable.
export SLACK_WEBHOOK=https://hooks.slack.com/services/ASD28TH/B0asdCQ/6876786sd8f6asdasdgxcv export SLACK_CHANNEL=general