Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions .github/actions/setup-compose/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: Set up Compose build workaround
description: Disable Bake filesystem entitlement checks for Compose 2.38.x and 5.6.x patch releases.

runs:
using: composite
steps:
- name: Check Compose version
shell: bash
run: |
version=$(docker compose version --short)
echo "Compose version: $version"
# Temporary workaround for https://github.com/devcontainers/cli/issues/1320.
if [[ "${version#v}" =~ ^(2\.38|5\.6)\.[0-9]+$ ]]; then
echo "::warning::Disabling Bake filesystem and default SSH-agent consent checks for Compose $version."
echo "BUILDX_BAKE_ENTITLEMENTS_FS=0" >> "$GITHUB_ENV"
fi
2 changes: 2 additions & 0 deletions .github/workflows/test-pr.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,8 @@ jobs:
fi
fi

- uses: ./.github/actions/setup-compose

- name: Run Smoke Test
run: |
template_id="${{ matrix.templates }}"
Expand Down
5 changes: 3 additions & 2 deletions src/cpp-mariadb/devcontainer-template.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"id": "cpp-mariadb",
"version": "4.1.0",
"version": "4.1.1",
"name": "C++ & MariaDB",
"description": "Develop C++ applications on Linux. Includes Debian C++ build tools.",
"documentationURL": "https://github.com/devcontainers/templates/tree/main/src/cpp-mariadb",
Expand All @@ -9,10 +9,11 @@
"options": {
"imageVariant": {
"type": "string",
"description": "Debian / Ubuntu version (use Debian 13, Debian 12, Ubuntu 24.04, and Ubuntu 22.04 on local arm64/Apple Silicon):",
"description": "Debian / Ubuntu version (use Debian 13, Debian 12, Ubuntu 26.04, Ubuntu 24.04, and Ubuntu 22.04 on local arm64/Apple Silicon):",
"proposals": [
"debian13",
"debian12",
"ubuntu26.04",
"ubuntu24.04",
"ubuntu22.04"
],
Expand Down
5 changes: 3 additions & 2 deletions src/cpp/devcontainer-template.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"id": "cpp",
"version": "4.1.1",
"version": "4.1.2",
"name": "C++",
"description": "Develop C++ applications on Linux. Includes Debian C++ build tools.",
"documentationURL": "https://github.com/devcontainers/templates/tree/main/src/cpp",
Expand All @@ -9,10 +9,11 @@
"options": {
"imageVariant": {
"type": "string",
"description": "Debian / Ubuntu version (use debian13, debian12, ubuntu24.04, and ubuntu22.04 on local arm64/Apple Silicon):",
"description": "Debian / Ubuntu version (use debian13, debian12, ubuntu26.04, ubuntu24.04, and ubuntu22.04 on local arm64/Apple Silicon):",
"proposals": [
"debian13",
"debian12",
"ubuntu26.04",
"ubuntu24.04",
"ubuntu22.04"
],
Expand Down
5 changes: 3 additions & 2 deletions src/javascript-node-mongo/devcontainer-template.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"id": "javascript-node-mongo",
"version": "6.0.2",
"version": "6.0.3",
"name": "Node.js & Mongo DB",
"description": "Develop applications in Node.js and Mongo DB. Includes Node.js, eslint, and yarn in a container linked to a Mongo DB.",
"documentationURL": "https://github.com/devcontainers/templates/tree/main/src/javascript-node-mongo",
Expand All @@ -11,10 +11,11 @@
"type": "string",
"description": "Node.js version (use -bookworm variants on local arm64/Apple Silicon):",
"proposals": [
"26-bookworm",
"24-bookworm",
"22-bookworm"
],
"default": "24-bookworm"
"default": "26-bookworm"
}
},
"platforms": [
Expand Down
6 changes: 4 additions & 2 deletions src/javascript-node-postgres/devcontainer-template.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"id": "javascript-node-postgres",
"version": "6.0.2",
"version": "6.0.3",
"name": "Node.js & PostgreSQL",
"description": "Develop applications in Node.js and PostgreSQL. Includes Node.js, eslint, and yarn in a container linked to a Postgres DB container",
"documentationURL": "https://github.com/devcontainers/templates/tree/main/src/javascript-node-postgres",
Expand All @@ -11,12 +11,14 @@
"type": "string",
"description": "Node.js version (use -trixie or -bookworm variants on local arm64/Apple Silicon):",
"proposals": [
"26-trixie",
"24-trixie",
"22-trixie",
"26-bookworm",
"24-bookworm",
"22-bookworm"
],
"default": "24-trixie"
"default": "26-trixie"
}
},
"platforms": [
Expand Down
6 changes: 4 additions & 2 deletions src/javascript-node/devcontainer-template.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"id": "javascript-node",
"version": "6.0.2",
"version": "6.0.3",
"name": "Node.js & JavaScript",
"description": "Develop Node.js based applications. Includes Node.js, eslint, nvm, and yarn.",
"documentationURL": "https://github.com/devcontainers/templates/tree/main/src/javascript-node",
Expand All @@ -11,12 +11,14 @@
"type": "string",
"description": "Node.js version (use -trixie or -bookworm variants on local arm64/Apple Silicon):",
"proposals": [
"26-trixie",
"24-trixie",
"22-trixie",
"26-bookworm",
"24-bookworm",
"22-bookworm"
],
"default": "24-trixie"
"default": "26-trixie"
}
},
"platforms": [
Expand Down
6 changes: 4 additions & 2 deletions src/postgres/devcontainer-template.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"id": "postgres",
"version": "3.0.1",
"version": "3.0.2",
"name": "Python 3 & PostgreSQL",
"description": "Develop applications with Python 3 and PostgreSQL. Includes a Python application container and PostgreSQL server.",
"documentationURL": "https://github.com/devcontainers/templates/tree/main/src/postgres",
Expand All @@ -11,18 +11,20 @@
"type": "string",
"description": "Python version (use -trixie or -bookworm variants on local arm64/Apple Silicon):",
"proposals": [
"3.15-trixie",
"3.14-trixie",
"3.13-trixie",
"3.12-trixie",
"3.11-trixie",
"3.10-trixie",
"3.15-bookworm",
"3.14-bookworm",
"3.13-bookworm",
"3.12-bookworm",
"3.11-bookworm",
"3.10-bookworm"
],
"default": "3.14-trixie"
"default": "3.15-trixie"
}
},
"platforms": ["Python"],
Expand Down
6 changes: 4 additions & 2 deletions src/python/devcontainer-template.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"id": "python",
"version": "6.0.0",
"version": "6.0.1",
"name": "Python 3",
"description": "Develop Python 3 applications.",
"documentationURL": "https://github.com/devcontainers/templates/tree/main/src/python",
Expand All @@ -12,19 +12,21 @@
"description": "Python version (use -trixie, or -bookworm variants on local arm64/Apple Silicon):",
"proposals": [
"3-trixie",
"3.15-trixie",
"3.14-trixie",
"3.13-trixie",
"3.12-trixie",
"3.11-trixie",
"3.10-trixie",
"3-bookworm",
"3.15-bookworm",
"3.14-bookworm",
"3.13-bookworm",
"3.12-bookworm",
"3.11-bookworm",
"3.10-bookworm"
],
"default": "3.14-trixie"
"default": "3.15-trixie"
}
},
"platforms": ["Python"],
Expand Down
6 changes: 4 additions & 2 deletions src/typescript-node/devcontainer-template.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"id": "typescript-node",
"version": "6.0.2",
"version": "6.0.3",
"name": "Node.js & TypeScript",
"description": "Develop Node.js based applications in TypeScript. Includes Node.js, eslint, nvm, yarn, and the TypeScript compiler.",
"documentationURL": "https://github.com/devcontainers/templates/tree/main/src/typescript-node",
Expand All @@ -11,12 +11,14 @@
"type": "string",
"description": "Node.js version (use -trixie or -bookworm variants on local arm64/Apple Silicon):",
"proposals": [
"26-trixie",
"24-trixie",
"22-trixie",
"26-bookworm",
"24-bookworm",
"22-bookworm"
],
"default": "24-trixie"
"default": "26-trixie"
}
},
"platforms": [
Expand Down
4 changes: 4 additions & 0 deletions test/javascript-node-mongo/test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@ cd $(dirname "$0")

source test-utils.sh node

check "corepack_setup" bash -c 'sudo npm install --global --force corepack@0.36.0 && corepack_path=$(command -v corepack) && sudo env "PATH=$PATH" "$corepack_path" enable && "$corepack_path" prepare yarn@4.9.4 --activate'
check "yarn_version_new" yarn --version

# Remote - Containers does not auto-sync UID/GID for Docker Compose,
# so make sure test project prvs match the non-root user in the container.
fixTestProjectFolderPrivs
Expand All @@ -14,6 +17,7 @@ checkCommon
checkExtension "dbaeumer.vscode-eslint"
check "node" node --version
sudo rm -f yarn.lock
touch yarn.lock
check "yarn" yarn install
sudo rm -f package-lock.json
check "npm" npm install
Expand Down
4 changes: 4 additions & 0 deletions test/javascript-node-postgres/test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@ cd $(dirname "$0")

source test-utils.sh node

check "corepack_setup" bash -c 'sudo npm install --global --force corepack@0.36.0 && corepack_path=$(command -v corepack) && sudo env "PATH=$PATH" "$corepack_path" enable && "$corepack_path" prepare yarn@4.9.4 --activate'
check "yarn_version_new" yarn --version

# Remote - Containers does not auto-sync UID/GID for Docker Compose,
# so make sure test project prvs match the non-root user in the container.
fixTestProjectFolderPrivs
Expand All @@ -14,6 +17,7 @@ checkCommon
checkExtension "dbaeumer.vscode-eslint"
check "node" node --version
sudo rm -f yarn.lock
touch yarn.lock
check "yarn" yarn install
sudo rm -f package-lock.json
check "npm" npm install
Expand Down
4 changes: 4 additions & 0 deletions test/javascript-node/test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,17 @@ cd $(dirname "$0")

source test-utils.sh node

check "corepack_setup" bash -c 'sudo npm install --global --force corepack@0.36.0 && corepack_path=$(command -v corepack) && sudo env "PATH=$PATH" "$corepack_path" enable && "$corepack_path" prepare yarn@4.9.4 --activate'
check "yarn_version_new" yarn --version

# Run common tests
checkCommon

# template specific tests
checkExtension "dbaeumer.vscode-eslint"
check "node" node --version
sudo rm -f yarn.lock
touch yarn.lock
check "yarn" yarn install
sudo rm -f package-lock.json
check "npm" npm install
Expand Down
5 changes: 5 additions & 0 deletions test/typescript-node/test.sh
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,18 @@ cd $(dirname "$0")

source test-utils.sh node

check "corepack_setup" bash -c 'sudo npm install --global --force corepack@0.36.0 && corepack_path=$(command -v corepack) && sudo env "PATH=$PATH" "$corepack_path" enable && "$corepack_path" prepare yarn@4.9.4 --activate'
export YARN_NODE_LINKER=node-modules
check "yarn_version_new" yarn --version
Comment thread
v-Kaniska244 marked this conversation as resolved.
Resolved

# Run common tests
checkCommon

# template specific tests
checkExtension "dbaeumer.vscode-eslint"
check "node" node --version
sudo rm -f yarn.lock
touch yarn.lock
check "yarn" yarn install
sudo rm -f package-lock.json
check "eslint" eslint --no-warn-ignored src/server.ts
Expand Down
Loading