diff --git a/.github/issue-shoot.md b/.github/issue-shoot.md new file mode 100644 index 000000000..d997d6567 --- /dev/null +++ b/.github/issue-shoot.md @@ -0,0 +1,8 @@ +## IssueShoot +- 预估时长: {{ .duration }} +- 期望完成时间: {{ .deadline }} +- 开发难度: {{ .level }} +- 参与人数: 1 +- 需求对接人: lincao +- 验收标准: 实现期望改造效果,提 PR 并通过验收无误 +- 备注: 最终激励以实际提交 `pull request` 并合并为准 diff --git a/.github/workflows/issue-label.yml b/.github/workflows/issue-label.yml new file mode 100644 index 000000000..ec009a0c0 --- /dev/null +++ b/.github/workflows/issue-label.yml @@ -0,0 +1,50 @@ +name: issue on label +on: + issues: + types: ['labeled'] +jobs: + add-issueshoot-template: + runs-on: ubuntu-latest + if: contains(fromJSON('["easy", "middle", "hard"]'), github.event.label.name) + steps: + - name: Checkout + uses: actions/checkout@v2 + - name: Get token + id: token + run: | + label=${{ github.event.label.name }} + if [[ $label = "easy" ]] + then + echo "level=低" >> $GITHUB_OUTPUT + echo "duration=1" >> $GITHUB_OUTPUT + deadline=$(date -d "+3 days" +'%Y-%m-%d') + echo "deadline=${deadline}" >> $GITHUB_OUTPUT + elif [[ $label = "middle" ]] + then + echo "level=中" >> $GITHUB_OUTPUT + echo "duration=3" >> $GITHUB_OUTPUT + deadline=$(date -d "+7 days" +'%Y-%m-%d') + echo "deadline=${deadline}" >> $GITHUB_OUTPUT + else + echo "level=高" >> $GITHUB_OUTPUT + echo "duration=5" >> $GITHUB_OUTPUT + deadline=$(date -d "+10 days" +'%Y-%m-%d') + echo "deadline=${deadline}" >> $GITHUB_OUTPUT + fi + - name: Create template + id: template + uses: chuhlomin/render-template@v1.4 + with: + template: .github/issue-shoot.md + vars: | + level: ${{ steps.token.outputs.level }} + duration: ${{ steps.token.outputs.duration }} + deadline: ${{ steps.token.outputs.deadline }} + - name: Update issue + uses: actions-cool/issues-helper@v3 + with: + actions: 'update-issue' + token: ${{ secrets.GITHUB_TOKEN }} + issue-number: ${{ github.event.issue.number }} + body: ${{ steps.template.outputs.result }} + update-mode: 'append' \ No newline at end of file