Dev #210
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# +-----------------------------------------------+ | |
# | WARNING: This file is generated, do not edit! | | |
# | Edit _templates/dev.yml.erb instead. | | |
# +-----------------------------------------------+ | |
name: Dev | |
on: | |
workflow_dispatch: | |
push: | |
branches-ignore: | |
- master | |
jobs: | |
lint: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Install npm dependencies | |
run: npm install | |
- name: Lint - check formatting | |
run: npm run lint:formatting | |
# run a common set of tests against ALL images | |
smoke-tests: | |
needs: [lint] | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
base: | |
- clojure | |
tag: | |
- clojure | |
target: | |
- linux | |
include: | |
- base: clojure:boot | |
tag: clojure-boot | |
target: linux | |
- base: clojure:lein | |
tag: clojure-lein | |
target: linux | |
- base: clojure:tools-deps | |
tag: clojure-tools-deps | |
target: linux | |
- base: elixir | |
tag: elixir | |
target: linux | |
- base: elixir:1.10 | |
tag: elixir-1.10 | |
target: linux | |
- base: elixir:1.11 | |
tag: elixir-1.11 | |
target: linux | |
- base: elixir:1.12 | |
tag: elixir-1.12 | |
target: linux | |
- base: golang | |
tag: golang | |
target: linux | |
- base: golang:1.20 | |
tag: golang-1.20 | |
target: linux | |
- base: golang:1.21 | |
tag: golang-1.21 | |
target: linux | |
- base: golang:1.22 | |
tag: golang-1.22 | |
target: linux | |
- base: gradle | |
tag: gradle | |
target: linux | |
- base: gradle:jdk11 | |
tag: gradle-jdk11 | |
target: linux | |
- base: gradle:jdk12 | |
tag: gradle-jdk12 | |
target: linux | |
- base: gradle:jdk13 | |
tag: gradle-jdk13 | |
target: linux | |
- base: gradle:jdk14 | |
tag: gradle-jdk14 | |
target: linux | |
- base: gradle:jdk16 | |
tag: gradle-jdk16 | |
target: linux | |
- base: gradle:jdk17 | |
tag: gradle-jdk17 | |
target: linux | |
- base: gradle:jdk18 | |
tag: gradle-jdk18 | |
target: linux | |
- base: gradle:jdk19 | |
tag: gradle-jdk19 | |
target: linux | |
- base: gradle:jdk20 | |
tag: gradle-jdk20 | |
target: linux | |
- base: gradle:jdk21 | |
tag: gradle-jdk21 | |
target: linux | |
- base: gradle:jdk8 | |
tag: gradle-jdk8 | |
target: linux | |
- base: maven | |
tag: maven | |
target: linux | |
- base: maven:3-eclipse-temurin-17 | |
tag: maven-3-jdk-17 | |
target: linux | |
- base: maven:3-eclipse-temurin-20 | |
tag: maven-3-jdk-20 | |
target: linux | |
- base: maven:3-eclipse-temurin-21 | |
tag: maven-3-jdk-21 | |
target: linux | |
- base: maven:3-eclipse-temurin-22 | |
tag: maven-3-jdk-22 | |
target: linux | |
- base: maven:3-jdk-11 | |
tag: maven-3-jdk-11 | |
target: linux | |
- base: maven:3-jdk-8 | |
tag: maven-3-jdk-8 | |
target: linux | |
- base: mcr.microsoft.com/dotnet/core/sdk | |
tag: dotnet | |
target: linux | |
- base: mcr.microsoft.com/dotnet/sdk:8.0 | |
tag: dotnet-8.0 | |
target: linux | |
- base: node | |
tag: node | |
target: linux | |
- base: node:18 | |
tag: node-18 | |
target: linux | |
- base: node:20 | |
tag: node-20 | |
target: linux | |
- base: node:22 | |
tag: node-22 | |
target: linux | |
- base: python | |
tag: python | |
target: linux | |
- base: python:3.8 | |
tag: python-3.8 | |
target: linux | |
- base: python:3.9 | |
tag: python-3.9 | |
target: linux | |
- base: python:3.10 | |
tag: python-3.10 | |
target: linux | |
- base: python:3.11 | |
tag: python-3.11 | |
target: linux | |
- base: python:3.12 | |
tag: python-3.12 | |
target: linux | |
- base: ruby | |
tag: ruby | |
target: linux | |
- base: ruby:3.3 | |
tag: ruby-3.3 | |
target: linux | |
- base: swift | |
tag: swift | |
target: linux | |
- base: ubuntu | |
tag: linux | |
target: linux | |
- base: sbtscala/scala-sbt:eclipse-temurin-jammy-22_36_1.10.0_3.4.2 | |
tag: sbt1.10.0-scala3.4.2 | |
target: linux | |
- base: alpine | |
tag: alpine | |
target: alpine | |
- base: alpine | |
tag: cocoapods | |
target: alpine | |
- base: composer | |
tag: composer | |
target: alpine | |
- base: composer | |
tag: php | |
target: alpine | |
- base: docker:latest | |
tag: docker | |
target: alpine | |
- base: docker:latest | |
tag: docker-latest | |
target: alpine | |
- base: python:alpine | |
tag: python-alpine | |
target: alpine | |
- base: ruby:alpine | |
tag: ruby-alpine | |
target: alpine | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Build all images | |
uses: docker/build-push-action@v2 | |
with: | |
push: false | |
tags: ${{ matrix.tag }} | |
file: Dockerfile | |
target: ${{ matrix.target }} | |
build-args: | | |
IMAGE=${{ matrix.base }} | |
TAG=${{ matrix.tag }} | |
- name: Show images | |
run: docker image ls | |
- name: Install npm dependencies | |
run: npm install | |
- name: Run tests | |
run: npm run test:smoke | |
env: | |
SNYK_TOKEN: ${{secrets.SNYK_TOKEN}} | |
IMAGE_TAG: ${{ matrix.tag }} | |
# Select tests against specific images | |
image-specific-tests: | |
needs: [lint] | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Build `python-3.8` image for test | |
uses: docker/build-push-action@v2 | |
with: | |
push: false | |
tags: python-3.8 | |
file: Dockerfile | |
target: linux | |
build-args: | | |
IMAGE=python:3.8 | |
TAG=python-3.8 | |
- name: Show images | |
run: docker image ls | |
- name: Install npm dependencies | |
run: npm install | |
- name: Run tests | |
run: npx jest test/image-specific/python-3-poetry.spec.ts | |
env: | |
SNYK_TOKEN: ${{secrets.SNYK_TOKEN}} |