Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/kt3k/status-back
:arrow_left::large_blue_circle: Send the status back to the github from CI environment
https://github.com/kt3k/status-back
ci commit-status github jenkins
Last synced: 3 months ago
JSON representation
:arrow_left::large_blue_circle: Send the status back to the github from CI environment
- Host: GitHub
- URL: https://github.com/kt3k/status-back
- Owner: kt3k
- License: mit
- Created: 2018-05-07T09:29:10.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2022-12-12T09:19:46.000Z (about 2 years ago)
- Last Synced: 2024-10-13T22:04:39.775Z (3 months ago)
- Topics: ci, commit-status, github, jenkins
- Language: JavaScript
- Homepage: https://npm.im/status-back
- Size: 1.22 MB
- Stars: 19
- Watchers: 9
- Forks: 3
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
Awesome Lists containing this project
README
# status-back v1.1.1
[![CircleCI](https://circleci.com/gh/kt3k/status-back.svg?style=svg)](https://circleci.com/gh/recruit-lifestyle/status-back)
[![codecov](https://codecov.io/gh/kt3k/status-back/branch/master/graph/badge.svg)](https://codecov.io/gh/recruit-lifestyle/status-back)> :arrow_left::large_blue_circle: Send the status back to the github from CI environment
# :cd: Install
Via npm:
npm i -g status-back
This installs `status-back` to your system.
# CLI Usage
```
Usage: status-back [options] [, []]Options:
--version - - - - - - - - - Output the version.
-v, --verbose - - - - - - - Output verbose message on internal operations.
-p, --pending - - - - - - - Set the commit status pending.
-s, --success - - - - - - - Set the commit status success.
-f, --failure - - - - - - - Set the commit status failure.
-e, --error - - - - - - - - Set the commit status error.
-t, --token - - - - Set the github token. Required.
Optionally set by GITHUB_TOKEN env var.
-r, --repo - - - - - Set the repo slug. e.g. nodejs/node. Requird.
Optionally set by GITHUB_REPO env var.
--sha1 - - - - - - - Set the sha1 of the commit. Default is the current sha1.
Optionally set by STATUS_SHA1.
If not specified, the sha1 of current dir is used.
-c, --context - - Set the context of the commit status. e.g. ci/build. Required.
Optionally set by STATUS_CONTEXT env var.
--github-api - - - - Set the url of the github api. Set this when you use with github enterprise.
Optionally set by GITHUB_API env var.Example:
status-back -s -t 12345... -r nodejs/node -c ci/build "build success!" https://ci.server/build/12345status-back -f -t 12345... -r nodejs/node -c ci/build "build failure!" https://ci.server/build/12346 --github-api https://github.my-company/api/v3
```# Examples & recipes
## Usage with Jenkins declarative pipeline
In CI settings, we recommend to use environment variables for setting common parameters.
```groovy
pipeline {
environment {
GITHUB_TOKEN = credentials 'github-token'
GITHUB_API = 'https://mycompany.github/api/v3'
GITHUB_REPO = 'myorg/myrepo'
}stages {
stage('install') {
steps {
sh 'yarn'
}
}stage('lint') {
environment {
STATUS_CONTEXT = 'jenkins/lint'
}steps {
sh 'npx status-back -p "Linting..." $BUILD_URL'
sh 'npm run lint'
}post {
success {
sh 'npx status-back -s "Lint success!" $BUILD_URL'
}
failure {
sh 'npx status-back -f "Lint failed!" $BUILD_URL'
}
}
}stage('test') {
environment {
STATUS_CONTEXT = 'jenkins/test'
}steps {
sh 'npx status-back -p "Testing..." $BUILD_URL'
sh 'npm test'
}post {
success {
sh 'npx status-back -s "Test success!" $BUILD_URL'
}
failure {
sh 'npx status-back -f "Test failed!" $BUILD_URL'
}
}
}
}
}
```# License
MIT
**Note**: This library is inspired by [commit-status][] by [dtinth][], but is a bit more focused on usages in Github Enterprise environment, rather than github.com.
[commit-status]: https://www.npmjs.com/package/commit-status
[dtinth]: https://github.com/dtinth