{"id":13685247,"url":"https://github.com/taskworld/commit-status","last_synced_at":"2025-10-04T10:30:48.089Z","repository":{"id":36713626,"uuid":"41020192","full_name":"taskworld/commit-status","owner":"taskworld","description":"A simple CLI tool to post status to GitHub","archived":true,"fork":false,"pushed_at":"2018-07-26T08:53:50.000Z","size":24,"stargazers_count":25,"open_issues_count":2,"forks_count":5,"subscribers_count":10,"default_branch":"master","last_synced_at":"2025-01-12T08:14:23.296Z","etag":null,"topics":["cli","github","nodejs"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/taskworld.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-08-19T07:38:11.000Z","updated_at":"2023-01-28T05:50:30.000Z","dependencies_parsed_at":"2022-08-24T22:30:16.394Z","dependency_job_id":null,"html_url":"https://github.com/taskworld/commit-status","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taskworld%2Fcommit-status","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taskworld%2Fcommit-status/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taskworld%2Fcommit-status/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taskworld%2Fcommit-status/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taskworld","download_url":"https://codeload.github.com/taskworld/commit-status/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":235238015,"owners_count":18958033,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","github","nodejs"],"created_at":"2024-08-02T14:00:47.440Z","updated_at":"2025-10-04T10:30:42.805Z","avatar_url":"https://github.com/taskworld.png","language":"JavaScript","readme":"# commit-status\n\nA simple CLI tool to post [commit statuses](https://developer.github.com/v3/repos/statuses/) to GitHub from CI.\nSupports CircleCI, Travis CI, and Codeship.\n\n\n## About\n\nAt Taskworld, we want to have fine-grain status report for each commit.\nThis is a perfect use case for GitHub’s commit status API.\n\n\n## Usage\n\n### Configure CI to expose GitHub access token\n\n`commit-status` will look for GitHub access from these environment variables, in this order:\n\n- `GH_STATUS_TOKEN`\n- `GH_TOKEN`\n\nThat token should have `repo:status` scope.\n\nYou can create a bot account and obtain a token at https://github.com/settings/tokens/new.\n\n### Use with GitHub Enterprise\n\nIf you use GitHub Enterprise, then you can override the API endpoint by `GITHUB_API` environment variable.\n\n```sh\nenv GITHUB_API=https://[hostname]/api/v3 commit-message ...\n```\n\n## CLI\n\n### Install\n\nInside your CI deps script, install `commit-status` there:\n\n```\nnpm install -g commit-status\n```\n\n\n### Post commit status\n\nWhenever you want to post a commit status from CI, invoke the command:\n\n```\ncommit-status \u003cstate\u003e \u003ccontext\u003e \u003cdescription\u003e [\u003curl\u003e]\n```\n\n- `state` — Either `pending`, `success`, `error`, `failure`\n- `context` — “A string label to differentiate this status from the status of other systems.”\n- `description` — “A short description of the status.”\n- `url` — The URL to display.\n\nExample CircleCI setup:\n\n```yaml\n    - |\n      if gulp lint\n      then commit-status success lint/eslint \"Linting successful.\"\n      else commit-status failure lint/eslint \"There are lint errors.\"\n      fi\n```\n\n## API\n\n```js\nconst commitStatus = require('commit-status')\n\ncommitStatus.post({\n  state: 'success',\n  context: 'lint/eslint',\n  description: 'Linting successful.'\n})\n```\n","funding_links":[],"categories":["Uncategorized"],"sub_categories":["Uncategorized"],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftaskworld%2Fcommit-status","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftaskworld%2Fcommit-status","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftaskworld%2Fcommit-status/lists"}