Skip to content

Commit

Permalink
Merge pull request #32 from PSNAppz/1.0.0
Browse files Browse the repository at this point in the history
Example bank workflow and docker changes
  • Loading branch information
venky-ganapathy authored Oct 1, 2024
2 parents 31e7520 + 7853a2d commit 0d0bf96
Show file tree
Hide file tree
Showing 15 changed files with 274 additions and 120 deletions.
Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
name: Bridge Example Bank API Docker Publish
name: Example Bank API Branch Workflow

on:
push:
workflow_dispatch:
branches-ignore:
- develop
tags-ignore:
- '*'

jobs:
docker-build:
name: Docker Build and Push
docker-build-for-branch:
name: Docker Build and Push For API Branch
runs-on: ubuntu-latest
env:
NAMESPACE: ${{ secrets.docker_hub_organisation || 'openg2p' }}
Expand All @@ -22,15 +25,12 @@ jobs:
# Change all uppercase to lowercase
IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]')
VERSION=$BRANCH_NAME
if [[ $BRANCH_NAME == master || $BRANCH_NAME == main ]]; then
VERSION=develop
fi
echo IMAGE_ID=$IMAGE_ID
echo VERSION=$VERSION
echo IMAGE_ID=$IMAGE_ID >> $GITHUB_ENV
echo VERSION=$VERSION >> $GITHUB_ENV
docker build ./openg2p-g2p-bridge-example-bank-api \
docker build ./openg2p-g2p-bridge-example-bank-api -f ./openg2p-g2p-bridge-example-bank-api/Dockerfile-git \
--tag $IMAGE_ID:$VERSION
if [[ '${{ secrets.docker_hub_token }}' != '' && '${{ secrets.docker_hub_actor }}' != '' ]]; then
export DOCKER_PUSH="true"
Expand Down
96 changes: 96 additions & 0 deletions .github/workflows/api-tag.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
name: Example Bank API Tag Workflow

on:
push:
tags:
- "*"
branches-ignore:
- '*'
workflow_dispatch:

jobs:
publish-to-pypi:
name: Publish to PyPI For API Tag
runs-on: ubuntu-latest
steps:
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.10"
- uses: actions/checkout@v3
- name: Install build dependencies
run: pip install build
- name: Build distribution
run: python -m build ./openg2p-g2p-bridge-example-bank-api
- name: Publish
uses: pypa/gh-action-pypi-publish@release/v1
with:
password: ${{ secrets.PYPI_API_TOKEN }}
packages-dir: ./openg2p-g2p-bridge-example-bank-api/dist/

openapi-publish:
name: OpenAPI Generate and Publish For API Tag
needs: publish-to-pypi
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Get branch name (merge)
run: |
echo "TAG_NAME=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV
- name: Setup python for openapi generate
uses: actions/setup-python@v4
with:
python-version: "3.10"
- name: Install app
run: |
python -m pip install git+https://github.com/openg2p/openg2p-fastapi-common@develop\#subdirectory=openg2p-fastapi-common
python -m pip install git+https://github.com/openg2p/openg2p-fastapi-common@develop\#subdirectory=openg2p-fastapi-auth
python -m pip install git+https://github.com/openg2p/openg2p-g2p-bridge-example-bank@develop\#subdirectory=openg2p-g2p-bridge-example-bank-models
python -m pip install openg2p-g2p-bridge-example-bank-api==develop
- name: Generate openapi json
run: |
mkdir -p openg2p-g2p-bridge-example-bank-api/api-docs/generated
python3 openg2p-g2p-bridge-example-bank-api/main.py getOpenAPI openg2p-g2p-bridge-example-bank-api/api-docs/generated/openapi.json
- name: Setup nodejs
uses: actions/setup-node@v4
with:
node-version: '18'
- name: Publish to stoplight
run: |
npx @stoplight/cli@5 push --ci-token ${{ secrets.STOPLIGHT_PROJECT_TOKEN }} --url https://openg2p.stoplight.io --branch ${{ env.TAG_NAME }} --directory openg2p-g2p-bridge-example-bank-api/api-docs/generated
docker-build-for-tag:
name: Docker Build and Push For API Tag
needs: publish-to-pypi
runs-on: ubuntu-latest
env:
NAMESPACE: ${{ secrets.docker_hub_organisation || 'openg2p' }}
SERVICE_NAME: openg2p-g2p-bridge-example-bank-api
steps:
- uses: actions/checkout@v3
- name: Docker build
run: |
echo "TAG_NAME=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV
IMAGE_ID=$NAMESPACE/$SERVICE_NAME
# Change all uppercase to lowercase
IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]')
VERSION=TAG_NAME
echo IMAGE_ID=$IMAGE_ID
echo VERSION=$VERSION
echo IMAGE_ID=$IMAGE_ID >> $GITHUB_ENV
echo VERSION=$VERSION >> $GITHUB_ENV
docker build ./openg2p-g2p-bridge-example-bank-api -f ./openg2p-g2p-bridge-example-bank-api/Dockerfile-pypi \
--tag $IMAGE_ID:$VERSION
if [[ '${{ secrets.docker_hub_token }}' != '' && '${{ secrets.docker_hub_actor }}' != '' ]]; then
export DOCKER_PUSH="true"
echo DOCKER_PUSH=$DOCKER_PUSH >> $GITHUB_ENV
fi
- name: Docker push
if: env.DOCKER_PUSH == 'true'
run: |
echo "${{ secrets.docker_hub_token }}" | docker login -u ${{ secrets.docker_hub_actor }} --password-stdin
docker push ${{ env.IMAGE_ID }}:${{ env.VERSION }}
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,10 +1,16 @@
name: Bridge API PyPI Publish
name: Bank Models PyPI Publish

on:
workflow_dispatch
push:
tags:
- "*"
branches-ignore:
- '*'
workflow_dispatch:

jobs:
publish-to-pypi:
name: Publish to PyPI For Models Tag
runs-on: ubuntu-latest
steps:
- name: Set up Python
Expand All @@ -15,8 +21,9 @@ jobs:
- name: Install build dependencies
run: pip install build
- name: Build distribution
run: python -m build -s openg2p-g2p-bridge-example-bank-celery/
run: python -m build ./openg2p-g2p-bridge-example-bank-models
- name: Publish
uses: pypa/gh-action-pypi-publish@release/v1
with:
password: ${{ secrets.PYPI_API_TOKEN }}
packages-dir: ./openg2p-g2p-bridge-example-bank-models/dist/
Original file line number Diff line number Diff line change
@@ -1,12 +1,15 @@
name: Bridge Celery Beat Producers Docker Publish
name: Example Bank Celery Branch Workflow

on:
push:
workflow_dispatch:
branches-ignore:
- develop
tags-ignore:
- '*'

jobs:
docker-build:
name: Docker Build and Push
docker-build-for-branch:
name: Docker Build and Push For Celery Branch
runs-on: ubuntu-latest
env:
NAMESPACE: ${{ secrets.docker_hub_organisation || 'openg2p' }}
Expand All @@ -22,15 +25,12 @@ jobs:
# Change all uppercase to lowercase
IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]')
VERSION=$BRANCH_NAME
if [[ $BRANCH_NAME == master || $BRANCH_NAME == main ]]; then
VERSION=develop
fi
echo IMAGE_ID=$IMAGE_ID
echo VERSION=$VERSION
echo IMAGE_ID=$IMAGE_ID >> $GITHUB_ENV
echo VERSION=$VERSION >> $GITHUB_ENV
docker build ./openg2p-g2p-bridge-example-bank-celery \
docker build ./openg2p-g2p-bridge-example-bank-celery -f ./openg2p-g2p-bridge-example-bank-celery/Dockerfile-git \
--tag $IMAGE_ID:$VERSION
if [[ '${{ secrets.docker_hub_token }}' != '' && '${{ secrets.docker_hub_actor }}' != '' ]]; then
export DOCKER_PUSH="true"
Expand Down
64 changes: 64 additions & 0 deletions .github/workflows/celery-tag.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
name: Example Bank Celery Tag Workflow

on:
push:
tags:
- "*"
branches-ignore:
- '*'
workflow_dispatch:

jobs:
publish-to-pypi:
name: Publish to PyPI For Celery Tag
runs-on: ubuntu-latest
steps:
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.10"
- uses: actions/checkout@v3
- name: Install build dependencies
run: pip install build
- name: Build distribution
run: python -m build ./openg2p-g2p-bridge-example-bank-celery
- name: Publish
uses: pypa/gh-action-pypi-publish@release/v1
with:
password: ${{ secrets.PYPI_API_TOKEN }}
packages-dir: ./openg2p-g2p-bridge-example-bank-celery/dist/

docker-build-for-tag:
name: Docker Build and Push For Celery Tag
needs: publish-to-pypi
runs-on: ubuntu-latest
env:
NAMESPACE: ${{ secrets.docker_hub_organisation || 'openg2p' }}
SERVICE_NAME: openg2p-g2p-bridge-example-bank-celery
steps:
- uses: actions/checkout@v3
- name: Docker build
run: |
echo "TAG_NAME=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV
IMAGE_ID=$NAMESPACE/$SERVICE_NAME
# Change all uppercase to lowercase
IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]')
VERSION=TAG_NAME
echo IMAGE_ID=$IMAGE_ID
echo VERSION=$VERSION
echo IMAGE_ID=$IMAGE_ID >> $GITHUB_ENV
echo VERSION=$VERSION >> $GITHUB_ENV
docker build ./openg2p-g2p-bridge-example-bank-celery -f ./openg2p-g2p-bridge-example-bank-celery/Dockerfile-pypi \
--tag $IMAGE_ID:$VERSION
if [[ '${{ secrets.docker_hub_token }}' != '' && '${{ secrets.docker_hub_actor }}' != '' ]]; then
export DOCKER_PUSH="true"
echo DOCKER_PUSH=$DOCKER_PUSH >> $GITHUB_ENV
fi
- name: Docker push
if: env.DOCKER_PUSH == 'true'
run: |
echo "${{ secrets.docker_hub_token }}" | docker login -u ${{ secrets.docker_hub_actor }} --password-stdin
docker push ${{ env.IMAGE_ID }}:${{ env.VERSION }}
53 changes: 0 additions & 53 deletions .github/workflows/example-bank-api-openapi-publish.yml

This file was deleted.

22 changes: 0 additions & 22 deletions .github/workflows/example-bank-api-pypi-publish.yml

This file was deleted.

22 changes: 0 additions & 22 deletions .github/workflows/example-bank-models-pypi-publish.yml

This file was deleted.

21 changes: 21 additions & 0 deletions .github/workflows/tag.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: Tag the repo
on:
workflow_dispatch:
inputs:
new-tag:
description: Tag in "vN.N.N" format
required: true
type: string
previous-tag:
description: Previous tag. "None" if no previous tag
required: true
type: string
default: latest
jobs:
tag-repo:
uses: openg2p/openg2p-packaging/.github/workflows/tag.yml@main
with:
new-tag: ${{ inputs.new-tag }}
previous-tag: ${{ inputs.previous-tag }}
secrets:
OPENG2P_BOT_GITHUB_PAT: ${{ secrets.OPENG2P_BOT_GITHUB_PAT }}
2 changes: 1 addition & 1 deletion openg2p-g2p-bridge-example-bank-api/.dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

# Docker
docker-compose.yml
Dockerfile
Dockerfile-git
.docker
.dockerignore

Expand Down
Loading

0 comments on commit 0d0bf96

Please sign in to comment.