Skip to content

fix: incomplete hello message #2

fix: incomplete hello message

fix: incomplete hello message #2

name: Step 1
on:
push:
branches:
- main
permissions:
contents: read
actions: write
issues: write
env:
STEP_2_FILE: ".github/steps/2-custom-image.md"
jobs:
check_commits_count:
name: Check commits count
runs-on: ubuntu-latest
if: |
github.event_name == 'push' &&
github.ref == 'refs/heads/main'
outputs:
total_commits: ${{ steps.get_commit_counts.outputs.total_commits }}
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0 # Fetch all history for all branches and tags
- name: Get commit count
id: get_commit_counts
run: |
total_commits=$(git rev-list --all --count)
echo "Total commits in the repository: $total_commits"
echo "total_commits=$total_commits" >> $GITHUB_OUTPUT
find_exercise:
needs: [check_commits_count]
if: needs.check_commits_count.outputs.total_commits > 1
name: Find Exercise Issue
uses: skills/exercise-toolkit/.github/workflows/find-exercise-issue.yml@v0.5.0
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: Checkout
uses: actions/checkout@v4
- name: Get response templates
uses: actions/checkout@v4
with:
repository: skills/exercise-toolkit
path: exercise-toolkit
ref: v0.5.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 }}
# START: Check practical exercise
- name: Check for hello message
id: check-hello-message
continue-on-error: true
uses: skills/action-keyphrase-checker@v1
with:
text-file: src/hello.py
keyphrase: "Hello World"
case-sensitive: false
minimum-occurrences: 1
- name: Build message - step results
id: build-message-step-results
uses: skills/action-text-variables@v2
with:
template-file: exercise-toolkit/markdown-templates/step-feedback/step-results-table.md
template-vars: |
step_number: 1
passed: ${{ !contains(steps.*.outcome, 'failure') }}
results_table:
- description: "Hello message fixed in hello.py"
passed: ${{ steps.check-hello-message.outcome == 'success' }}
- name: Create comment - step results
run: |
gh issue comment "$ISSUE_URL" \
--body "$COMMENT_BODY" \
--edit-last
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
COMMENT_BODY: ${{ steps.build-message-step-results.outputs.updated-text }}
- name: Fail job if not all checks passed
if: contains(steps.*.outcome, 'failure')
run: exit 1
# END: Check practical exercise
- name: Build message - step finished
id: build-message-step-finish
uses: skills/action-text-variables@v2
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"
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.5.0
- name: Create comment - add step content
run: |
gh issue comment "$ISSUE_URL" \
--body-file "$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 }}