mirror of
https://github.com/gramps-project/gramps-web.git
synced 2026-04-18 05:08:34 -04:00
55 lines
1.6 KiB
YAML
55 lines
1.6 KiB
YAML
name: Build Docker image
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
push:
|
|
branches:
|
|
- main
|
|
release:
|
|
types:
|
|
- created
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: checkout code
|
|
uses: actions/checkout@v2
|
|
- uses: actions/setup-node@v2
|
|
with:
|
|
node-version: "16"
|
|
- name: Install and Build
|
|
run: |
|
|
npm install
|
|
npm run build
|
|
- name: Set up QEMU
|
|
uses: docker/setup-qemu-action@v1
|
|
- name: Set up Docker Buildx
|
|
id: buildx
|
|
uses: docker/setup-buildx-action@v1
|
|
with:
|
|
install: true
|
|
- name: Builder instance name
|
|
run: echo ${{ steps.buildx.outputs.name }}
|
|
- name: Available platforms
|
|
run: echo ${{ steps.buildx.outputs.platforms }}
|
|
- name: Login to GitHub Container Registry
|
|
uses: docker/login-action@v1
|
|
with:
|
|
registry: ghcr.io
|
|
username: ${{ github.actor }}
|
|
password: ${{ secrets.GITHUB_TOKEN }}
|
|
- name: tag and push devel image
|
|
run: |
|
|
docker build --push \
|
|
--tag ghcr.io/gramps-project/grampsweb:latest-devel \
|
|
--platform linux/amd64,linux/arm/v7,linux/arm64 \
|
|
-f Dockerfile.devel .
|
|
- name: tag and push release image
|
|
if: github.event_name == 'release'
|
|
run: |
|
|
docker build --push \
|
|
--tag ghcr.io/gramps-project/grampsweb:${{ github.event.release.tag_name }} \
|
|
--tag ghcr.io/gramps-project/grampsweb:latest \
|
|
--platform linux/amd64,linux/arm/v7,linux/arm64 .
|