mirror of
https://github.com/Unleash/unleash.git
synced 2024-12-28 00:06:53 +01:00
7cb471a0a4
We are pinning node to version 18.17.1 as we have seen some performance degregation on node 18.18.0 on arm64. We will investigate this further at a later point. This is to mitigate the issue. Our next step in pinpointing the issue will be to compare between running on musl vs libc on arm64.
64 lines
2.2 KiB
YAML
64 lines
2.2 KiB
YAML
name: Publish to dockerhub
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- main
|
|
paths-ignore:
|
|
- website/**
|
|
tags:
|
|
- 'v*'
|
|
workflow_dispatch:
|
|
inputs:
|
|
ignore-push:
|
|
description: 'Ignore push to dockerhub. If not set the image will be pushed with the sha of the commit as tag'
|
|
required: false
|
|
type: boolean
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ubuntu-latest
|
|
strategy:
|
|
matrix:
|
|
version: [18.17.1-alpine]
|
|
steps:
|
|
- name: Checkout
|
|
uses: actions/checkout@v3
|
|
- name: Setup QEmu so we can build multiplatform
|
|
uses: docker/setup-qemu-action@v2
|
|
- name: Setup Docker buildx
|
|
uses: docker/setup-buildx-action@v2
|
|
- name: Docker meta configuration
|
|
uses: docker/metadata-action@v4
|
|
id: meta
|
|
with:
|
|
images: |
|
|
unleashorg/unleash-server
|
|
tags: |
|
|
# only enabled for v* tags:
|
|
type=semver,pattern={{ version }},enable=${{ startsWith(github.ref, 'refs/tags/v') }}
|
|
type=semver,pattern={{ major.minor }},enable=${{ startsWith(github.ref, 'refs/tags/v') }}
|
|
type=semver,pattern={{ major }},enable=${{ startsWith(github.ref, 'refs/tags/v') }}
|
|
# only enabled in main:
|
|
type=edge,prefix=main-,suffix=-${{ matrix.version }},enable=${{ github.ref == 'refs/heads/main' }}
|
|
# only enabled on workflow_dispatch:
|
|
type=sha,suffix=-${{ matrix.version }},enable=${{ github.event_name == 'workflow_dispatch' }}
|
|
- name: Login to docker hub
|
|
uses: docker/login-action@v2
|
|
with:
|
|
username: ${{ secrets.DOCKERHUB_USERNAME }}
|
|
password: ${{ secrets.DOCKERHUB_TOKEN }}
|
|
- name: Build frontend
|
|
run: |
|
|
yarn --cwd ./frontend install
|
|
yarn build:frontend
|
|
- name: Build tag and push image to Docker hub
|
|
uses: docker/build-push-action@v4
|
|
with:
|
|
context: .
|
|
platforms: linux/amd64,linux/arm64
|
|
push: ${{ github.event_name != 'workflow_dispatch' || github.event.inputs.ignore-push != 'true' }}
|
|
tags: ${{ steps.meta.outputs.tags }}
|
|
labels: ${{ steps.meta.outputs.labels }}
|
|
build-args: NODE_VERSION=${{ matrix.version }}
|