Skip to content

refactor dynamodb test into contract test #1230

refactor dynamodb test into contract test

refactor dynamodb test into contract test #1230

Workflow file for this run

name: build VAuthenticator
on:
push: { }
workflow_dispatch:
inputs:
version:
description: 'make a tag'
required: false
type: string
newversion:
description: 'Next desired version'
required: false
type: string
jobs:
tag-artifact:
if: github.event.inputs.version != '' || github.event.inputs.version != ' '
needs:
- build-backend
- ui-backend
runs-on: ubuntu-20.04
steps:
- name: checkout
uses: actions/checkout@v3
- name: make an echo
run: |
echo version ${{github.event.inputs.version}}
- name: set the Tag version
run: |
git config --global user.email "${{ secrets.GIT_EMAIL }}"
git config --global user.name "${{ secrets.GIT_USERNAME }}"
mvn versions:set -DnewVersion=${{github.event.inputs.version}}
git commit -am "[skip-ci] new version release ${{github.event.inputs.version}}"
git push
- name: Create tag
uses: ncipollo/release-action@v1
with:
bodyFile: changelog/${{github.event.inputs.version}}.md
tag: ${{github.event.inputs.version}}
- name: set the Next Development version
run: |
git config --global user.email "${{ secrets.GIT_EMAIL }}"
git config --global user.name "${{ secrets.GIT_USERNAME }}"
mvn versions:set -DnewVersion=${{github.event.inputs.newversion}}
git commit -am "[skip-ci] new version release ${{github.event.inputs.newversion}}"
git push
build-backend:
runs-on: ubuntu-20.04
services:
postgres:
image: postgres:14-alpine
ports:
- "5432:5432"
env:
POSTGRES_PASSWORD: postgres
POSTGRES_USER: postgres
localstack:
image: localstack/localstack:3.2
ports:
- "4566-4599:4566-4599"
env:
SERVICES: s3,kms,dynamodb,sns
redis:
image: redis
ports:
- "6379:6379"
steps:
- name: checkout
uses: actions/checkout@v3
- name: Set up JDK 21
uses: actions/setup-java@v3
with:
java-version: 21
distribution: 'corretto'
- name: Build
run: |
mvn install -q
- name: docker push
run: |
docker login -u ${{ secrets.DOCKER_HUB_USERNAME }} -p ${{ secrets.DOCKER_HUB_PASSWORD }}
if [[ ${GITHUB_REF##*/} == 'master' ]]
then
DOCKER_TAG="latest"
else
DOCKER_TAG="${GITHUB_REF##*/}"
fi
echo "$DOCKER_TAG"
docker build -t mrflick72/vauthenticator-k8s:$DOCKER_TAG -f application.Dockerfile .
docker push mrflick72/vauthenticator-k8s:$DOCKER_TAG
- name: Docker tag
if: github.event.inputs.version != '' || github.event.inputs.version != ' '
run: |
DOCKER_TAG="${{github.event.inputs.version}}"
docker build -t mrflick72/vauthenticator-k8s:$DOCKER_TAG -f application.Dockerfile .
docker push mrflick72/vauthenticator-k8s:$DOCKER_TAG
ui-backend:
runs-on: ubuntu-20.04
steps:
- name: checkout
uses: actions/checkout@v3
- name: install node
uses: actions/setup-node@v4
with:
node-version: 21
- name: Build frontend artifacts
run: |
cd src/main/frontend
npm install --legacy-peer-deps
npm run-script production-build
- name: load static file on s3
uses: aws-actions/configure-aws-credentials@v1-node16
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: ${{ secrets.AWS_REGION }}
- run: |
UI_VERSION=${{github.event.inputs.version}}
cd src/main/frontend/dist/asset
ls *.js | while read line
do
aws s3 cp $line s3://${{ secrets.VAUTHENTICATOR_BUCKET }}/static-asset/content/asset/${GITHUB_REF##*/}/$line
aws s3 cp $line s3://${{ secrets.VAUTHENTICATOR_BUCKET }}/static-asset/content/asset/$line
if [ ${UI_VERSION} ]; then
aws s3 cp $line s3://${{ secrets.VAUTHENTICATOR_BUCKET }}/static-asset/content/asset/${UI_VERSION}/$line
fi
done