CLI with some useful commands for Travis CI
- A way to update a GitHub Commit Status from a CI environment with
- A way to publish through CI all packages that used
The following environment variables are used:
GITHUB_TOKEN: GitHub Personal Access Token of the user that will create the commit with the release.
Other optional environment variables are:
GITHUB_USER: GitHub username of the user that will create the commit with the release.
GITHUB_EMAIL: GitHub email of the user that will create the commit with the release.
When using Travis as CI it also uses:
TRAVIS_PULL_REQUEST: The pull request number if the current job is a pull request,
falseif it's not a pull request.
When using GitHub Actions as CI it also uses:
GITHUB_REF: The branch ref that triggered the workflow. For example, refs/heads/feature-branch-1.
The recommended way to use this is adding in your
travis.yml as latest step of the
script lifecycle the next command
npx @s-ui/ci release:
script: - npx @s-ui/ci release
The reason why we need to use the
script lifecycle is because is the last step in Travis to determine if a build is failing. You could safely use in next job cycles like
after_success but keep in mind that if the release fails the build won't change.
Right now, it relies on some environment variables:
GITHUB_TOKEN: GitHub Personal Access Token of the user that will create the status of the commit.
SUI_CI_TOPIC: Environment variable to tell the CI which topic the commit is about. If not defined, you must use the
--topicparameter in order to define the topic that you're talking about.
When using Travis as CI, @s-ui/ci uses the next environment variables are expected:
When using GitHub Actions as CI, it uses:
Usage: sui-ci update-commit-status [options] Options: -s, --state <stateKey> State of the commit. Accepted values:"OK", "KO", "RUN" (default: "KO") -t, --topic <ciTopic> Topic telling what is the commit about. Required if ENV VAR not defined (default: process.env.SUI_CI_TOPIC) -u, --url <targetUrl> Url where the details link navigates to (default: <travis-build-url>) -h, --help display help for command
For example, you could use the CLI directly by using
npx with that.
$ npx @s-ui/ci update-commit-status --state OK --topic build
When you use
topic parameter you'll get a default message for each state (success, fail and pending). There's a special list of topics that have their own message to improve readability: