Skip to content

chore(release): publish #24

chore(release): publish

chore(release): publish #24

# Copyright IBM Corp. All Rights Reserved.
#
# SPDX-License-Identifier: CC-BY-4.0
name: Deploy Corda Packages
env:
DOCKER_REGISTRY: ghcr.io/${{ github.repository_owner }}
on:
push:
tags:
- v*
# Allows you to run this workflow manually from the Actions tab
workflow_dispatch:
jobs:
publish-protos-java-kt:
runs-on: ubuntu-22.04
permissions:
packages: write
contents: read
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/[email protected]
- name: Set up JDK 17
uses: actions/[email protected]
with:
java-version: '17'
distribution: 'adopt'
- name: Generate github.properties
run: |
echo "Using ${GITHUB_ACTOR} user."
echo "username=${GITHUB_ACTOR}" >> github.properties
echo "password=${{ secrets.GITHUB_TOKEN }}" >> github.properties
echo "url=https://maven.pkg.github.com/${GITHUB_REPOSITORY_OWNER}/cacti" >> github.properties
cat github.properties
working-directory: weaver/common/protos-java-kt
- name: Publish
run: |
make publish > out 2> error
exitStatus=$?
cat out
cat error
(cat error | grep "Received status code 409 from server: Conflict" && exit 0) || exit $exitStatus
working-directory: weaver/common/protos-java-kt
publish-interop-app:
if: always()
needs: publish-protos-java-kt
runs-on: ubuntu-22.04
permissions:
packages: write
contents: read
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/[email protected]
- name: Set up JDK 17
uses: actions/[email protected]
with:
java-version: '17'
distribution: 'adopt'
- name: Generate github.properties
run: |
echo "Using ${GITHUB_ACTOR} user."
echo "username=${GITHUB_ACTOR}" >> github.properties
echo "password=${{ secrets.GITHUB_TOKEN }}" >> github.properties
echo "url=https://maven.pkg.github.com/${GITHUB_REPOSITORY_OWNER}/cacti" >> github.properties
cat github.properties
working-directory: weaver/core/network/corda-interop-app
- name: Build
run: make build
working-directory: weaver/core/network/corda-interop-app
- name: Publish
run: |
make publish > out 2> error
exitStatus=$?
cat out
cat error
(cat error | grep "Received status code 409 from server: Conflict" && exit 0) || exit $exitStatus
working-directory: weaver/core/network/corda-interop-app
publish-sdk:
if: always()
needs: [publish-protos-java-kt, publish-interop-app]
runs-on: ubuntu-22.04
permissions:
packages: write
contents: read
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/[email protected]
- name: Set up JDK 17
uses: actions/[email protected]
with:
java-version: '17'
distribution: 'adopt'
- name: Generate github.properties
run: |
echo "Using ${GITHUB_ACTOR} user."
echo "username=${GITHUB_ACTOR}" >> github.properties
echo "password=${{ secrets.GITHUB_TOKEN }}" >> github.properties
echo "url=https://maven.pkg.github.com/${GITHUB_REPOSITORY_OWNER}/cacti" >> github.properties
cat github.properties
working-directory: weaver/sdks/corda
- name: Build
run: make build
working-directory: weaver/sdks/corda
- name: Publish
run: |
make publish > out 2> error
exitStatus=$?
cat out
cat error
(cat error | grep "Received status code 409 from server: Conflict" && exit 0) || exit $exitStatus
working-directory: weaver/sdks/corda
publish-driver-image:
if: always()
needs: [publish-protos-java-kt, publish-interop-app, publish-sdk]
runs-on: ubuntu-22.04
permissions:
packages: write
contents: read
steps:
# Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- uses: actions/[email protected]
- name: Login to GitHub Container Registry
uses: docker/[email protected]
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Generate github.properties
run: |
echo "Using ${GITHUB_ACTOR} user."
echo "username=${GITHUB_ACTOR}" >> github.properties
echo "password=${{ secrets.GITHUB_TOKEN }}" >> github.properties
echo "url=https://maven.pkg.github.com/${GITHUB_REPOSITORY_OWNER}/cacti" >> github.properties
cat github.properties
working-directory: weaver/core/drivers/corda-driver
- name: Check if package already exists
run: (make check-if-tag-exists DOCKER_REGISTRY=${DOCKER_REGISTRY} && echo "CORDA_DRIVER_PUSH=true" >> $GITHUB_ENV) || echo "CORDA_DRIVER_PUSH=false" >> $GITHUB_ENV
working-directory: weaver/core/drivers/corda-driver
- name: Build and Push
if: ${{ env.CORDA_DRIVER_PUSH == 'true' }}
run: make push-image DOCKER_REGISTRY=${DOCKER_REGISTRY}
working-directory: weaver/core/drivers/corda-driver
- name: Push latest tag
if: ${{ env.CORDA_DRIVER_PUSH == 'true' }}
run: make push-image-latest DOCKER_REGISTRY=${DOCKER_REGISTRY}
working-directory: weaver/core/drivers/corda-driver