{"id":14986078,"url":"https://github.com/takanabe/github-actions-automate-projects","last_synced_at":"2025-04-11T20:32:04.934Z","repository":{"id":53134813,"uuid":"187317987","full_name":"takanabe/github-actions-automate-projects","owner":"takanabe","description":"GitHub Actions adding GitHub Issues \u0026 Pull requests to the specified GitHub Project column automatically ♻️","archived":false,"fork":false,"pushed_at":"2021-04-05T12:06:39.000Z","size":54,"stargazers_count":54,"open_issues_count":6,"forks_count":12,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-10-22T03:18:40.486Z","etag":null,"topics":["github-actions","github-projects","go","project-management"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/takanabe.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-05-18T05:25:15.000Z","updated_at":"2024-10-14T21:19:44.000Z","dependencies_parsed_at":"2023-01-11T17:23:15.534Z","dependency_job_id":null,"html_url":"https://github.com/takanabe/github-actions-automate-projects","commit_stats":{"total_commits":34,"total_committers":3,"mean_commits":"11.333333333333334","dds":0.05882352941176472,"last_synced_commit":"77de3d4a2924a4733169613f4a3d80d148eb943a"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/takanabe%2Fgithub-actions-automate-projects","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/takanabe%2Fgithub-actions-automate-projects/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/takanabe%2Fgithub-actions-automate-projects/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/takanabe%2Fgithub-actions-automate-projects/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/takanabe","download_url":"https://codeload.github.com/takanabe/github-actions-automate-projects/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248476381,"owners_count":21110266,"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":["github-actions","github-projects","go","project-management"],"created_at":"2024-09-24T14:12:17.609Z","updated_at":"2025-04-11T20:31:59.921Z","avatar_url":"https://github.com/takanabe.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# github-actions-automate-projects\n\n[dockerhub]: https://hub.docker.com/r/takanabe/github-actions-automate-projects\n[license]: https://github.com/takanabe/github-actions-automate-projects/blob/master/LICENSE\n\n[![Docker Automated build](https://img.shields.io/docker/automated/takanabe/github-actions-automate-projects.svg?logo=docker)][dockerhub]\n[![License](https://img.shields.io/github/license/takanabe/github-actions-automate-projects.svg)][license]\n\nGitHub Actions adding GitHub Issues \u0026 Pull requests to the specified GitHub Project column automatically :recycle:. This GitHub Action is inspired by https://github.com/masutaka/github-actions-all-in-one-project\n\n## Usage\n\nGitHub Projects belong to organizations, repositories, and users. This GitHub action currently does not support user-based GitHub Project. For any type of GitHub Projects, you need to change `GITHUB_PROJECT_URL` and `GITHUB_PROJECT_COLUMN_NAME` depending on your GitHub Project URL and column name to which you want to add new cards. Create `.github/workflows/issues.yml` file on your repository and edit like below.\n\n### Repository-based project\n\n```yml\nname: Add a new GitHub Project card linked to a GitHub issue to the specified project column\non: [issues, pull_request]\njobs:\n  github-actions-automate-projects:\n    runs-on: ubuntu-latest\n    steps:\n    - name: add-new-issues-to-repository-based-project-column\n      uses: docker://takanabe/github-actions-automate-projects:v0.0.1\n      if: github.event_name == 'issues' \u0026\u0026 github.event.action == 'opened'\n      env:\n        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n        GITHUB_PROJECT_URL: https://github.com/takanabe/github-actions-automate-projects/projects/1\n        GITHUB_PROJECT_COLUMN_NAME: To do\n    - name: add-new-prs-to-repository-based-project-column\n      uses: docker://takanabe/github-actions-automate-projects:v0.0.1\n      if: github.event_name == 'pull_request' \u0026\u0026 github.event.action == 'opened'\n      env:\n        GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}\n        GITHUB_PROJECT_URL: https://github.com/takanabe/github-actions-automate-projects/projects/1\n        GITHUB_PROJECT_COLUMN_NAME: To do\n```\n\n1. Replace the URL set on `GITHUB_PROJECT_URL` to the URL of your repository project to place issues/pull-requests\n1. Replace the URL set on `GITHUB_PROJECT_COLUMN_NAME` to the string which your repository project has and want to place issues/pull-requests\n\n### Organization-based project\n\n```yml\nname: Add a new GitHub issue to the specified project column\non: [issues, pull_request]\njobs:\n  add-new-issues-to-project-column:\n    runs-on: ubuntu-latest\n    steps:\n    - name: add-new-issues-to-organization-based-project-column\n      uses: docker://takanabe/github-actions-automate-projects:v0.0.1\n      if: github.event_name == 'issues' \u0026\u0026 github.event.action == 'opened'\n      env:\n        GITHUB_TOKEN: ${{ secrets.GITHUB_PERSONAL_TOKEN_TO_ADD_PROJECT }}\n        GITHUB_PROJECT_URL: https://github.com/orgs/organization_name/projects/1\n        GITHUB_PROJECT_COLUMN_NAME: To Do\n```\n\n1. Replace the URL set on `GITHUB_PROJECT_URL` to the URL of your repository project to place issues/pull-requests\n1. Replace the URL set on `GITHUB_PROJECT_COLUMN_NAME` to the string which your repository project has and want to place issues/pull-requests\n1. Replace the secret set on ${{ secrets.GITHUB_PERSONAL_TOKEN_TO_ADD_PROJECT }} to your personal GitHub token\n   1. Create a new personal access token from https://github.com/settings/tokens\n   1. Create a new personal access token from https://github.com/organization_name/repository_name/settings/secrets with the value of personal access token you created above\n   1. Replace the personal token name from ${{ secrets.GITHUB_PERSONAL_TOKEN_TO_ADD_PROJECT }} to ${{ secrets.YOUR_NEW_PERSONAL_TOKEN }}\n   1. Link repositories to the project from https://github.com/orgs/organization_name/projects/1/settings/linked_repositories\n\n### User-based project\n\nUser-based project is not supported yet\n\n## Configurations\n\n### Docker images\n\nDocker images for this action are automatically built when master branch is updated or new release tags are created in this repository with `latest` and corresponded tag names (e.g: `v.0.0.1`). Please use `uses: docker://takanabe/github-actions-automate-projects:v0.0.1` and `uses: docker://takanabe/github-actions-automate-projects:latest` syntax to use pre-build images for this GitHub Actions.\n\n### Environment variables\n\n| Environment variable       | Value                                                                                                                                       | Description                                                                                                                                                                                                                                                                                                                                                                                                                                    |\n| :------------------------- | :------------------------------------------------------------------------------------------------------------------------------------------ | :--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| GITHUB_TOKEN               | ${{ secrets.GITHUB_TOKEN }}, ${{ secrets.GITHUB_PERSONAL_ACCESS_TOKEN }}                                                                    | An Access token to access your repository and projects. if you use repository-based projects, ${{ secrets.GITHUB_TOKEN }} provides appropriate access privileges to this GitHub action ([See](https://help.github.com/en/articles/virtual-environments-for-github-actions#github_token-secret)). If that is not enough, you need to pass ${{ secrets.GITHUB_PERSONAL_ACCESS_TOKEN }} by issuing personal access token with appropriate grants. |\n| GITHUB_PROJECT_URL         | https://github.com/username/reponame/projects/1, https://github.com/orgname/reponame/projects/1, https://github.com/orgs/orgname/projects/1 | A GitHub Project URL you want to use                                                                                                                                                                                                                                                                                                                                                                                                           |\n| GITHUB_PROJECT_COLUMN_NAME | Anything (e.g: To Do)                                                                                                                       | A GitHub Project column name you want to place issues/pull-requests                                                                                                                                                                                                                                                                                                                                                                            |\n| DEBUG                      | Anything (e.g: true)                                                                                                                        | A flag to produce debug messages for this GitHub Actions if this environment variable exists                                                                                                                                                                                                                                                                                                                                                   |\n\n### Condition with contexts\n\nYou can easily detect [event contexts](https://help.github.com/en/articles/contexts-and-expression-syntax-for-github-actions#github-context) and use them in if statements. Here are some lists of the useful contexts for this GitHub action.\n\n| Property name       | Values                                                                                                                                                                               | Description                                                                                                                                                                                                      |\n| ------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| github.event.action | opened, closed, edited, and so on                                                                                                                                                    | The name of actions (references for [issues](https://developer.github.com/v3/activity/events/types/#issuesevent) and for [pull_request](https://developer.github.com/v3/activity/events/types/#pullrequestevent) |\n| github.event_name   | [issues](https://developer.github.com/v3/activity/events/types/#webhook-event-name-19), [pull_request](https://developer.github.com/v3/activity/events/types/#webhook-event-name-33) | The name of the event that triggered the workflow run                                                                                                                                                            |\n\n## Development\n\n### Build Docker image and update DockerHub\n\nChange `IMAGE_NAME`, `DOCKER_REPO` and `TAG_NAME` in `Makefile` based on your DockerHub settings.\n\n```bash\nmake\n```\n\nExcept for `sandbox` tag, [`takanabe/github-actions-automate-projects`](https://hub.docker.com/r/takanabe/github-actions-automate-projects/tags) lists production ready Docker images matching [GitHub release tag](https://github.com/takanabe/github-actions-automate-projects/releases).\n\n## License\n\n[Apache 2.0](https://github.com/takanabe/github-actions-automate-projects/blob/master/LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftakanabe%2Fgithub-actions-automate-projects","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftakanabe%2Fgithub-actions-automate-projects","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftakanabe%2Fgithub-actions-automate-projects/lists"}