71949b8536
I have no idea how this even got here, git blame shows that this was done when the Nginx image was merged.
134 lines
4.7 KiB
YAML
134 lines
4.7 KiB
YAML
name: Docker Multi-Architecture Build
|
|
|
|
on:
|
|
push:
|
|
paths-ignore:
|
|
- "**.md"
|
|
branches:
|
|
- dev-indep
|
|
|
|
jobs:
|
|
cpython-build-docker:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2.3.4
|
|
with:
|
|
fetch-depth: 0
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v1.2.0
|
|
with:
|
|
platforms: all
|
|
- name: Set up Docker Buildx
|
|
id: buildx
|
|
uses: docker/setup-buildx-action@v1.5.1
|
|
with:
|
|
version: latest
|
|
- name: Login to DockerHub
|
|
uses: docker/login-action@v1.10.0
|
|
with:
|
|
username: ${{ secrets.DOCKER_USERNAME }}
|
|
password: ${{ secrets.DOCKER_PASSWORD }}
|
|
- name: Get hash of latest image
|
|
run: docker pull python:3-alpine && docker inspect --format='{{index .RepoDigests 0}}' python:3-alpine > dockerhash.txt
|
|
- name: Write the current version to a file
|
|
run: "{ git describe --tags --abbrev=0 & date +\"%d-%m-%y\" & git rev-list HEAD --max-count=1 --abbrev-commit;} > version.txt"
|
|
- name: cache docker cache
|
|
uses: actions/cache@v2.1.6
|
|
with:
|
|
path: ${{ github.workspace }}/cache
|
|
key: ${{ runner.os }}-docker-cpython-${{ hashFiles('**/requirements.txt') }}-${{ hashFiles('**/dockerhash.txt') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-docker-cpython-
|
|
- name: Build and push
|
|
uses: docker/build-push-action@v2.6.1
|
|
with:
|
|
context: .
|
|
file: ./Dockerfile
|
|
platforms: linux/amd64,linux/arm64
|
|
push: true
|
|
tags: ytorg/yotter:latest
|
|
cache-from: type=local,src=cache
|
|
cache-to: type=local,dest=cache
|
|
pypy-build-docker:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2.3.4
|
|
with:
|
|
fetch-depth: 0
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v1.2.0
|
|
with:
|
|
platforms: all
|
|
- name: Set up Docker Buildx
|
|
id: buildx
|
|
uses: docker/setup-buildx-action@v1.5.1
|
|
with:
|
|
version: latest
|
|
- name: Login to DockerHub
|
|
uses: docker/login-action@v1.10.0
|
|
with:
|
|
username: ${{ secrets.DOCKER_USERNAME }}
|
|
password: ${{ secrets.DOCKER_PASSWORD }}
|
|
- name: Get hash of latest image
|
|
run: docker pull pypy:3-slim-buster && docker inspect --format='{{index .RepoDigests 0}}' pypy:3-slim-buster > dockerhash.txt
|
|
- name: Write the current version to a file
|
|
run: "{ git describe --tags --abbrev=0 & date +\"%d-%m-%y\" & git rev-list HEAD --max-count=1 --abbrev-commit;} > version.txt"
|
|
- name: cache docker cache
|
|
uses: actions/cache@v2.1.6
|
|
with:
|
|
path: ${{ github.workspace }}/cache
|
|
key: ${{ runner.os }}-docker-pypy-${{ hashFiles('**/requirements.txt') }}-${{ hashFiles('**/dockerhash.txt') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-docker-pypy-
|
|
- name: Build and push
|
|
uses: docker/build-push-action@v2.6.1
|
|
with:
|
|
context: .
|
|
file: ./pypy.Dockerfile
|
|
platforms: linux/amd64,linux/arm64
|
|
push: true
|
|
tags: ytorg/yotter:pypy
|
|
cache-from: type=local,src=cache
|
|
cache-to: type=local,dest=cache
|
|
nginx-build-docker:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@v2.3.4
|
|
with:
|
|
fetch-depth: 0
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v1.2.0
|
|
with:
|
|
platforms: all
|
|
- name: Set up Docker Buildx
|
|
id: buildx
|
|
uses: docker/setup-buildx-action@v1.5.1
|
|
with:
|
|
version: latest
|
|
- name: Login to DockerHub
|
|
uses: docker/login-action@v1.10.0
|
|
with:
|
|
username: ${{ secrets.DOCKER_USERNAME }}
|
|
password: ${{ secrets.DOCKER_PASSWORD }}
|
|
- name: Get hash of latest image
|
|
run: docker pull nginx:mainline-alpine && docker inspect --format='{{index .RepoDigests 0}}' nginx:mainline-alpine > dockerhash.txt
|
|
- name: Write the current version to a file
|
|
run: "{ git describe --tags --abbrev=0 & date +\"%d-%m-%y\" & git rev-list HEAD --max-count=1 --abbrev-commit;} > version.txt"
|
|
- name: cache docker cache
|
|
uses: actions/cache@v2.1.6
|
|
with:
|
|
path: ${{ github.workspace }}/cache
|
|
key: ${{ runner.os }}-docker-nginx-${{ hashFiles('**/dockerhash.txt') }}
|
|
restore-keys: |
|
|
${{ runner.os }}-docker-nginx-
|
|
- name: Build and push
|
|
uses: docker/build-push-action@v2.6.1
|
|
with:
|
|
context: .
|
|
file: ./Dockerfile
|
|
platforms: linux/amd64,linux/arm64
|
|
push: true
|
|
tags: ytorg/nginx:latest
|
|
cache-from: type=local,src=cache
|
|
cache-to: type=local,dest=cache
|