-
Notifications
You must be signed in to change notification settings - Fork 107
Refactor the exercise to issue based flow and new content #68
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This pull request refactors the exercise to transition from a step-based workflow to an issue-based flow, replacing the tic-tac-toe game with a new "Stack Overflown" game and updating the Docker publishing workflow with modern best practices and dynamic tagging strategies.
Key Changes:
- Replaced step-based workflow progression with issue-based exercise tracking using
skills/exercise-toolkit - Introduced a new web-based game (Stack Overflown) to replace the tic-tac-toe example
- Updated Docker publishing workflow to use official Docker actions with dynamic metadata-based tagging
Reviewed changes
Copilot reviewed 31 out of 31 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
README.md |
Updated to reflect new issue-based exercise flow and exercise objectives |
Dockerfile |
Added simple nginx-based Dockerfile for serving the game |
src/* |
Added new Stack Overflown game source files (HTML, CSS, JavaScript) |
.github/workflows/0-start-exercise.yml |
New workflow to initiate issue-based exercise flow |
.github/workflows/1-step.yml, 2-step.yml, 3-step.yml, 4-step.yml |
New step validation workflows using exercise toolkit |
.github/steps/*.md |
New step content files with updated instructions for Docker workflows |
.devcontainer/devcontainer.json |
Added development container configuration with Docker and actionlint support |
index.html |
Removed old tic-tac-toe game |
.github/workflows/0-welcome.yml, 1-create-the-workflow-file.yml, 2-add-a-dockerfile.yml, 3-merge-your-pull-request.yml |
Removed old step-based workflows |
.github/steps/0-welcome.md, 1-create-the-workflow-file.md, 2-add-a-dockerfile.md, 3-merge-your-pull-request.md, 4-pull-your-image.md, 5-run-your-image.md, X-finish.md |
Removed old step instruction files |
.github/dependabot.yml |
Removed dependabot configuration |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| Simply copy the exercise to your account, then give your favorite Octocat (Mona) **about 20 seconds** to prepare the first lesson, then **refresh the page**. | ||
|
|
||
| In this course, you will: | ||
| [](https://github.com/new?template_owner=FidelusAleksander&template_name=publish-packages&owner=%40me&name=skills-publish-packages&description=Exercise:+Publish+Docker+Packages&visibility=public) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Reminder to update before merge
| [](https://github.com/new?template_owner=FidelusAleksander&template_name=publish-packages&owner=%40me&name=skills-publish-packages&description=Exercise:+Publish+Docker+Packages&visibility=public) | |
| [](https://github.com/new?template_owner=skills&template_name=publish-packages&owner=%40me&name=skills-publish-packages&description=Exercise:+Publish+Docker+Packages&visibility=public) |
Summary
This pull request makes significant improvements to the GitHub Actions workflow and developer experience for publishing Docker images to GitHub Packages. The changes modernize and enhance the workflow steps, introduce dynamic tagging, and improve the instructional content for users. Below are the most important changes grouped by theme:
Workflow and Automation Improvements:
.github/workflows/docker-publish.ymlworkflow to use official Docker actions (docker/login-action,docker/setup-qemu-action,docker/setup-buildx-action, anddocker/build-push-action) for a more robust, multi-platform build and publish process. [1] [2]docker/metadata-action, supporting multiple event triggers (push to branch, tags, pull requests, and manual dispatch) for lifecycle-based publishing.Developer Environment Enhancements:
.devcontainer/devcontainer.jsonfile to enable a pre-configured development environment in GitHub Codespaces, including recommended VS Code extensions and Docker support.Instructional Content Updates:
Cleanup and Removal of Outdated Files:
.github/dependabot.ymland unused instructional markdown files, to streamline the repository. [1] [2] [3] [4] [5] [6]Changes
Closes:
Task list