Initial commit #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 0 # Start Exercise | |
on: | |
push: | |
branches: | |
- main | |
permissions: | |
contents: write # Update Readme | |
actions: write # Disable/enable workflows | |
issues: write # Create issue and comment on issues | |
env: | |
STEP_1_FILE: ".github/steps/1-dependency-graph.md" | |
jobs: | |
disable_workflows: | |
name: Disable workflows | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Disable all workflows | |
run: | | |
workflows=$(git ls-files .github/workflows | grep -E '\.yml$|\.yaml$') | |
for workflow in $workflows; do | |
workflow_name=$(basename "$workflow") | |
gh workflow disable "$workflow_name" || true | |
done | |
env: | |
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
start_exercise: | |
if: | | |
!github.event.repository.is_template | |
name: Start Exercise | |
uses: skills/exercise-toolkit/.github/workflows/[email protected] | |
with: | |
exercise-title: "Secure your Repository's Supply Chain" | |
intro-message: "Let's explore how to secure your repository's supply chain, understand dependencies in your environment, and find vulnerabilities in those dependencies and patch them. 💻✨" | |
post_next_step_content: | |
name: Post next step content | |
runs-on: ubuntu-latest | |
needs: [start_exercise] | |
env: | |
ISSUE_URL: ${{ needs.start_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.6.0 | |
- name: Build comment - add step content | |
id: build-comment | |
uses: skills/action-text-variables@v2 | |
with: | |
template-file: "${{ env.STEP_1_FILE }}" | |
template-vars: | | |
full_repo_name: "${{ github.repository }}" | |
- name: Create comment - add step content | |
run: | | |
gh issue comment "$ISSUE_URL" \ | |
--body "$ISSUE_BODY" | |
env: | |
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
ISSUE_BODY: ${{ steps.build-comment.outputs.updated-text }} | |
- 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 enable "Step 1" | |
env: | |
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} |