mirror of
https://github.com/DeNNiiInc/dbgate.git
synced 2026-05-02 23:03:58 +00:00
single docker builder
This commit is contained in:
140
.github/workflows/build-docker-beta.yaml
vendored
140
.github/workflows/build-docker-beta.yaml
vendored
@@ -1,140 +0,0 @@
|
|||||||
name: Docker image BETA
|
|
||||||
|
|
||||||
# on: [push]
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
tags:
|
|
||||||
- 'v[0-9]+.[0-9]+.[0-9]+-beta.[0-9]+'
|
|
||||||
- 'v[0-9]+.[0-9]+.[0-9]+-docker.[0-9]+'
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build:
|
|
||||||
|
|
||||||
runs-on: ${{ matrix.os }}
|
|
||||||
|
|
||||||
strategy:
|
|
||||||
matrix:
|
|
||||||
os: [ubuntu-18.04]
|
|
||||||
|
|
||||||
steps:
|
|
||||||
- name: Context
|
|
||||||
env:
|
|
||||||
GITHUB_CONTEXT: ${{ toJson(github) }}
|
|
||||||
run: echo "$GITHUB_CONTEXT"
|
|
||||||
- uses: actions/checkout@v2
|
|
||||||
with:
|
|
||||||
fetch-depth: 1
|
|
||||||
|
|
||||||
- name: Docker meta
|
|
||||||
id: meta
|
|
||||||
uses: docker/metadata-action@v4
|
|
||||||
with:
|
|
||||||
images: |
|
|
||||||
dbgate/dbgate
|
|
||||||
flavor: |
|
|
||||||
latest=false
|
|
||||||
tags: |
|
|
||||||
type=match,pattern=\d+.\d+.\d+,suffix=-beta,enable=${{ contains(github.ref_name, '-docker.') || contains(github.ref_name, '-beta.') }}
|
|
||||||
type=raw,value=beta,enable=${{ contains(github.ref_name, '-docker.') || contains(github.ref_name, '-beta.') }}
|
|
||||||
|
|
||||||
type=match,pattern=\d+.\d+.\d+,enable=${{ !contains(github.ref_name, '-docker.') && !contains(github.ref_name, '-beta.') }}
|
|
||||||
type=raw,value=latest,enable=${{ !contains(github.ref_name, '-docker.') && !contains(github.ref_name, '-beta.') }}
|
|
||||||
|
|
||||||
- name: Docker alpine meta
|
|
||||||
id: alpmeta
|
|
||||||
uses: docker/metadata-action@v4
|
|
||||||
with:
|
|
||||||
images: |
|
|
||||||
dbgate/dbgate
|
|
||||||
flavor: |
|
|
||||||
latest=false
|
|
||||||
tags: |
|
|
||||||
type=match,pattern=\d+.\d+.\d+,suffix=-beta-alpine,enable=${{ contains(github.ref_name, '-docker.') || contains(github.ref_name, '-beta.') }}
|
|
||||||
type=raw,value=beta-alpine,enable=${{ contains(github.ref_name, '-docker.') || contains(github.ref_name, '-beta.') }}
|
|
||||||
|
|
||||||
type=match,pattern=\d+.\d+.\d+,suffix=-alpine,enable=${{ !contains(github.ref_name, '-docker.') && !contains(github.ref_name, '-beta.') }}
|
|
||||||
type=raw,value=alpine,enable=${{ !contains(github.ref_name, '-docker.') && !contains(github.ref_name, '-beta.') }}
|
|
||||||
|
|
||||||
- name: Use Node.js 14.x
|
|
||||||
uses: actions/setup-node@v1
|
|
||||||
with:
|
|
||||||
node-version: 14.x
|
|
||||||
- name: yarn install
|
|
||||||
run: |
|
|
||||||
# yarn --version
|
|
||||||
# yarn config set network-timeout 300000
|
|
||||||
yarn install
|
|
||||||
- name: setCurrentVersion
|
|
||||||
run: |
|
|
||||||
yarn setCurrentVersion
|
|
||||||
- name: Prepare docker image
|
|
||||||
run: |
|
|
||||||
yarn run prepare:docker
|
|
||||||
|
|
||||||
- name: Set up Docker Buildx
|
|
||||||
uses: docker/setup-buildx-action@v2
|
|
||||||
- name: Login to DockerHub
|
|
||||||
uses: docker/login-action@v2
|
|
||||||
with:
|
|
||||||
username: ${{ secrets.DOCKER_USERNAME }}
|
|
||||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
|
||||||
|
|
||||||
- name: Build and push
|
|
||||||
uses: docker/build-push-action@v3
|
|
||||||
with:
|
|
||||||
push: true
|
|
||||||
context: ./docker
|
|
||||||
tags: ${{ steps.meta.outputs.tags }}
|
|
||||||
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
|
||||||
|
|
||||||
- name: Build and push alpine
|
|
||||||
uses: docker/build-push-action@v3
|
|
||||||
with:
|
|
||||||
push: true
|
|
||||||
context: ./docker
|
|
||||||
file: ./docker/Dockerfile-alpine
|
|
||||||
tags: ${{ steps.alpmeta.outputs.tags }}
|
|
||||||
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
|
||||||
|
|
||||||
# - name: Build docker image
|
|
||||||
# run: |
|
|
||||||
# docker build ./docker -t dbgate
|
|
||||||
# - name: Push docker image
|
|
||||||
# run: |
|
|
||||||
# docker tag dbgate dbgate/dbgate:beta
|
|
||||||
# docker tag dbgate ${{ steps.meta.outputs.tags }}
|
|
||||||
# docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }}
|
|
||||||
# docker push dbgate/dbgate:beta
|
|
||||||
# docker push ${{ steps.meta.outputs.tags }}
|
|
||||||
|
|
||||||
# - name: Build alpine docker image
|
|
||||||
# run: |
|
|
||||||
# docker build ./docker -t dbgate -f docker/Dockerfile-alpine
|
|
||||||
# - name: Push alpine docker image
|
|
||||||
# run: |
|
|
||||||
# docker tag dbgate dbgate/dbgate:beta-alpine
|
|
||||||
# docker tag dbgate ${{ steps.alpmeta.outputs.tags }}
|
|
||||||
# docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }}
|
|
||||||
# docker push dbgate/dbgate:beta-alpine
|
|
||||||
# docker push ${{ steps.alpmeta.outputs.tags }}
|
|
||||||
|
|
||||||
# - name: Build docker
|
|
||||||
# uses: mr-smithers-excellent/docker-build-push@v3
|
|
||||||
# with:
|
|
||||||
# image: dbgate/dbgate
|
|
||||||
# registry: docker.io
|
|
||||||
# dockerfile: docker/Dockerfile
|
|
||||||
# username: ${{ secrets.DOCKER_USERNAME }}
|
|
||||||
# password: ${{ secrets.DOCKER_PASSWORD }}
|
|
||||||
# tags: ${{ steps.meta.outputs.tags }},beta
|
|
||||||
|
|
||||||
# - name: Build docker alpine
|
|
||||||
# uses: mr-smithers-excellent/docker-build-push@v3
|
|
||||||
# with:
|
|
||||||
# image: dbgate/dbgate
|
|
||||||
# registry: docker.io
|
|
||||||
# dockerfile: docker/Dockerfile-alpine
|
|
||||||
# username: ${{ secrets.DOCKER_USERNAME }}
|
|
||||||
# password: ${{ secrets.DOCKER_PASSWORD }}
|
|
||||||
# tags: ${{ steps.alpmeta.outputs.tags }},beta-alpine
|
|
||||||
84
.github/workflows/build-docker.yaml
vendored
84
.github/workflows/build-docker.yaml
vendored
@@ -1,17 +1,11 @@
|
|||||||
name: Docker image
|
name: Docker image
|
||||||
|
|
||||||
# on: [push]
|
|
||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
tags:
|
tags:
|
||||||
- 'v[0-9]+.[0-9]+.[0-9]+'
|
- 'v[0-9]+.[0-9]+.[0-9]+'
|
||||||
# - 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10
|
- 'v[0-9]+.[0-9]+.[0-9]+-beta.[0-9]+'
|
||||||
|
- 'v[0-9]+.[0-9]+.[0-9]+-docker.[0-9]+'
|
||||||
# on:
|
|
||||||
# push:
|
|
||||||
# branches:
|
|
||||||
# - production
|
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build:
|
build:
|
||||||
@@ -30,12 +24,45 @@ jobs:
|
|||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
with:
|
with:
|
||||||
fetch-depth: 1
|
fetch-depth: 1
|
||||||
|
|
||||||
|
- name: Docker meta
|
||||||
|
id: meta
|
||||||
|
uses: docker/metadata-action@v4
|
||||||
|
with:
|
||||||
|
images: |
|
||||||
|
dbgate/dbgate
|
||||||
|
flavor: |
|
||||||
|
latest=false
|
||||||
|
tags: |
|
||||||
|
type=match,pattern=\d+.\d+.\d+,suffix=-beta,enable=${{ contains(github.ref_name, '-docker.') || contains(github.ref_name, '-beta.') }}
|
||||||
|
type=raw,value=beta,enable=${{ contains(github.ref_name, '-docker.') || contains(github.ref_name, '-beta.') }}
|
||||||
|
|
||||||
|
type=match,pattern=\d+.\d+.\d+,enable=${{ !contains(github.ref_name, '-docker.') && !contains(github.ref_name, '-beta.') }}
|
||||||
|
type=raw,value=latest,enable=${{ !contains(github.ref_name, '-docker.') && !contains(github.ref_name, '-beta.') }}
|
||||||
|
|
||||||
|
- name: Docker alpine meta
|
||||||
|
id: alpmeta
|
||||||
|
uses: docker/metadata-action@v4
|
||||||
|
with:
|
||||||
|
images: |
|
||||||
|
dbgate/dbgate
|
||||||
|
flavor: |
|
||||||
|
latest=false
|
||||||
|
tags: |
|
||||||
|
type=match,pattern=\d+.\d+.\d+,suffix=-beta-alpine,enable=${{ contains(github.ref_name, '-docker.') || contains(github.ref_name, '-beta.') }}
|
||||||
|
type=raw,value=beta-alpine,enable=${{ contains(github.ref_name, '-docker.') || contains(github.ref_name, '-beta.') }}
|
||||||
|
|
||||||
|
type=match,pattern=\d+.\d+.\d+,suffix=-alpine,enable=${{ !contains(github.ref_name, '-docker.') && !contains(github.ref_name, '-beta.') }}
|
||||||
|
type=raw,value=alpine,enable=${{ !contains(github.ref_name, '-docker.') && !contains(github.ref_name, '-beta.') }}
|
||||||
|
|
||||||
- name: Use Node.js 14.x
|
- name: Use Node.js 14.x
|
||||||
uses: actions/setup-node@v1
|
uses: actions/setup-node@v1
|
||||||
with:
|
with:
|
||||||
node-version: 14.x
|
node-version: 14.x
|
||||||
- name: yarn install
|
- name: yarn install
|
||||||
run: |
|
run: |
|
||||||
|
# yarn --version
|
||||||
|
# yarn config set network-timeout 300000
|
||||||
yarn install
|
yarn install
|
||||||
- name: setCurrentVersion
|
- name: setCurrentVersion
|
||||||
run: |
|
run: |
|
||||||
@@ -43,19 +70,28 @@ jobs:
|
|||||||
- name: Prepare docker image
|
- name: Prepare docker image
|
||||||
run: |
|
run: |
|
||||||
yarn run prepare:docker
|
yarn run prepare:docker
|
||||||
- name: Build docker image
|
|
||||||
run: |
|
- name: Set up Docker Buildx
|
||||||
docker build ./docker -t dbgate
|
uses: docker/setup-buildx-action@v2
|
||||||
- name: Push docker image
|
- name: Login to DockerHub
|
||||||
run: |
|
uses: docker/login-action@v2
|
||||||
docker tag dbgate dbgate/dbgate
|
with:
|
||||||
docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }}
|
username: ${{ secrets.DOCKER_USERNAME }}
|
||||||
docker push dbgate/dbgate
|
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||||
- name: Build alpine docker image
|
|
||||||
run: |
|
- name: Build and push
|
||||||
docker build ./docker -t dbgate -f docker/Dockerfile-alpine
|
uses: docker/build-push-action@v3
|
||||||
- name: Push alpine docker image
|
with:
|
||||||
run: |
|
push: true
|
||||||
docker tag dbgate dbgate/dbgate:alpine
|
context: ./docker
|
||||||
docker login -u ${{ secrets.DOCKER_USERNAME }} -p ${{ secrets.DOCKER_PASSWORD }}
|
tags: ${{ steps.meta.outputs.tags }}
|
||||||
docker push dbgate/dbgate:alpine
|
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
||||||
|
|
||||||
|
- name: Build and push alpine
|
||||||
|
uses: docker/build-push-action@v3
|
||||||
|
with:
|
||||||
|
push: true
|
||||||
|
context: ./docker
|
||||||
|
file: ./docker/Dockerfile-alpine
|
||||||
|
tags: ${{ steps.alpmeta.outputs.tags }}
|
||||||
|
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
||||||
|
|||||||
Reference in New Issue
Block a user