Add OctoAcme Product Manager process doc #1
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Step 2 | |
| on: | |
| workflow_dispatch: | |
| # Common event triggers: pull_request, push, issues, issue_comment (feel free to experiment) | |
| # Docs: https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows | |
| # Example: | |
| # pull_request: | |
| # branches: | |
| # - main | |
| # types: | |
| # - closed | |
| permissions: | |
| contents: write | |
| actions: write | |
| issues: write | |
| env: | |
| STEP_3_FILE: ".github/steps/3-step.md" | |
| jobs: | |
| find_exercise: | |
| name: Find Exercise Issue | |
| uses: skills/exercise-toolkit/.github/workflows/find-exercise-issue.yml@v0.7.0 | |
| # This job is optional. We often call it a "grading job". If the step is not graded, remove it. | |
| check_step_work: | |
| name: Check step work | |
| runs-on: ubuntu-latest | |
| needs: [find_exercise] | |
| env: | |
| ISSUE_REPOSITORY: ${{ github.repository }} | |
| ISSUE_NUMBER: ${{ needs.find_exercise.outputs.issue-number }} | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v5 | |
| - name: Get response templates | |
| uses: actions/checkout@v5 | |
| with: | |
| repository: skills/exercise-toolkit | |
| path: exercise-toolkit | |
| ref: v0.7.0 | |
| - name: Find last comment | |
| id: find-last-comment | |
| uses: peter-evans/find-comment@v3 | |
| with: | |
| repository: ${{ env.ISSUE_REPOSITORY }} | |
| issue-number: ${{ env.ISSUE_NUMBER }} | |
| direction: last | |
| - name: Update comment - checking work | |
| uses: GrantBirki/comment@v2.1.1 | |
| with: | |
| repository: ${{ env.ISSUE_REPOSITORY }} | |
| issue-number: ${{ env.ISSUE_NUMBER }} | |
| comment-id: ${{ steps.find-last-comment.outputs.comment-id }} | |
| file: exercise-toolkit/markdown-templates/step-feedback/checking-work.md | |
| edit-mode: replace | |
| # START: Check practical exercise | |
| # replace-me: Example of a grading check. You can add more checks as needed. | |
| - name: Check if README file exists | |
| id: check-file-exists | |
| continue-on-error: true | |
| uses: skills/exercise-toolkit/actions/file-exists@v0.7.0 | |
| with: | |
| file: README.md | |
| # replace-me: Example of a grading check. You can add more checks as needed. | |
| - name: Check for keyphrase in README.md | |
| id: check-for-keyphrase | |
| continue-on-error: true | |
| uses: skills/action-keyphrase-checker@v1 | |
| with: | |
| text-file: README.md | |
| keyphrase: Installation guide | |
| - name: Update comment - step results | |
| uses: GrantBirki/comment@v2.1.1 | |
| with: | |
| repository: ${{ env.ISSUE_REPOSITORY }} | |
| issue-number: ${{ env.ISSUE_NUMBER }} | |
| comment-id: ${{ steps.find-last-comment.outputs.comment-id }} | |
| edit-mode: replace | |
| file: exercise-toolkit/markdown-templates/step-feedback/step-results-table.md | |
| vars: | | |
| step_number: 2 | |
| results_table: | |
| - description: "Checked if README.md file exists" | |
| passed: ${{ steps.check-file-exists.outcome == 'success' }} | |
| - description: "Checked for Installation guide in README.md" | |
| passed: ${{ steps.check-for-keyphrase.outcome == 'success' }} | |
| # Add more checks as needed | |
| # END: Check practical exercise | |
| - name: Fail job if not all checks passed | |
| if: contains(steps.*.outcome, 'failure') | |
| run: exit 1 | |
| post_next_step_content: | |
| name: Post next step content | |
| needs: [find_exercise] # if check_step_work then "needs: [find_exercise, check_step_work]" | |
| runs-on: ubuntu-latest | |
| env: | |
| ISSUE_REPOSITORY: ${{ github.repository }} | |
| ISSUE_NUMBER: ${{ needs.find_exercise.outputs.issue-number }} | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v5 | |
| - name: Get response templates | |
| uses: actions/checkout@v5 | |
| with: | |
| repository: skills/exercise-toolkit | |
| path: exercise-toolkit | |
| ref: v0.7.0 | |
| - name: Create comment - step finished | |
| uses: GrantBirki/comment@v2.1.1 | |
| with: | |
| repository: ${{ env.ISSUE_REPOSITORY }} | |
| issue-number: ${{ env.ISSUE_NUMBER }} | |
| file: exercise-toolkit/markdown-templates/step-feedback/step-finished-prepare-next-step.md | |
| vars: | | |
| next_step_number: 3 | |
| - name: Create comment - add step content | |
| uses: GrantBirki/comment@v2.1.1 | |
| with: | |
| repository: ${{ env.ISSUE_REPOSITORY }} | |
| issue-number: ${{ env.ISSUE_NUMBER }} | |
| file: ${{ env.STEP_3_FILE }} | |
| - name: Create comment - watching for progress | |
| uses: GrantBirki/comment@v2.1.1 | |
| with: | |
| repository: ${{ env.ISSUE_REPOSITORY }} | |
| issue-number: ${{ env.ISSUE_NUMBER }} | |
| file: exercise-toolkit/markdown-templates/step-feedback/watching-for-progress.md | |
| - name: Disable current workflow and enable next one | |
| run: | | |
| gh workflow disable "${{github.workflow}}" | |
| gh workflow enable "Step 3" | |
| env: | |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} |