Skip to content

Add devcontainer profiles for various workshop scenarios - #1478

Closed
mnkiefer wants to merge 9 commits into
mainfrom
devcontainer-files
Closed

Add devcontainer profiles for various workshop scenarios#1478
mnkiefer wants to merge 9 commits into
mainfrom
devcontainer-files

Conversation

@mnkiefer

Copy link
Copy Markdown
Contributor
  • Adds auto-generated devcontainer profiles for the following scenarios:

    • Codespaces Terminal: daily-docs, daily-status, foundation, pr-reviewer
    • Copilot Agent: daily-docs, daily-status, foundation, pr-reviewer
    • GitHub UI: daily-docs, daily-status, foundation, pr-reviewer
    • Local Terminal: daily-docs, daily-status, foundation, pr-reviewer
  • Adds the script to generate these workshop devcontainer configurations dynamically.

  • Each profile includes necessary VS Code extensions and settings for a seamless development experience.

@mnkiefer mnkiefer self-assigned this Jul 18, 2026
@pelikhan

Copy link
Copy Markdown
Contributor

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>

Copilot AI commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

@copilot use copilot-cli features

https://github.com/devcontainers/features/pkgs/container/features%2Fcopilot-cli

Updated in b7b9685: profile generation now uses the official ghcr.io/devcontainers/features/copilot-cli:1 devcontainer feature, and regenerated all workshop profile devcontainer.json files accordingly.

Copilot AI requested a review from pelikhan July 18, 2026 12:03
@pelikhan

Copy link
Copy Markdown
Contributor

@copilot add gh feature, extend permissions with issues/pullrequests write

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>

Copilot AI commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

@copilot add gh feature, extend permissions with issues/pullrequests write

Implemented in 63599f0: added ghcr.io/devcontainers/features/github-cli:1 and extended repository permissions with issues and pull_requests set to write (including regenerated workshop profile devcontainers).

@mnkiefer

Copy link
Copy Markdown
Contributor Author

@copilot Follow this shape for a working devcontainer file for a single scenario/path to correctly open the brower, install packages and init:

{
  "name": "gh-aw workshop: codespaces terminal / foundation",
  "image": "mcr.microsoft.com/devcontainers/base:ubuntu-24.04",
  "features": {
    "ghcr.io/devcontainers/features/github-cli:1": {},
    "ghcr.io/devcontainers/features/node:1": {
      "version": "lts"
    }
  },
  "customizations": {
    "vscode": {
      "extensions": [
        "GitHub.copilot",
        "GitHub.copilot-chat"
      ],
      "settings": {
        "gh-aw-workshop.profileVersion": 1,
        "gh-aw-workshop.generatedBy": "workshop/examples/devcontainers/scripts/generate-workshop-devcontainers.js",
        "gh-aw-workshop.profileId": "codespaces-terminal__foundation",
        "gh-aw-workshop.tutorialBaseUrl": "https://github.github.com/gh-aw/workshop/",
        "gh-aw-workshop.hashFormat": "#j=<journeyId>&s=<scenarioId>&t=<stepKey>",
        "gh-aw-workshop.startupCommandId": "simpleBrowser.show",
        "gh-aw-workshop.launchUrl": "https://github.github.com/gh-aw/workshop/#j=codespaces-terminal&s=foundation&t=02a-setup-codespace",
        "gh-aw-workshop.journeyId": "codespaces-terminal",
        "gh-aw-workshop.scenarioId": "foundation",
        "gh-aw-workshop.workflowFile": ".github/workflows/daily-report-status.md",
        "gh-aw-workshop.stepKeys": [
          "02a-setup-codespace",
          "03a-create-your-repo-terminal",
          "06a-install-terminal",
          "07a-your-first-workflow-terminal",
          "07a-part2-your-first-workflow-instructions",
          "07d-confirm-model-access",
          "08-run-your-workflow"
        ]
      }
    }
  },
  "postCreateCommand": "bash -lc 'gh extension install github/gh-copilot --force && npm install -g @github/copilot@latest'",
  "postAttachCommand": "bash -lc 'printf \"\\nWorkshop URL: https://github.github.com/gh-aw/workshop/#j=codespaces-terminal&s=foundation&t=02a-setup-codespace\\n\\n\"; gh --version; node --version'"
}

Copilot AI and others added 3 commits July 18, 2026 12:21
Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>
Co-authored-by: mnkiefer <8320933+mnkiefer@users.noreply.github.com>

Copilot AI commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

@copilot Follow this shape for a working devcontainer file for a single scenario/path to correctly open the brower, install packages and init:

{

...

Implemented in ead281c: generator and generated profile devcontainers now follow the provided working shape (base Ubuntu image, github-cli + node features, post-create package init, and post-attach workshop URL/version checks).

@pelikhan

Copy link
Copy Markdown
Contributor

@copilot merge main and align with journey/afventure metadata

#1538

Copilot AI and others added 3 commits July 19, 2026 08:21
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
…ntmatter

Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>
Co-authored-by: pelikhan <4175913+pelikhan@users.noreply.github.com>

Copilot AI commented Jul 19, 2026

Copy link
Copy Markdown
Contributor

@copilot merge main and align with journey/afventure metadata

#1538

Done in 4cea773, 3ff93f2, and 06b455a: merged main (including #1538) and aligned generated devcontainer/profile metadata with workshop journey/adventure frontmatter (journeys/adventures now emitted in profile settings and profile-map.json).

@mnkiefer

Copy link
Copy Markdown
Contributor Author
  • Closing for now until tags become more consistent/reliable

@mnkiefer mnkiefer closed this Jul 20, 2026
@mnkiefer
mnkiefer deleted the devcontainer-files branch July 21, 2026 15:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants