Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ci: add command for transferring issue #314

Open
wants to merge 12 commits into
base: master
Choose a base branch
from
3 changes: 2 additions & 1 deletion .github/workflows/help-command.yml
Original file line number Diff line number Diff line change
Expand Up @@ -58,5 +58,6 @@ jobs:
At the moment the following comments are supported in issues:

- \`/good-first-issue {js | ts | java | go | docs | design | ci-cd}\` or \`/gfi {js | ts | java | go | docs | design | ci-cd}\` - label an issue as a \`good first issue\`.
example: \`/gfi js\` or \`/good-first-issue ci-cd\``
example: \`/gfi js\` or \`/good-first-issue ci-cd\`
- \`/trasfer-issue {repo-name}\` or \`/ti {repo-name}\` - trasfers issue from the source repository to the other repository passed by the user. example: \`/ti cli\` or \`/trasfer-issue cli\`
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

trasfer all over the place

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

also aren't we missing a closing ` at the end of the line here?

would be good if you test new workflow and this help workflow in private repo to be 100% sure it all works - before we push it to all the other repos

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't think any ` is missing, it is rendering this

  • /transfer-issue {repo-name} or /ti {repo-name} - transfer issue from the source repository to the other repository passed by the user. example: /ti cli or /transfer-issue cli

})
35 changes: 35 additions & 0 deletions .github/workflows/transfer-issue.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@

name: Transfer Issues between repositories

on:
issue_comment:
types:
- created


jobs:
transfer:
if: ${{(!github.event.issue.pull_request && github.event.issue.state != 'closed' && github.actor != 'asyncapi-bot') && (contains(github.event.comment.body, '/trasfer-issue') || contains(github.event.comment.body, '/ti'))}}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

we should probably start using starts with instead of contains

@KhudaDad414 thoughts?

runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v2
Souvikns marked this conversation as resolved.
Show resolved Hide resolved
- name: Install GitHub CLI
run: |
sudo apt-get update
sudo apt-get install gh
Souvikns marked this conversation as resolved.
Show resolved Hide resolved
- name: Authenticate GitHub CLI
run: |
gh action login --with-token <<< "${{ secrets.GITHUB_TOKEN }}"
Souvikns marked this conversation as resolved.
Show resolved Hide resolved

- name: Extract Input
id: extract_step
run: |
COMMENT="${{github.event.comment.body}}"
REPO=$(echo $COMMENT | awk '{print $2}')
echo repo=$REPO >> $GITHUB_OUTPUT

- name: Trasfer Issue
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

would be very useful to have some interaction with user of the command here,

if transfer fails (most probably some typo of repo name of misuse of command) we should drop a proper comment in issue that command failed, and they have to make it better - I'm pretty sure we do it for good first issue command

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have added a step to check if the repo is under the same org and write a comment explaining this to the user.

run: |
gh issue transfer ${{github.event.issue.number}} asyncapi/${{steps.extract_step.outputs.repo}}
derberg marked this conversation as resolved.
Show resolved Hide resolved

Loading