Skip to content

chore: add test to pipeline #33

chore: add test to pipeline

chore: add test to pipeline #33

Workflow file for this run

name: Build, Test and Deploy
on: [ push, workflow_dispatch ]
jobs:
build:
name: Determine templates
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Build dist
run: npm run build
- name: Upload artifact
uses: actions/upload-artifact@v3
with:
name: dist
path: dist/
setup:
name: Setup environment
runs-on: ubuntu-latest
needs: build
outputs:
matrix: ${{ steps.get-variants.outputs.variants }}
steps:
- name: Download artifact
uses: actions/download-artifact@v3
with:
name: dist
path: ./dist
- name: Get list of variants for an image
id: get-variants
run: echo "variants=$(jq -c . ./dist/variant-matrix.json)" >> $GITHUB_ENV
test:
name: Run test on images
runs-on: ubuntu-latest
needs: setup
strategy:
matrix:
include: ${{ fromJson(needs.setup.outputs.matrix) }}
fail-fast: false
steps:
- name: Run test for ${{ matrix.template }}
env:
VARIANT: ${{ matrix.variant }}
run: test/${{ matrix.template }}/test.sh
# - name: Run test for ${{ matrix.template }}
# env:
# VARIANT: ${{ matrix.variant }}
# run: test/${{ matrix.template }}/test.sh
# - name: Checkout
# uses: actions/checkout@v4
# - name: Setup Node
# uses: actions/setup-node@v4
# with:
# node-version: 22
# cache: npm
# - name: Install dependencies
# run: npm ci
# - name: Run test for ${{ matrix.template }}
# env:
# VARIANT: ${{ matrix.variant }}
# run: test/${{ matrix.template }}/test.sh
# build:
# name: Build devcontainer images
# runs-on: ubuntu-latest
# needs:
# - setup
# - test
# strategy:
# matrix:
# template: ${{ fromJson(needs.setup.outputs.template_dirs) }}
# variant: [
# "22-bookworm",
# "22-bullseye",
# "20-bookworm",
# "20-bullseye",
# "18-bookworm",
# "18-bullseye"
# ]
# fail-fast: false
# steps:
# - name: Checkout
# uses: actions/checkout@v4
# - name: Install devcontainer cli
# run: npm install -g @devcontainers/cli
# - name: Build image ${{ matrix.template }}/${{ matrix.variant }}
# env:
# TEMPLATE: ${{ matrix.template }}
# VARIANT: ${{ matrix.variant }}
# run: scripts/build.sh
# # - name: Build devcontainer
# # run: |
# # echo "starting devcontainer build..."
# # devcontainer build \
# # --workspace-folder tmp/src/${{ matrix.template }}/${{ matrix.variant }}/ \
# # --image-name ghcr.io/The-Nefarious-Developer/${{ matrix.template }}:${{ matrix.variant }} \
# # # --no-cache true