{"id":20280153,"url":"https://github.com/anmol-baranwal/handle-multiple-issues","last_synced_at":"2025-04-11T06:36:00.753Z","repository":{"id":206958185,"uuid":"704527369","full_name":"Anmol-Baranwal/handle-multiple-issues","owner":"Anmol-Baranwal","description":"Track if a contributor creates multiple issues with 10+ options 🔥","archived":false,"fork":false,"pushed_at":"2024-02-25T19:26:56.000Z","size":405,"stargazers_count":5,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-03T04:05:43.666Z","etag":null,"topics":["action-workflow","author","contributor","github-actions","github-workflow","multiple-issues","opensource-projects","projects-management","workflow"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","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/Anmol-Baranwal.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"Contributing.md","funding":".github/FUNDING.yml","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,"publiccode":null,"codemeta":null},"funding":{"github":["Anmol-Baranwal"]}},"created_at":"2023-10-13T12:57:38.000Z","updated_at":"2024-10-17T06:01:19.000Z","dependencies_parsed_at":"2024-02-25T20:31:21.380Z","dependency_job_id":null,"html_url":"https://github.com/Anmol-Baranwal/handle-multiple-issues","commit_stats":null,"previous_names":["anmol-baranwal/handle-multiple-issues"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anmol-Baranwal%2Fhandle-multiple-issues","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anmol-Baranwal%2Fhandle-multiple-issues/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anmol-Baranwal%2Fhandle-multiple-issues/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Anmol-Baranwal%2Fhandle-multiple-issues/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Anmol-Baranwal","download_url":"https://codeload.github.com/Anmol-Baranwal/handle-multiple-issues/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248358333,"owners_count":21090400,"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":["action-workflow","author","contributor","github-actions","github-workflow","multiple-issues","opensource-projects","projects-management","workflow"],"created_at":"2024-11-14T13:34:33.325Z","updated_at":"2025-04-11T06:36:00.724Z","avatar_url":"https://github.com/Anmol-Baranwal.png","language":"TypeScript","funding_links":["https://github.com/sponsors/Anmol-Baranwal"],"categories":[],"sub_categories":[],"readme":"## Handle Multiple Issues\n\n\u003e ℹ️ This GitHub workflow is designed for open source projects where users are allowed to work on only one issue at a time.\n\nWith this GitHub workflow, you can automate tasks whenever an author creates multiple open issues.\n\n### Use cases\n\n- The workflow can comment the issues that are already created by the author which are currently in the open state.\n- You can also filter the issues that are assigned to the author of the issue\n- You can add your own comment message (even multiline) in the issue.\n- You can add label or labels based on your preferences.\n- Optionally, you can also close the issue (previous issues won't be affected), and only the current issue will be closed.\n- You can ignore this workflow for specific users by using `ignoreUsers`\n- You can directly pass `ignoreCollaborators`\n\n---\n\n### 🚀 Getting Started\n\n- For custom configuration in-depth, you can check [examples](#examples).\n- Create a file in the repository at the following path: `.github/workflows/handle-multiple-issues.yml` and paste the following code into it.\n\n```yml\nname: Handle Multiple Issues\n\non:\n  issues:\n    types:\n      - reopened\n      - opened\njobs:\n  handle-multiple-issues:\n    runs-on: ubuntu-latest\n    steps:\n      - name: Handle Multiple Issues\n        uses: Anmol-Baranwal/handle-multiple-issues@v1\n        with:\n          label: \"multiple issues\" #default\n          close: false  #default\n          issueNumber: true  #default is true\n```\n\n---\n\n### Inputs\n\nVarious inputs are defined to let you configure the action:\n\n| Name | Description | Default |\n| ---- | ----------- | ------- |\n| `gh-token` | The GitHub token for authentication | `'${{ github.token }}'` |\n| `label` | Add a label to the current issue. Use commas to separate if there are multiple labels. | `'multiple issues'` |\n| `comment` | A message to comment on the issue | `''` |\n| `close` | This will close the issue if set to true | `'false'` |\n| `issueNumber` | This will comment all the previous issues that are created by the author | `'true'` |\n| `assign` | This will filter the issues that are assigned to the author (works only if `issueNumber` is `true`) | `'false'` |\n| `ignoreUsers` | Specify usernames that should be ignored while running this workflow. Use commas to separate if there are multiple users. | `''` |\n| `ignoreCollaborators` | This will ignore all the collaborators in the repository while running this workflow | `'false'` |\n\n\u003cbr\u003e\n\nThe Combinations that you can use with `comment`, `assign` and `issueNumber`:\n\n\u003e Suppose, a user has created `#1`, `#2` which are currently open, only `#2` is assigned to author and we have now included this workflow. Now suppose he creates the `#3` issue.\n\n\u003e You can see the [examples](#examples) for better clarity.\n\n| issueNumber | comment | assign | Purpose | Message by Bot |\n| ----------- | ------- | ------ | ------- | -------------- |\n| `true` |  | `false` | To mention issue number with the default message | `#2, #1 is already opened by you` |\n| `true` | `custom_message` | `false` | To mention issue number with a custom message | `#2, #1 custom_message` |\n| `false` | `custom_message` | `false` | Custom message without mentioning issue | `custom_message` |\n| `false` |  | `false` | Nothing is mentioned; only the label is added as per the workflow |  |\n| `true` |  | `true` | To filter issues that are created by the author and assigned to the same author  | `#2 has been opened by you and is also assigned to you.` |\n\n\u003e Only the default message is modified when `assign` is set to `true`; the concept of a custom message remains unchanged.\n\n\n---\n\n### 🔖 Examples\n\n\u003cdetails\u003e\n  \u003csummary\u003eAdd a custom label and print the issue number with a default message\u003c/summary\u003e\n\n```yml\nuses: Anmol-Baranwal/handle-multiple-issues@v1\nwith:\n  label: \"up for grabs\" #default is 'multiple issues'\n  close: false  #default\n  issueNumber: true  #default is true\n```\n  \n\u003c/details\u003e\n\n\u003cbr\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eAdd a default label and print the issue number with a custom message\u003c/summary\u003e\n  \n```yml\nuses: Anmol-Baranwal/handle-multiple-issues@v1\nwith:\n  # label 'multiple issues' will be added\n  comment: 'custom message'\n  issueNumber: true  #default is true\n```\n  \n\u003c/details\u003e\n\n\u003cbr\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003ePrint a custom message without mentioning issue number\u003c/summary\u003e\n  \n```yml\nuses: Anmol-Baranwal/handle-multiple-issues@v1\nwith:\n  label: \"multiple issues\" #default\n  comment: 'custom message'\n  issueNumber: false  #default is true\n```\n  \n\u003c/details\u003e\n\n\u003cbr\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eMultiline comment message with issue number\u003c/summary\u003e\n  \n```yml\nuses: Anmol-Baranwal/handle-multiple-issues@v1\nwith:\n  label: \"multiple issues\" #default\n  comment: |\n    custom message1\n    custom message2\n  issueNumber: true  #default is true\n\n#  Suppose #1 is already created by the author.\n#  Output\n#  #1 custom message1\n#  custom message2\n```\n\n\u003c/details\u003e\n\n\u003cbr\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eAdd multiple labels\u003c/summary\u003e\n  \n```yml\nuses: Anmol-Baranwal/handle-multiple-issues@v1\nwith:\n  label: 'label1, label2'   # separate using comma\n  issueNumber: true  #default is true\n```\n\n\u003c/details\u003e\n\n\u003cbr\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eTo filter issues that are assigned to the author\u003c/summary\u003e\n\n  \u003cbr\u003e\n\n  - The same rules for message applies to this condition\n  - This will not work unless `issueNumber` is `true`.\n\n  \n```yml\nuses: Anmol-Baranwal/handle-multiple-issues@v1\nwith:\n  issueNumber: true   # default is true\n  assign: true   # this will not work, unless 'issueNumber' is true\n\n#  Suppose #1, #2 is already created by the author. But only #2 is assigned to the author.\n#  Output\n#  #2 has been opened by you and is also assigned to you.\n```\n\n\u003c/details\u003e\n\n\u003cbr\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eTo ignore specified users while running this workflow\u003c/summary\u003e\n\n\u003cbr\u003e\n\n  - Suppose, we have to ignore this workflow for users with username: `Anmol-Baranwal`, `AnmolB2`.\n\n```yml\nuses: Anmol-Baranwal/handle-multiple-issues@v1\nwith:\n  issueNumber: true   # default is true\n  ignoreUsers: 'Anmol-Baranwal, AnmolB2'\n\n#  Suppose Anmol-Baranwal created an issue. You will receive a log message during the workflow execution.\n#  Log Message\n#  User: Anmol-Baranwal is on the ignore list. Ignoring the workflow for this user.\n```\n\n\u003c/details\u003e\n\n\u003cbr\u003e\n\n\u003cdetails\u003e\n  \u003csummary\u003eTo ignore collaborators of the repository while running this workflow\u003c/summary\u003e\n\n\u003cbr\u003e\n\n  - Suppose, we have to ignore this workflow for users with username: `Anmol-Baranwal`, `AnmolB2`.\n\n```yml\nuses: Anmol-Baranwal/handle-multiple-issues@v1\nwith:\n  issueNumber: true   # default is true\n  ignoreCollaborators: true\n\n#  Suppose Anmol-Baranwal created an issue and is a collaborator. You will receive a log message during the workflow execution.\n#  Log Message\n#  User: Anmol-Baranwal is a collaborator. Ignoring the issue for collaborators.\n```\n\n\u003c/details\u003e\n\n---\n\n### 🤝 How to Contribute?\n\nAll changes are welcome. Please read our [contributing guidelines](Contributing.md)\n\nFeel free to suggest any features or report bugs using these [issue templates](https://github.com/Anmol-Baranwal/handle-multiple-issues/issues/new/choose).\n\n---\n\n### 📝 License\n\n\u003ctable\u003e\n  \u003ctr\u003e\n     \u003ctd\u003e\n       \u003cp align=\"center\"\u003e \u003cimg src=\"https://github.com/rupali-codes/LinksHub/assets/66154908/65ae0c03-9cad-47a6-80b8-23c91cd2ac4e\" width=\"80%\"\u003e\u003c/img\u003e\n    \u003c/td\u003e\n    \u003ctd\u003e \n      \u003cimg src=\"https://img.shields.io/badge/License-MIT-yellow.svg\"/\u003e \u003cbr\u003e \nThe scripts and documentation in this project are released under the \u003ca href=\"./LICENSE\"\u003eMIT License\u003c/a\u003e. \u003cimg width=2300/\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n---\n\n### \u003cimg src=\"https://user-images.githubusercontent.com/74038190/221857984-5bf77e81-6f65-4502-a7c8-f29a978efb3f.png\" alt=\"bullseye\" width=\"25\" /\u003e Tech \u0026 Tools\n\n\u003e In case you want to run the action locally, without having to commit/push every time, you can use the [act](https://github.com/nektos/act) tool.\n\n\u003cimg src=\"https://img.shields.io/badge/TypeScript-007ACC?style=for-the-badge\u0026logo=typescript\u0026logoColor=white\" /\u003e \u003cimg src=\"https://img.shields.io/badge/GitHub_Actions-2088FF?style=for-the-badge\u0026logo=github-actions\u0026logoColor=white\" /\u003e\n\n---\n\n### Author \n\n\u003e Feel free to contact me if you need a custom workflow for your project. I'll be happy to build one.\n\n\u003ctable\u003e\n\u003ctd align=\"center\" width=\"200\"\u003e\u003cpre\u003e\u003ca href=\"https://github.com/Anmol-Baranwal\"\u003e\u003cimg src=\"https://avatars.githubusercontent.com/u/74038190?v=4\" width=\"200\" alt=\"GitHub Profile of Anmol Baranwal\" /\u003e\u003cbr\u003e\u003csub\u003eAnmol Baranwal\u003c/sub\u003e\u003c/a\u003e\u003cbr\u003e@Anmol-Baranwal\u003c/pre\u003e\u003c/td\u003e\n\u003c/table\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanmol-baranwal%2Fhandle-multiple-issues","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fanmol-baranwal%2Fhandle-multiple-issues","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fanmol-baranwal%2Fhandle-multiple-issues/lists"}