Build and push images #302
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
name: Build and push images | |
on: | |
push: | |
branches: | |
- master | |
paths: | |
- "*" | |
- "!README.md" | |
- "!build.rb" | |
schedule: | |
# As well as running when we make changes we should run at least | |
# every week in order to pick up new parent images and new versions of Snyk | |
- cron: "0 0 * * 0" | |
workflow_dispatch: | |
jobs: | |
build: | |
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.12 | |
tag: elixir-1.12 | |
target: linux | |
- base: elixir:1.11 | |
tag: elixir-1.11 | |
target: linux | |
- base: elixir:1.10 | |
tag: elixir-1.10 | |
target: linux | |
- base: golang | |
tag: golang | |
target: linux | |
- base: golang:1.12 | |
tag: golang-1.12 | |
target: linux | |
- base: golang:1.13 | |
tag: golang-1.13 | |
target: linux | |
- base: golang:1.14 | |
tag: golang-1.14 | |
target: linux | |
- base: golang:1.15 | |
tag: golang-1.15 | |
target: linux | |
- base: golang:1.16 | |
tag: golang-1.16 | |
target: linux | |
- base: golang:1.17 | |
tag: golang-1.17 | |
target: linux | |
- base: golang:1.18 | |
tag: golang-1.18 | |
target: linux | |
- base: golang:1.19 | |
tag: golang-1.19 | |
target: linux | |
- base: golang:1.20 | |
tag: golang-1.20 | |
target: linux | |
- base: golang:1.21 | |
tag: golang-1.21 | |
target: linux | |
- base: gradle | |
tag: gradle | |
target: linux | |
- base: gradle:6.4 | |
tag: gradle-6.4 | |
target: linux | |
- base: gradle:6.4-jdk11 | |
tag: gradle-6.4-jdk11 | |
target: linux | |
- base: gradle:6.4-jdk14 | |
tag: gradle-6.4-jdk14 | |
target: linux | |
- base: gradle:6.4-jdk8 | |
tag: gradle-6.4-jdk8 | |
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:jdk8 | |
tag: gradle-jdk8 | |
target: linux | |
- base: hseeberger/scala-sbt:8u212_1.2.8_2.13.0 | |
tag: sbt | |
target: linux | |
- base: hseeberger/scala-sbt:8u212_1.2.8_2.13.0 | |
tag: scala | |
target: linux | |
- base: maven | |
tag: maven | |
target: linux | |
- base: maven:3-jdk-11 | |
tag: maven-3-jdk-11 | |
target: linux | |
- base: maven:3-eclipse-temurin-17 | |
tag: maven-3-jdk-17 | |
target: linux | |
- base: maven:3-eclipse-temurin-19 | |
tag: maven-3-jdk-19 | |
target: linux | |
- base: maven:3-eclipse-temurin-20 | |
tag: maven-3-jdk-20 | |
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/core/sdk:2.1 | |
tag: dotnet-2.1 | |
target: linux | |
- base: mcr.microsoft.com/dotnet/core/sdk:2.2 | |
tag: dotnet-2.2 | |
target: linux | |
- base: mcr.microsoft.com/dotnet/core/sdk:3.0 | |
tag: dotnet-3.0 | |
target: linux | |
- base: mcr.microsoft.com/dotnet/core/sdk:3.1 | |
tag: dotnet-3.1 | |
target: linux | |
- base: node | |
tag: node | |
target: linux | |
- base: node:10 | |
tag: node-10 | |
target: linux | |
- base: node:12 | |
tag: node-12 | |
target: linux | |
- base: node:13 | |
tag: node-13 | |
target: linux | |
- base: node:14 | |
tag: node-14 | |
target: linux | |
- base: node:15 | |
tag: node-15 | |
target: linux | |
- base: node:16 | |
tag: node-16 | |
target: linux | |
- base: node:8 | |
tag: node-8 | |
target: linux | |
- base: python | |
tag: python | |
target: linux | |
- base: python:2.7 | |
tag: python-2.7 | |
target: linux | |
- base: python:3.6 | |
tag: python-3.6 | |
target: linux | |
- base: python:3.7 | |
tag: python-3.7 | |
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: ruby | |
tag: ruby | |
target: linux | |
- base: ruby:2.4 | |
tag: ruby-2.4 | |
target: linux | |
- base: ruby:2.5 | |
tag: ruby-2.5 | |
target: linux | |
- base: ruby:2.6 | |
tag: ruby-2.6 | |
target: linux | |
- base: ruby:2.7 | |
tag: ruby-2.7 | |
target: linux | |
- base: ubuntu | |
tag: linux | |
target: linux | |
- base: alpine | |
tag: alpine | |
target: alpine | |
- base: alpine | |
tag: cocoapods | |
target: alpine | |
- base: alpine | |
tag: swift | |
target: alpine | |
- base: composer | |
tag: composer | |
target: alpine | |
- base: composer | |
tag: php | |
target: alpine | |
- base: docker:18.09 | |
tag: docker-18.09 | |
target: alpine | |
- base: docker:19.03 | |
tag: docker-19.03 | |
target: alpine | |
- base: docker:latest | |
tag: docker-latest | |
target: alpine | |
- base: docker:latest | |
tag: docker | |
target: alpine | |
- base: python:alpine | |
tag: python-alpine | |
target: alpine | |
- base: ruby:alpine | |
tag: ruby-alpine | |
target: alpine | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: docker/build-push-action@v1 | |
env: | |
DOCKER_BUILDKIT: "1" | |
with: | |
username: ${{ secrets.DOCKER_USERNAME }} | |
password: ${{ secrets.DOCKER_PASSWORD }} | |
add_git_labels: true | |
target: ${{ matrix.target }} | |
repository: snyk/snyk | |
tags: ${{ matrix.tag }} | |
build_args: IMAGE=${{ matrix.base }},TAG=${{ matrix.tag }} |