Skip to content

Conversation

@FidelusAleksander
Copy link

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:

  • Updated the .github/workflows/docker-publish.yml workflow to use official Docker actions (docker/login-action, docker/setup-qemu-action, docker/setup-buildx-action, and docker/build-push-action) for a more robust, multi-platform build and publish process. [1] [2]
  • Added dynamic Docker image tagging using docker/metadata-action, supporting multiple event triggers (push to branch, tags, pull requests, and manual dispatch) for lifecycle-based publishing.

Developer Environment Enhancements:

  • Introduced a .devcontainer/devcontainer.json file to enable a pre-configured development environment in GitHub Codespaces, including recommended VS Code extensions and Docker support.

Instructional Content Updates:

  • Replaced previous step markdown files with new, clearer instructional content for each step, focusing on practical workflow setup, usage of Docker actions, and dynamic tagging strategies. [1] [2] [3]

Cleanup and Removal of Outdated Files:

  • Removed old step files and outdated configuration, such as .github/dependabot.yml and unused instructional markdown files, to streamline the repository. [1] [2] [3] [4] [5] [6]

Changes

Closes:

Task list

  • For workflow changes, I have verified the Actions workflows function as expected.
  • For content changes, I have reviewed the style guide.

Copilot AI review requested due to automatic review settings January 2, 2026 13:36
Copy link

Copilot AI left a 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://img.shields.io/badge/Copy%20Exercise-%E2%86%92-1f883d?style=for-the-badge&logo=github&labelColor=197935)](https://github.com/new?template_owner=FidelusAleksander&template_name=publish-packages&owner=%40me&name=skills-publish-packages&description=Exercise:+Publish+Docker+Packages&visibility=public)
Copy link
Author

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

Suggested change
[![](https://img.shields.io/badge/Copy%20Exercise-%E2%86%92-1f883d?style=for-the-badge&logo=github&labelColor=197935)](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://img.shields.io/badge/Copy%20Exercise-%E2%86%92-1f883d?style=for-the-badge&logo=github&labelColor=197935)](https://github.com/new?template_owner=skills&template_name=publish-packages&owner=%40me&name=skills-publish-packages&description=Exercise:+Publish+Docker+Packages&visibility=public)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant