Start exercise #1
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 1 # Create a branch | |
# Checks if the learner completed tasks for step 1. | |
# - Triggers when the user creates a new branch 'my-first-branch'. | |
# - Checks that the branch name is 'my-first-branch'. | |
# - If all checks pass, the workflow is disabled so it doesn't run again. As such, workflow status badge will change to green. | |
on: | |
push: | |
branches: | |
- "my-first-branch" | |
permissions: | |
contents: read | |
actions: write | |
issues: write | |
env: | |
STEP_2_FILE: ".github/steps/2-commit-a-file.md" | |
jobs: | |
find_exercise: | |
name: Find Exercise Issue | |
uses: skills/exercise-toolkit/.github/workflows/[email protected] | |
check_step_work: | |
name: Check step work | |
runs-on: ubuntu-latest | |
needs: find_exercise | |
env: | |
ISSUE_URL: ${{ needs.find_exercise.outputs.issue-url }} | |
steps: | |
- name: Get response templates | |
uses: actions/checkout@v4 | |
with: | |
repository: skills/exercise-toolkit | |
path: exercise-toolkit | |
ref: v0.1.0 | |
- name: Update comment - checking work | |
run: | | |
gh issue comment "$ISSUE_URL" \ | |
--body-file exercise-toolkit/markdown-templates/step-feedback/checking-work.md \ | |
--edit-last | |
env: | |
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Build message - step finished | |
id: build-message-step-finish | |
uses: skills/action-text-variables@v1 | |
with: | |
template-file: exercise-toolkit/markdown-templates/step-feedback/step-finished-prepare-next-step.md | |
template-vars: | | |
next_step_number=2 | |
- name: Update comment - step finished | |
run: | | |
gh issue comment "$ISSUE_URL" \ | |
--body "$ISSUE_BODY" \ | |
--edit-last | |
env: | |
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
ISSUE_BODY: ${{ steps.build-message-step-finish.outputs.updated-text }} | |
post_next_step_content: | |
name: Post next step content | |
needs: [find_exercise, check_step_work] | |
runs-on: ubuntu-latest | |
env: | |
ISSUE_URL: ${{ needs.find_exercise.outputs.issue-url }} | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Get response templates | |
uses: actions/checkout@v4 | |
with: | |
repository: skills/exercise-toolkit | |
path: exercise-toolkit | |
ref: v0.1.0 | |
- name: Create comment - add step content | |
run: | | |
gh issue comment "$ISSUE_URL" \ | |
--body-file ${{ env.STEP_2_FILE }} | |
env: | |
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Create comment - watching for progress | |
run: | | |
gh issue comment "$ISSUE_URL" \ | |
--body-file exercise-toolkit/markdown-templates/step-feedback/watching-for-progress.md | |
env: | |
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Disable current workflow and enable next one | |
run: | | |
gh workflow disable "Step 1" | |
gh workflow enable "Step 2" | |
env: | |
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} |