{"id":15174087,"url":"https://github.com/cucumber/action-retire-inactive-contributors","last_synced_at":"2025-10-19T09:32:28.073Z","repository":{"id":37849229,"uuid":"453139596","full_name":"cucumber/action-retire-inactive-contributors","owner":"cucumber","description":"Retire inactive contributors from one team to another","archived":false,"fork":false,"pushed_at":"2024-04-07T11:41:14.000Z","size":1639,"stargazers_count":4,"open_issues_count":9,"forks_count":2,"subscribers_count":11,"default_branch":"main","last_synced_at":"2024-04-14T13:08:34.412Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"isc","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cucumber.png","metadata":{"funding":{"open_collective":"cucumber"},"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2022-01-28T16:31:59.000Z","updated_at":"2023-02-01T18:23:02.000Z","dependencies_parsed_at":"2024-03-05T08:04:41.411Z","dependency_job_id":"b4460727-cf8d-401d-ba3f-e23cb37d12eb","html_url":"https://github.com/cucumber/action-retire-inactive-contributors","commit_stats":{"total_commits":173,"total_committers":10,"mean_commits":17.3,"dds":0.3872832369942196,"last_synced_commit":"1940364c7b986c3434187c8ed68ad4321fb1dac8"},"previous_names":["cucumber/action-retire-inactive-contributor"],"tags_count":5,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cucumber%2Faction-retire-inactive-contributors","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cucumber%2Faction-retire-inactive-contributors/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cucumber%2Faction-retire-inactive-contributors/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cucumber%2Faction-retire-inactive-contributors/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cucumber","download_url":"https://codeload.github.com/cucumber/action-retire-inactive-contributors/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219869479,"owners_count":16555292,"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":[],"created_at":"2024-09-27T11:24:14.513Z","updated_at":"2025-10-19T09:32:27.624Z","avatar_url":"https://github.com/cucumber.png","language":"TypeScript","funding_links":["https://opencollective.com/cucumber"],"categories":[],"sub_categories":[],"readme":"[![Cucumber Report](https://messages.cucumber.io/api/report-collections/e37b01e9-023e-43aa-b510-a79705ee932f/badge)](https://reports.cucumber.io/report-collections/e37b01e9-023e-43aa-b510-a79705ee932f)\n\n# retire-inactive-contributor README.md\n\nThis is one result of [the new contributors ensemble, a weekly exercise in ensemble programming.](https://cucumber.io/docs/community/new-contributors/)\n\n## Now as a Github action\n\nWhen this Github action runs:\n    - It requests a list of all contributors\n    - Moves inactive contributors to a less-privileged alumni team \n    - If an inactive contributor has custom permissions, these permissions are revoked\n\n![Sequence Diagram](doc/diagrams/sequence.png)\n\n## Usage Example\n\nAdd this text to your workflow config `.github/workflows/main.yml`\n\n```yaml\nname: Retire inactive contributors\non:\n  schedule:\n    # https://crontab.guru/every-night-at-midnight\n    - cron: \"0 0 * * *\"\n\njobs:\n  retire-inactive:\n    runs-on: ubuntu-latest\n    steps:\n      - uses: cucumber/action-retire-inactive-contributor@main\n        env:\n          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n        with:\n          github-orgname: cucumber\n          maximum-absence-before-retirement: 1 year\n          alumni-team: Alumni\n```\n\n\u003e Previously, a bot built with [Probot](https://github.com/probot/probot) that Retire inactive contributors from one team to another, now done using a GitHub Action\n\n## Setup\n\nThe current project code is based on the sample TypeScript action available at https://github.com/actions/typescript-action\n\nIf you are using VSCode you can also use the following workspace settings for Prettier/ESLint:\n\n```\n{\n\t\"editor.formatOnSave\": true,\n\t\"[typescript]\": {\n\t\t\"editor.formatOnSave\": false,\n\t\t\"editor.defaultFormatter\": \"esbenp.prettier-vscode\"\n\t},\n\t\"editor.codeActionsOnSave\": {\n\t\t\"source.fixAll.eslint\": true\n\t}\n}\n```\n\n\n\n## Contributing\n\nIf you have suggestions for how inactive-contributor-bot could be improved, or want to report a bug, open an issue! We'd love all and any contributions.\n\nFor more, check out the [Contributing Guide](CONTRIBUTING.md).\n\n## License\n\n[ISC](LICENSE) © 2022 Matt Wynne, Kate Dames, Blaise Pabon \u003cmatt@cucumber.io\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcucumber%2Faction-retire-inactive-contributors","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcucumber%2Faction-retire-inactive-contributors","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcucumber%2Faction-retire-inactive-contributors/lists"}