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
68 changes: 64 additions & 4 deletions .github/workflows/test-all.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -37,13 +37,73 @@ jobs:
"rust",
"sshd",
"terraform",
]
baseImage:
[
"ubuntu:focal",
"ubuntu:jammy",
"debian:11",
"mcr.microsoft.com/devcontainers/base:ubuntu",
"mcr.microsoft.com/devcontainers/base:debian",
]
baseImage: [ "ubuntu:focal", "ubuntu:jammy", "debian:11", "mcr.microsoft.com/vscode/devcontainers/base:ubuntu", "mcr.microsoft.com/vscode/devcontainers/base:debian" ]
steps:
- uses: actions/checkout@v2

- name: "Install latest devcontainer CLI"
run: npm install -g @devcontainers/cli@0.12.1
run: npm install -g @devcontainers/cli

- name: " Testing '${{ matrix.features }}' against '${{ matrix.baseImage }}'"
run: devcontainer features test -f ${{ matrix.features }} -i ${{ matrix.baseImage }} -c `pwd`
- name: "Generating tests for '${{ matrix.features }}' against '${{ matrix.baseImage }}'"
run: devcontainer features test --skip-scenarios -f ${{ matrix.features }} -i ${{ matrix.baseImage }} .

test-scenarios:
runs-on: ubuntu-latest
continue-on-error: true
strategy:
matrix:
features: [
"anaconda",
"aws-cli",
"azure-cli",
"common-utils",
"desktop-lite",
"docker-from-docker",
"docker-in-docker",
"dotnet",
"git",
"git-lfs",
"github-cli",
"go",
"hugo",
"java",
"kubectl-helm-minikube",
"node",
"nvidia-cuda",
"oryx",
"php",
"powershell",
"python",
"ruby",
"rust",
"sshd",
"terraform",
]
steps:
- uses: actions/checkout@v2

- name: "Install latest devcontainer CLI"
run: npm install -g @devcontainers/cli
Comment thread
joshspicer marked this conversation as resolved.

- name: "Testing '${{ matrix.features }}' scenarios"
run: devcontainer features test -f ${{ matrix.features }} --skip-autogenerated .

test-global:
runs-on: ubuntu-latest
continue-on-error: true
steps:
- uses: actions/checkout@v2

- name: "Install latest devcontainer CLI"
run: npm install -g @devcontainers/cli

- name: "Testing global scenarios"
run: devcontainer features test --global-scenarios-only .
6 changes: 3 additions & 3 deletions .github/workflows/test-manual.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ on:
workflow_dispatch:
inputs:
features:
description: "list of features to execute tests against"
description: "List of features to execute tests against"
required: true
default: "go dotnet"
baseImage:
Expand All @@ -22,7 +22,7 @@ jobs:
- uses: actions/checkout@v2

- name: "Install latest devcontainer CLI"
run: npm install -g @devcontainers/cli@0.12.1
run: npm install -g @devcontainers/cli

- name: "Testing '${{ github.event.inputs.features }}' against '${{ github.event.inputs.baseImage }}'"
run: devcontainer features test --features ${{ github.event.inputs.features }} --base-image ${{ github.event.inputs.baseImage }} --collection-folder `pwd` --log-level ${{ github.event.inputs.logLevel }}
run: devcontainer features test --features ${{ github.event.inputs.features }} --base-image ${{ github.event.inputs.baseImage }} --log-level ${{ github.event.inputs.logLevel }} .
28 changes: 22 additions & 6 deletions .github/workflows/test-pr.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
name: "PR -Test Updated Features"
name: "PR - Test Updated Features"
on:
pull_request:

Expand Down Expand Up @@ -50,14 +50,30 @@ jobs:
"ubuntu:focal",
"ubuntu:jammy",
"debian:11",
"mcr.microsoft.com/vscode/devcontainers/base:ubuntu",
"mcr.microsoft.com/vscode/devcontainers/base:debian",
"mcr.microsoft.com/devcontainers/base:ubuntu",
"mcr.microsoft.com/devcontainers/base:debian",
]
steps:
- uses: actions/checkout@v2

- name: "Install latest devcontainer CLI"
run: npm install -g @devcontainers/cli@0.12.1
run: npm install -g @devcontainers/cli

- name: "Testing '${{ matrix.features }}' against '${{ matrix.baseImage }}'"
run: devcontainer features test -f ${{ matrix.features }} -i ${{ matrix.baseImage }} -c `pwd`
- name: "Generating tests for '${{ matrix.features }}' against '${{ matrix.baseImage }}'"
run: devcontainer features test --skip-scenarios -f ${{ matrix.features }} -i ${{ matrix.baseImage }} .

test-scenarios:
needs: [detect-changes]
runs-on: ubuntu-latest
continue-on-error: true
strategy:
matrix:
features: ${{ fromJSON(needs.detect-changes.outputs.features) }}
steps:
- uses: actions/checkout@v2

- name: "Install latest devcontainer CLI"
run: npm install -g @devcontainers/cli

- name: "Testing '${{ matrix.features }}' scenarios"
run: devcontainer features test -f ${{ matrix.features }} --skip-autogenerated .
19 changes: 0 additions & 19 deletions .github/workflows/test-scenarios.yaml

This file was deleted.

14 changes: 0 additions & 14 deletions test-scenarios/install_python_twice.sh

This file was deleted.

130 changes: 0 additions & 130 deletions test-scenarios/scenarios.json

This file was deleted.

14 changes: 14 additions & 0 deletions test/_global/all_the_clis.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#!/bin/bash

set -e

# Optional: Import test library
source dev-container-features-test-lib

# Definition specific tests
check "check for aws" aws --version
check "check for gh" gh --version
check "check for azure" az --version

# Report result
reportResults
14 changes: 14 additions & 0 deletions test/_global/node_java_rust.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
#!/bin/bash

set -e

# Optional: Import test library
source dev-container-features-test-lib

# Definition specific tests
check "check for node" node --version
check "check for java" java --version
check "check for rust" rustc --version

# Report result
reportResults
18 changes: 18 additions & 0 deletions test/_global/scenarios.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"all_the_clis": {
"image": "ubuntu:focal",
"features": {
"aws-cli": {},
"azure-cli": {},
"github-cli": {}
}
},
"node_java_rust": {
"image": "ubuntu:focal",
"features": {
"node": {},
"java": {},
"rust": {}
}
}
}
File renamed without changes.
File renamed without changes.
27 changes: 27 additions & 0 deletions test/dotnet/scenarios.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
{
Comment thread
joshspicer marked this conversation as resolved.
"install_additional_dotnet": {
"image": "ubuntu:focal",
"features": {
"dotnet": {
"version": "6.0.301",
"additionalVersions": "5.0,3.1.420"
}
}
},
"install_dotnet_3": {
"image": "ubuntu:focal",
"features": {
"dotnet": {
"version": "3"
}
}
},
"install_dotnet_5": {
"image": "ubuntu:focal",
"features": {
"dotnet": {
"version": "5"
}
}
}
}
Loading