Automate multi arch builds on GitHub Actions (#65)

This commit is contained in:
Luke Childs 2021-10-12 22:08:37 +01:00 committed by GitHub
parent 550590c891
commit ae0dcbb302
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 45 additions and 12 deletions

39
.github/workflows/on-master-push.yml vendored Normal file
View File

@ -0,0 +1,39 @@
name: Build on master push
on:
push:
branches:
- master
env:
DOCKER_CLI_EXPERIMENTAL: enabled
jobs:
build:
name: Build Docker image
runs-on: ubuntu-18.04
env:
VERSION: 1.16.0
steps:
- name: Login to Docker Hub
run: echo "${{ secrets.DOCKER_PASSWORD }}" | docker login -u lukechilds --password-stdin
- name: Checkout project
uses: actions/checkout@v2
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
id: qemu
- name: Setup Docker buildx action
uses: docker/setup-buildx-action@v1
id: buildx
- name: Run Docker buildx
run: |
docker buildx build \
--platform linux/amd64,linux/arm64 \
--build-arg VERSION=$VERSION \
--tag lukechilds/electrumx:v$VERSION \
--tag lukechilds/electrumx:latest \
--output "type=registry" .

View File

@ -1,7 +0,0 @@
sudo: required
services:
- docker
script: docker build -t electrumx .
notifications:
email:
on_success: never

View File

@ -1,11 +1,13 @@
ARG VERSION=1.16.0
FROM python:3.7-alpine3.11 FROM python:3.7-alpine3.11
LABEL maintainer="Luke Childs <lukechilds123@gmail.com>" LABEL maintainer="Luke Childs <lukechilds123@gmail.com>"
COPY ./bin /usr/local/bin ARG VERSION
COPY ./VERSION /tmp
RUN VERSION=$(cat /tmp/VERSION) && \ COPY ./bin /usr/local/bin
chmod a+x /usr/local/bin/* && \
RUN chmod a+x /usr/local/bin/* && \
apk add --no-cache git build-base openssl && \ apk add --no-cache git build-base openssl && \
apk add --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/v3.11/main leveldb-dev && \ apk add --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/v3.11/main leveldb-dev && \
apk add --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/edge/testing rocksdb-dev && \ apk add --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/edge/testing rocksdb-dev && \

View File

@ -1 +0,0 @@
1.16.0