Skip to content

Docker Build And Push To Docker Hub #1071

Docker Build And Push To Docker Hub

Docker Build And Push To Docker Hub #1071

Workflow file for this run

name: Docker Build And Push To Docker Hub
on:
schedule:
- cron: '0 10 * * *' # everyday at 10am
push:
tags:
- 'v*.*.*'
# pull_request:
env:
DOCKER_REPOSITORY: webase-front
DOCKER_FISCO_TAG: v2.8.0
DOCKER_FISCO_REPOSITORY: fisco-webase
jobs:
# webase-front
main:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- uses: actions/setup-java@v1
with:
java-version: 8
- uses: eskatos/gradle-command-action@v1
with:
arguments: clean build -x test
- name: Get branch name
uses: nelonoel/branch-name@v1.0.1
- name: Fetch tag
run: |
git fetch --tags --force
- name: Get git tag
uses: little-core-labs/get-git-tag@v3.0.1
id: tag_data
with:
tagRegex: (.*) # Optional. Returns specified group text as tag name. Full tag string is returned if regex is not defined.
tagRegexGroup: 1 # Optional. Default is 1.
- name: Set docker tag from tag
id: set_docker_tag
run: |
[[ ${{github.ref}} == */tags/* ]] && DOCKER_TAG="${GIT_TAG_NAME}" || DOCKER_TAG="${BRANCH_NAME}"
DOCKER_TAG="${{ secrets.DOCKER_WEBASEPRO_ORG }}/${DOCKER_REPOSITORY}:${DOCKER_TAG}"
echo "New docker tag is ${DOCKER_TAG}"
echo "::set-output name=docker_tag::$(echo ${DOCKER_TAG})"
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Login to DockerHub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKER_WEBASEPRO_USERNAME }}
password: ${{ secrets.DOCKER_WEBASEPRO_TOKEN }}
# - name: Copy nginx config file
# id: copy-nginx-file
# run: |
# cp ./docker/weoracle-web.conf dist/
- name: Build and push
id: docker_build
uses: docker/build-push-action@v2
with:
context: ./dist
push: true
file: ./docker/build/Dockerfile
platforms: linux/amd64
tags: ${{ steps.set_docker_tag.outputs.docker_tag }}
- name: Image digest
run: echo ${{ steps.docker_build.outputs.digest }}
# fisco-webase
fisco:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- uses: actions/setup-java@v1
with:
java-version: 8
- uses: eskatos/gradle-command-action@v1
with:
arguments: clean build -x test
- name: Get branch name
uses: nelonoel/branch-name@v1.0.1
- name: Fetch tag
run: |
git fetch --tags --force
- name: Get git tag
uses: little-core-labs/get-git-tag@v3.0.1
id: tag_data
with:
tagRegex: (.*) # Optional. Returns specified group text as tag name. Full tag string is returned if regex is not defined.
tagRegexGroup: 1 # Optional. Default is 1.
# todo get fisco's tag. temporarily use variable of DOCKER_FISCO_TAG
- name: Set docker tag from tag
id: set_docker_tag
run: |
DOCKER_TAG="${DOCKER_FISCO_TAG}"
DOCKER_TAG="${{ secrets.DOCKERHUB_ORG }}/${DOCKER_FISCO_REPOSITORY}:${DOCKER_TAG}"
echo "New docker tag is ${DOCKER_FISCO_TAG}"
echo "::set-output name=docker_tag::$(echo ${DOCKER_FISCO_TAG})"
- name: Set up QEMU
uses: docker/setup-qemu-action@v1
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v1
- name: Login to DockerHub
uses: docker/login-action@v1
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Build and push
id: docker_build
uses: docker/build-push-action@v2
with:
context: .
push: true
file: ./docker/fisco/Dockerfile
platforms: linux/amd64
tags: ${{ steps.set_docker_tag.outputs.docker_tag }}
- name: Image digest
run: echo ${{ steps.docker_build.outputs.digest }}