{"id":15637932,"url":"https://github.com/wyrihaximus/github-action-wait-for-status","last_synced_at":"2025-04-06T20:13:10.073Z","repository":{"id":37581027,"uuid":"214416212","full_name":"WyriHaximus/github-action-wait-for-status","owner":"WyriHaximus","description":"Github Action that waits for successful commit status","archived":false,"fork":false,"pushed_at":"2024-08-06T16:06:12.000Z","size":1590,"stargazers_count":98,"open_issues_count":28,"forks_count":12,"subscribers_count":5,"default_branch":"master","last_synced_at":"2024-10-29T11:13:51.402Z","etag":null,"topics":["checks","github","github-actions","hacktoberfest","status","wait"],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/WyriHaximus.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":"WyriHaximus"}},"created_at":"2019-10-11T11:13:46.000Z","updated_at":"2024-08-07T01:20:45.000Z","dependencies_parsed_at":"2024-10-23T04:30:03.613Z","dependency_job_id":null,"html_url":"https://github.com/WyriHaximus/github-action-wait-for-status","commit_stats":{"total_commits":128,"total_committers":11,"mean_commits":"11.636363636363637","dds":0.5625,"last_synced_commit":"5d7ee65ef3e7246580b269448dbe244fc71bbb2c"},"previous_names":[],"tags_count":24,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WyriHaximus%2Fgithub-action-wait-for-status","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WyriHaximus%2Fgithub-action-wait-for-status/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WyriHaximus%2Fgithub-action-wait-for-status/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/WyriHaximus%2Fgithub-action-wait-for-status/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/WyriHaximus","download_url":"https://codeload.github.com/WyriHaximus/github-action-wait-for-status/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247543593,"owners_count":20955865,"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":["checks","github","github-actions","hacktoberfest","status","wait"],"created_at":"2024-10-03T11:15:33.109Z","updated_at":"2025-04-06T20:13:10.042Z","avatar_url":"https://github.com/WyriHaximus.png","language":"PHP","funding_links":["https://github.com/sponsors/WyriHaximus"],"categories":[],"sub_categories":[],"readme":"# github-action-wait-for-status\n\nGitHub Action that waits for successful commit statuses and checks.\n\n![](images/action.png)\n\nThis actions main goal is to wait until all statuses and checks are successful or any of them has failed and set its\nstatus output accordingly.\n\n## Options\n\nThis action supports the following options.\n\n### ignoreActions\n\nList of actions to ignore the status from, mainly to exclude the action this action is used in preventing it from waiting forever. Actions are specified by the `name` of the job.\n\n* *Required*: `Yes`\n* *Type*: `CSV`\n* *Example*: `Automerge PRs,Other Action` but a single action is also perfectly valid `Automerge PRs` *Note that these names are the human readable names use as status on commits, and show up as status checks on PRs.*\n\n### checkInterval\n\nThe amount of seconds to wait between checks, adjust depending on the expected time all the checks and related CI's will take.\n\n* *Required*: `No`\n* *Type*: `Integer`\n* *Default*: `10`\n* *Example*: `60` for longer running jobs, or `5` for very short jobs.\n\n### waitForCheck\n\nIf true, this option will first wait for at least one check to be added to a commit. This is useful for external CIs that take some time to calculate which jobs need to be completed.\n\n* *Required*: `No`\n* *Type*: `true` or `\"\"`\n* *Default*: `\"\"`\n* *Example*: `true`\n\n## Output\n\nThis action has only one output and that's the `status` output. It has two possible values:\n\n* `success` when all statuses and checks have a successful outcome.\n* `failure` when any status or check has failed, even though other checks might still be running.\n* `error` when an error occurs, log output will include the response body.\n* `rate_limited` when the API calls this action makes are rate limited.\n\nAs shown in the example below the `status` output can be used to skip any follow up steps in the action if conditions aren't met.\n\n*Note*, that this action always has exit code `0` unless something fails, that's because it's indifferent about your\nstate of your statuses and checks and leave what to do up to you.\n\n## Example\n\nThe following example is taken from the `PHP` package [`wyrihaximus/fake-php-version`](https://github.com/wyrihaximus/php-fake-php-version/)\nwhere any PR with the `automerge` label will be automatically merged using [`pascalgn/automerge-action`](https://github.com/marketplace/actions/merge-pull-requests).\nThe output of an action can be seen [here](https://github.com/WyriHaximus/php-fake-php-version/commit/0de3b06ee111ccc8b600219b95cebe4b434bef63/checks?check_suite_id=263513218).\nBut in order to ensure we don't merge a failing PR we use this action to ensure everything is green before merging it.\nIf anything fails we won't merge the PR and wait for the next update and try again.\n\n```yaml\nname: Auto Merge\non:\n  pull_request:\n    types:\n      - labeled\n      - unlabeled\n      - synchronize\n      - opened\n      - edited\n      - ready_for_review\n      - reopened\n      - unlocked\n  pull_request_review:\n    types:\n      - submitted\n  status: {}\njobs:\n  automerge:\n    name: Automerge PRs\n    runs-on: ubuntu-latest\n    steps:\n      - name: 'Wait for status checks'\n        id: waitforstatuschecks\n        uses: \"WyriHaximus/github-action-wait-for-status@v2\"\n        with:\n          ignoreActions: \"Automerge PRs\" ## Note that these names are the human readable names use as status on commits, and show up as status checks on PRs.\n          checkInterval: 13\n        env:\n          GITHUB_TOKEN: \"${{ secrets.GITHUB_TOKEN }}\"\n      - name: 'Merge'\n        uses: \"pascalgn/automerge-action@v0.4.0\"\n        if: steps.waitforstatuschecks.outputs.status == 'success'\n        env:\n          GITHUB_TOKEN: \"${{ secrets.GITHUB_TOKEN }}\"\n          LABELS: automerge\n```\n\n## License ##\n\nCopyright 2023 [Cees-Jan Kiewiet](http://wyrihaximus.net/)\n\nPermission is hereby granted, free of charge, to any person\nobtaining a copy of this software and associated documentation\nfiles (the \"Software\"), to deal in the Software without\nrestriction, including without limitation the rights to use,\ncopy, modify, merge, publish, distribute, sublicense, and/or sell\ncopies of the Software, and to permit persons to whom the\nSoftware is furnished to do so, subject to the following\nconditions:\n\nThe above copyright notice and this permission notice shall be\nincluded in all copies or substantial portions of the Software.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND,\nEXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES\nOF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND\nNONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT\nHOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,\nWHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\nFROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR\nOTHER DEALINGS IN THE SOFTWARE.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwyrihaximus%2Fgithub-action-wait-for-status","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwyrihaximus%2Fgithub-action-wait-for-status","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwyrihaximus%2Fgithub-action-wait-for-status/lists"}