aboutsummaryrefslogtreecommitdiff
path: root/.github/workflows/test-pr.yaml
diff options
context:
space:
mode:
authorJosh Spicer <joshspicer@github.com>2022-05-26 02:56:12 +0300
committerGitHub <noreply@github.com>2022-05-26 02:56:12 +0300
commit04f5d29fd077718a364fa79c76e103e5c0f3c1ad (patch)
tree91a7901e79e12d8e980b2614abaa08297f9545e7 /.github/workflows/test-pr.yaml
parentf86091f02dfd16e122f420906d422616a60c27cd (diff)
smart PR action (#23)
* attempt at update action * Update test-pr.yaml * make a change to a source file * try out a few * easy case * filter * try a two-feature key * without jup * overthinking? * naming * changes * all * remove comments
Diffstat (limited to '.github/workflows/test-pr.yaml')
-rw-r--r--.github/workflows/test-pr.yaml53
1 files changed, 53 insertions, 0 deletions
diff --git a/.github/workflows/test-pr.yaml b/.github/workflows/test-pr.yaml
new file mode 100644
index 0000000..96a81d9
--- /dev/null
+++ b/.github/workflows/test-pr.yaml
@@ -0,0 +1,53 @@
+name: "Test updated features (PR)"
+on:
+ pull_request:
+
+jobs:
+ detect-changes:
+ runs-on: ubuntu-latest
+ outputs:
+ features: ${{ steps.filter.outputs.changes }}
+ steps:
+ - uses: dorny/paths-filter@v2
+ id: filter
+ with:
+ filters: |
+ anaconda: ./**/anaconda/**
+ aws-cli: ./**/aws-cli/**
+ azure-cli: ./**/azure-cli/**
+ common: ./**/common/**
+ desktop-lite: ./**/desktop-lite/**
+ docker-from-docker: ./**/docker-from-docker/**
+ docker-in-docker: ./**/docker-in-docker/**
+ dotnet: ./**/dotnet/**
+ git: ./**/git/**
+ git-lfs: ./**/git-lfs/**
+ github-cli: ./**/github-cli/**
+ go: ./**/go/**
+ gradle: ./**/gradle/**
+ hugo: ./**/hugo/**
+ java: ./**/java/**
+ jekyll: ./**/jekyll/**
+ 'python jupyterlab': ./**/jupyterlab/**
+ kubectl-helm-minikube: ./**/kubectl-helm-minikube/**
+ maven: ./**/maven/**
+ node: ./**/node/**
+ php: ./**/php/**
+ powershell: ./**/powershell/**
+ python: ./**/python/**
+ ruby: ./**/ruby/**
+ rust: ./**/rust/**
+ sshd: ./**/sshd/**
+ terraform: ./**/terraform/**
+
+ test:
+ needs: detect-changes
+ runs-on: ubuntu-latest
+ strategy:
+ matrix:
+ features: ${{ fromJSON(needs.detect-changes.outputs.features) }}
+ baseImage: [ "ubuntu:focal" ]
+ steps:
+ - uses: actions/checkout@v2
+ - name: " Testing '${{ matrix.features }}' against '${{ matrix.baseImage }}'"
+ run: npx --yes ./devcontainers-cli-0.3.0.tgz features test -f ${{ matrix.features }} -i ${{ matrix.baseImage }} -c `pwd` \ No newline at end of file