Skip to content

Build Supplychain App Corda Images #32

Build Supplychain App Corda Images

Build Supplychain App Corda Images #32

##############################################################################################
# Copyright Accenture. All Rights Reserved.
#
# SPDX-License-Identifier: Apache-2.0
##############################################################################################
# Build Supplychain-App Corda docker images triggered by :
# - push on main branch for latest tags
# - create tag vx.y.z for release tags
# - Can be triggered manually
name: Build Supplychain App Corda Images
on:
workflow_dispatch:
push:
branches:
- main
paths:
- 'examples/supplychain-app/corda/express_nodeJS/**'
- 'examples/supplychain-app/corda/cordApps_springBoot/**'
- '.github/workflows/img_supplychain_corda.yml'
env:
REGISTRY: ghcr.io
IMAGE_PATH: ghcr.io/${{ github.repository_owner }}
jobs:
# on push to main branch, create docker tags latest
corda-latest:
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout
uses: actions/checkout@v3
- uses: actions/setup-java@v3
with:
distribution: 'adopt'
java-version: '8'
- name: Build the Webservers
run: |
WDIR=`pwd`
java -version
cd ${WDIR}/examples/supplychain-app/corda/cordApps_springBoot
./gradlew deployWebapps
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
- name: Set up QEMU
uses: docker/setup-qemu-action@v2
- name: Login to the container registry
uses: docker/login-action@v2
with:
registry: ${{ env.REGISTRY }}
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Lowercase IMAGE_PATH
id: image_path_format
uses: ASzc/change-string-case-action@v5
with:
string: ${{ env.IMAGE_PATH }}
- name: Build and push supplychain app latest
id: corda_express_latest
uses: docker/build-push-action@v4
with:
context: examples/supplychain-app/corda/express_nodeJS
push: true
tags: ${{ steps.image_path_format.outputs.lowercase }}/bevel-supplychain-corda:express-app-latest
- name: Build and push supplychain springboot
id: corda_springboot_latest
uses: docker/build-push-action@v4
with:
context: examples/supplychain-app/corda/cordApps_springBoot
push: true
tags: ${{ steps.image_path_format.outputs.lowercase }}/bevel-supplychain-corda:springboot-latest