diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
deleted file mode 100644
index 5e2f3397..00000000
--- a/.github/workflows/build.yml
+++ /dev/null
@@ -1,109 +0,0 @@
-# This is a basic workflow to help you get started with Actions
-
-name: Build npm
-
-# Controls when the action will run. Triggers the workflow on push or pull request
-# events but only for the master branch
-on:
- push:
- branches: [ master, 1.0.* ]
- pull_request:
- branches: [ master, 1.0.* ]
-
-# A workflow run is made up of one or more jobs that can run sequentially or in parallel
-jobs:
- # This workflow contains a single job called "build"
- build-admin-ui:
- runs-on: ubuntu-latest
- env:
- NAMESPACE: ${{ secrets. dev_namespace_docker_hub }}
- SERVICE_NAME: admin-ui
- SERVICE_LOCATION: admin-ui
-
- # Steps represent a sequence of tasks that will be executed as part of the job
- steps:
- # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- - uses: actions/checkout@v2
- - uses: actions/setup-node@v1
-
- - name: npm install
- run: cd ${{ env.SERVICE_LOCATION }} && npm install --ignore-scripts
-
- - name: npm build
- run: cd ${{ env.SERVICE_LOCATION }} && npm run-script build -- --prod --base-href . --output-path=dist
-
- - name: setup environment
- run: |
- # Strip git ref prefix from version
- echo "::set-env name=BRANCH_NAME::$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')"
- echo ${{ env.BRANCH_NAME }}
-
- - name: Build image
- run: |
- cd "./${{env.SERVICE_LOCATION}}"
- docker build . --file Dockerfile --tag ${{ env.SERVICE_NAME }}
-
- - name: Log into registry
- run: echo "${{ secrets.release_docker_hub }}" | docker login -u ${{ secrets.actor_docker_hub }} --password-stdin
-
- - name: Push image
- run: |
- IMAGE_ID=$NAMESPACE/$SERVICE_NAME
-
- # Change all uppercase to lowercase
- IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]')
- VERSION=$BRANCH_NAME
- echo "push version $VERSION"
- echo IMAGE_ID=$IMAGE_ID
- echo VERSION=$VERSION
- docker tag $SERVICE_NAME $IMAGE_ID:$VERSION
- docker push $IMAGE_ID:$VERSION
-
-
-# This workflow contains a single job called "build"
- build-pre-registration-ui:
- runs-on: ubuntu-latest
- env:
- NAMESPACE: ${{ secrets. dev_namespace_docker_hub }}
- SERVICE_NAME: pre-registration-ui
- SERVICE_LOCATION: pre-registration-ui
-
- # Steps represent a sequence of tasks that will be executed as part of the job
- steps:
- # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- - uses: actions/checkout@v2
- - uses: actions/setup-node@v1
-
- - name: npm install
- run: cd ${{ env.SERVICE_LOCATION }} && npm install --ignore-scripts
-
- - name: npm build
- run: cd ${{ env.SERVICE_LOCATION }} && npm run-script build -- --prod --base-href . --output-path=dist
-
- - name: setup environment
- run: |
- # Strip git ref prefix from version
- echo "::set-env name=BRANCH_NAME::$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')"
- echo ${{ env.BRANCH_NAME }}
-
- - name: Build image
- run: |
- cd "./${{env.SERVICE_LOCATION}}"
- docker build . --file Dockerfile --tag ${{ env.SERVICE_NAME }}
-
- - name: Log into registry
- run: echo "${{ secrets.release_docker_hub }}" | docker login -u ${{ secrets.actor_docker_hub }} --password-stdin
-
- - name: Push image
- run: |
- IMAGE_ID=$NAMESPACE/$SERVICE_NAME
-
- # Change all uppercase to lowercase
- IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]')
- VERSION=$BRANCH_NAME
- echo "push version $VERSION"
- echo IMAGE_ID=$IMAGE_ID
- echo VERSION=$VERSION
- docker tag $SERVICE_NAME $IMAGE_ID:$VERSION
- docker push $IMAGE_ID:$VERSION
-
diff --git a/.github/workflows/push-trigger.yml b/.github/workflows/push-trigger.yml
new file mode 100644
index 00000000..b0875655
--- /dev/null
+++ b/.github/workflows/push-trigger.yml
@@ -0,0 +1,58 @@
+name: admin-ui build upon a push
+
+on:
+ release:
+ types: [published]
+ pull_request:
+ types: [opened]
+ push:
+ branches:
+ - MOSIP*
+ - 1.*
+ - '!release-branch'
+ - develop
+ - master
+ - '*'
+
+jobs:
+ build-admin-ui:
+ uses: mosip/kattu/.github/workflows/npm-build.yml@master
+ with:
+ SERVICE_LOCATION: ./admin-ui
+ BUILD_ARTIFACT: admin-ui
+ secrets:
+ SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK }}
+
+ build-docker-admin-ui:
+ needs: build-admin-ui
+ strategy:
+ matrix:
+ include:
+ - SERVICE_LOCATION: './admin-ui'
+ SERVICE_NAME: 'admin-ui'
+ NPM_BUILD: true
+ BUILD_ARTIFACT: 'admin-ui'
+ fail-fast: false
+ name: ${{ matrix.SERVICE_NAME }}
+ uses: mosip/kattu/.github/workflows/docker-build.yml@master
+ with:
+ SERVICE_LOCATION: ${{ matrix.SERVICE_LOCATION }}
+ SERVICE_NAME: ${{ matrix.SERVICE_NAME }}
+ NPM_BUILD: ${{ matrix.NPM_BUILD }}
+ BUILD_ARTIFACT: ${{ matrix.BUILD_ARTIFACT }}
+ secrets:
+ DEV_NAMESPACE_DOCKER_HUB: ${{ secrets.DEV_NAMESPACE_DOCKER_HUB }}
+ ACTOR_DOCKER_HUB: ${{ secrets.ACTOR_DOCKER_HUB }}
+ RELEASE_DOCKER_HUB: ${{ secrets.RELEASE_DOCKER_HUB }}
+ SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK }}
+
+ sonar-analysis:
+ needs: build-admin-ui
+ if: "${{ github.event_name != 'pull_request' }}"
+ uses: mosip/kattu/.github/workflows/npm-sonar-analysis.yml@master
+ with:
+ SERVICE_LOCATION: admin-ui
+ secrets:
+ SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
+ ORG_KEY: ${{ secrets.ORG_KEY }}
+ SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK }}
\ No newline at end of file
diff --git a/.github/workflows/push_trigger.yml b/.github/workflows/push_trigger.yml
deleted file mode 100644
index cbb182bd..00000000
--- a/.github/workflows/push_trigger.yml
+++ /dev/null
@@ -1,259 +0,0 @@
-
-name: Maven Package upon a push
-
-on:
- push:
- branches:
- - '!release-branch'
- - release-1*
- - master
- - 1.0.*
- - develop
- - 1.1.*
- - MOSIP*
- - 1.2.*
-
-jobs:
- build-admin-ui:
- runs-on: ubuntu-latest
- env:
- NAMESPACE: ${{ secrets. dev_namespace_docker_hub }}
- SERVICE_NAME: admin-ui
- SERVICE_LOCATION: admin-ui
-
- # Steps represent a sequence of tasks that will be executed as part of the job
- steps:
- # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- - uses: actions/checkout@v2
- - uses: actions/setup-node@v1
-
- - name: npm install
- run: cd ${{ env.SERVICE_LOCATION }} && npm install --ignore-scripts
-
- - name: npm build
- run: cd ${{ env.SERVICE_LOCATION }} && npm run-script build -- --prod --base-href . --output-path=dist
-
- - name: Setup branch and env
- run: |
- # Strip git ref prefix from version
- echo "BRANCH_NAME=$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')" >> $GITHUB_ENV
- echo "GPG_TTY=$(tty)" >> $GITHUB_ENV
-
- - name: setup environment
- run: |
- # Strip git ref prefix from version
- echo "GPG_TTY=$(tty)" >> $GITHUB_ENV
- echo "BRANCH_NAME=$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')" >> $GITHUB_ENV
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
-
- - name: Build image
- run: |
- cd "./${{env.SERVICE_LOCATION}}"
- # docker build . --file Dockerfile --tag ${{ env.SERVICE_NAME }}
- docker build . --file Dockerfile --build-arg SOURCE=mosip --build-arg COMMIT_HASH=$(git rev-parse HEAD) --build-arg COMMIT_ID=$(git rev-parse --short HEAD) --build-arg BUILD_TIME=${{steps.date.outputs.date}} --tag ${{ env.SERVICE_NAME }}
-
- - name: Log into registry
- run: echo "${{ secrets.release_docker_hub }}" | docker login -u ${{ secrets.actor_docker_hub }} --password-stdin
-
- - name: Push image
- run: |
- IMAGE_ID=$NAMESPACE/$SERVICE_NAME
- # Change all uppercase to lowercase
- IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]')
- if [[ $BRANCH_NAME == master ]]; then
- VERSION=latest
- else
- VERSION=$BRANCH_NAME
- fi
- echo "push version $VERSION"
- echo IMAGE_ID=$IMAGE_ID
- echo VERSION=$VERSION
- docker tag $SERVICE_NAME $IMAGE_ID:$VERSION
- docker push $IMAGE_ID:$VERSION
-
-
- sonar-analysis:
- runs-on: ubuntu-latest
- env:
- NAMESPACE: ${{ secrets. dev_namespace_docker_hub }}
- SERVICE_NAME: admin-ui
- SERVICE_LOCATION: admin-ui
-
- # Steps represent a sequence of tasks that will be executed as part of the job
- steps:
- # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- - uses: actions/checkout@v2
- - uses: actions/setup-node@v1
- with:
- node-version: '14'
-
- - name: npm install
- run: cd ${{ env.SERVICE_LOCATION }} && npm install --ignore-scripts
-
- - name: npm build
- run: cd ${{ env.SERVICE_LOCATION }} && npm run-script build -- --prod --base-href . --output-path=dist
-
- - name: Setup branch and env
- run: |
- # Strip git ref prefix from version
- echo "BRANCH_NAME=$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')" >> $GITHUB_ENV
- echo "GPG_TTY=$(tty)" >> $GITHUB_ENV
-
- - name: setup environment
- run: |
- # Strip git ref prefix from version
- echo "GPG_TTY=$(tty)" >> $GITHUB_ENV
- echo "BRANCH_NAME=$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')" >> $GITHUB_ENV
-
- - name: run sonar analysis
- run: |
- cd "./${{env.SERVICE_LOCATION}}"
- echo "sonar.host.url=https://sonarcloud.io/
- sonar.login=${{ secrets.SONAR_TOKEN }}
- sonar.projectKey=mosip_admin-ui
- sonar.organization=${{ secrets.ORG_KEY }}
- sonar.sourceEncoding=UTF-8
- sonar.sources=src
- sonar.exclusions=**/node_modules/**
- sonar.tests=src
- sonar.test.inclusions=**/*.spec.ts
- sonar.typescript.lcov.reportPaths=coverage/lcov.info" >> sonar-project.properties
- npm install sonar-scanner && npm run sonar
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
-
- maven-build-admintest:
- runs-on: ubuntu-latest
- env:
- SERVICE_NAME: admintest
- SERVICE_LOCATION: ./admintest
- CONFIG_LOCATION: ./src/main/resources/
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v1
- with:
- ref: ${{ github.ref }}
- java-version: 11
- server-id: ossrh # Value of the distributionManagement/repository/id field of the pom.xml
- settings-path: ${{ github.workspace }} # location for the settings.xml file
-
- - name: Setup branch and env
- run: |
- # Strip git ref prefix from version
- echo "BRANCH_NAME=$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')" >> $GITHUB_ENV
- echo "GPG_TTY=$(tty)" >> $GITHUB_ENV
- - uses: actions/cache@v1
- with:
- path: ~/.m2/repository
- key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
- restore-keys: |
- ${{ runner.os }}-maven-${{ env.BRANCH_NAME }}
- - name: Install xmllint
- run: |
- sudo apt-get update
- sudo apt-get install libxml2-utils
- - name: Setup the settings file for ossrh server
- run: echo " ossrh ossrh true allow-snapshots true snapshots-repo https://oss.sonatype.org/content/repositories/snapshots false true releases-repo https://oss.sonatype.org/service/local/staging/deploy/maven2 false false " > $GITHUB_WORKSPACE/settings.xml
-
-
- - name: Build admintest with Maven
- run: |
- cd ./${{env.SERVICE_LOCATION}}
- mvn clean install -s $GITHUB_WORKSPACE/settings.xml
- - name: Ready the springboot artifacts
- run: |
- cd ${{env.SERVICE_LOCATION}}
- mkdir -p ./build_files/
- cp $( find -name 'adminui-*.jar' -type f ) ./build_files
- cp -r ${{env.CONFIG_LOCATION}} ./build_files
- zip -r ${{env.SERVICE_NAME}}.zip ./build_files
- - name: Upload the springboot jars
- uses: actions/upload-artifact@v1
- with:
- name: ${{env.SERVICE_NAME}}
- path: ${{env.SERVICE_LOCATION}}/${{env.SERVICE_NAME}}.zip
-
- - uses: 8398a7/action-slack@v3
- with:
- status: ${{ job.status }}
- fields: repo,message,commit,workflow,job # selectable (default: repo,message)
- env:
- SLACK_WEBHOOK_URL: ${{ secrets.SLACK_WEBHOOK }} # required
- if: failure() # Pick up events even if the job fails or is canceled.
-
- docker-build-admintest:
- needs: maven-build-admintest
- runs-on: ubuntu-latest
- env:
- NAMESPACE: ${{ secrets.dev_namespace_docker_hub }}
- SERVICE_NAME: admintest
- SERVICE_LOCATION: ./admintest
- DOCKER_BUILDKIT: 1
-
- steps:
- - uses: actions/checkout@v2
- - uses: actions/download-artifact@v1
- with:
- name: ${{env.SERVICE_NAME}}
- path: ./${{env.SERVICE_LOCATION}}
-
- - name: Setup branch name
- run: |
- # Strip git ref prefix from version
- echo "BRANCH_NAME=$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')" >> $GITHUB_ENV
- echo ${{ env.BRANCH_NAME }}
- - name: Get version info from pom
- id: getPomVersion
- uses: mavrosxristoforos/get-xml-info@1.0
- with:
- xml-file: ./${{ env.SERVICE_LOCATION }}/pom.xml
- xpath: /*[local-name()="project"]/*[local-name()="version"]
-
- - name: Extract the admintest jar and its dependency configs
- run: |
- cd ./${{env.SERVICE_LOCATION}}
- unzip "${{env.SERVICE_NAME}}.zip"
- - name: Get current date
- id: date
- run: echo "::set-output name=date::$(date +'%Y-%m-%d')"
-
- - name: Build image
- run: |
- cd ./${{env.SERVICE_LOCATION}}
- mkdir docker-image-build
- cp -r ./build_files ./docker-image-build/build_files
- cp -r ./entrypoint.sh ./docker-image-build/entrypoint.sh
- cp ./Dockerfile ./docker-image-build/Dockerfile
-
- cd docker-image-build
- docker build . --file Dockerfile --build-arg SOURCE=mosip --build-arg COMMIT_HASH=$(git rev-parse HEAD) --build-arg COMMIT_ID=$(git rev-parse --short HEAD) --build-arg BUILD_TIME=${{steps.date.outputs.date}} --tag ${{ env.SERVICE_NAME }}
- - name: Log into registry
- run: echo "${{ secrets.release_docker_hub }}" | docker login -u ${{ secrets.actor_docker_hub }} --password-stdin
-
- - name: Push image
- run: |
- IMAGE_ID=$NAMESPACE/$SERVICE_NAME
-
- # Change all uppercase to lowercase
- IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]')
- echo "push version ${{steps.getPomVersion.outputs.info}}"
- if [[ $BRANCH_NAME == master ]]; then
- VERSION=latest
- else
- VERSION=$BRANCH_NAME
- fi
- echo IMAGE_ID=$IMAGE_ID
- echo VERSION=$VERSION
- docker tag $SERVICE_NAME $IMAGE_ID:$VERSION
- docker push $IMAGE_ID:$VERSION
- - uses: 8398a7/action-slack@v3
- with:
- status: ${{ job.status }}
- fields: repo,message,commit,workflow,job # selectable (default: repo,message)
- env:
- SLACK_WEBHOOK_URL: ${{ secrets.SLACK_DEVOPS_WEBHOOK }} # required
- if: failure() # Pick up events even if the job fails or is canceled.
diff --git a/.github/workflows/release-changes.yml b/.github/workflows/release-changes.yml
new file mode 100644
index 00000000..440e2e24
--- /dev/null
+++ b/.github/workflows/release-changes.yml
@@ -0,0 +1,26 @@
+name: Release/pre-release Preparation.
+
+on:
+ workflow_dispatch:
+ inputs:
+ MESSAGE:
+ description: 'Triggered for release or pe-release'
+ required: false
+ default: 'Release Preparation'
+ RELEASE_TAG:
+ description: 'tag to update'
+ required: true
+ SNAPSHOT_TAG:
+ description: 'tag to be replaced'
+ required: true
+ BASE:
+ description: 'base branch for PR'
+ required: true
+jobs:
+ maven-release-preparation:
+ uses: mosip/kattu/.github/workflows/release-changes.yml@master
+ with:
+ MESSAGE: ${{ inputs.MESSAGE }}
+ RELEASE_TAG: ${{ inputs.RELEASE_TAG }}
+ SNAPSHOT_TAG: ${{ inputs.SNAPSHOT_TAG }}
+ BASE: ${{ inputs.BASE }}
diff --git a/.github/workflows/release_changes.yml b/.github/workflows/release_changes.yml
deleted file mode 100644
index 59da09ef..00000000
--- a/.github/workflows/release_changes.yml
+++ /dev/null
@@ -1,59 +0,0 @@
-name: Release/pre-release Preparation.
-
-on:
- workflow_dispatch:
- inputs:
- message:
- description: 'Triggered for release or pe-release'
- required: false
- default: 'Release Preparation'
- releaseTags:
- description: 'tag to update'
- required: true
- snapshotTags:
- description: 'tag to be replaced'
- required: true
- base:
- description: 'base branch for PR'
- required: true
-jobs:
- build:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - name: Setup branch and env
- run: |
- # Strip git ref prefix from version
- echo "BRANCH_NAME=$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')" >> $GITHUB_ENV
- echo "GPG_TTY=$(tty)" >> $GITHUB_ENV
-
- - name: Mannualy changing the pom versions
- run: find . -type f -name "*pom.xml" -print0 | xargs -0 sed -i "s/${{ github.event.inputs.snapshotTags }}/${{ github.event.inputs.releaseTags }}/g"
- - name: update Branch name in badges
- run: |
- sed -i 's/branch=[^\&]*)]/branch=${{ env.BRANCH_NAME }}\)]/g' README.md
- sed -i 's/branch=[^\&]*\&/branch=${{ env.BRANCH_NAME }}\&/g' README.md
-
- - name: Updating the Release URL in POM
- run: |
- cd .github/workflows
- sed -i 's/OSSRH_SNAPSHOT_URL/RELEASE_URL/g' push_trigger.yml
-
- - name: Updating libs-snapshot-local to libs-release local for artifactory URL's.
- run: find . -type f -name "*Dockerfile" -print0 | xargs -0 sed -i "s/libs-snapshot-local/libs-release-local/g"
-
- - name: removing -DskipTests
- run: find . -type f -name "*push_trigger.yml" -print0 | xargs -0 sed -i "s/"-DskipTests"//g"
-
-# - name: removing --Dgpg.skip
-# run: find . -type f -name "*push_trigger.yml" -print0 | xargs -0 sed -i "s/"-Dgpg.skip"//g"
-
- - name: Create Pull Request
- uses: peter-evans/create-pull-request@v3
- with:
- commit-message: Updated Pom versions for release changes
- title: Release changes
- body: Automated PR for ${{ github.event.inputs.releaseTags }} release.
- branch: release-branch
- delete-branch: true
- base: ${{ github.event.inputs.base }}
diff --git a/.github/workflows/release_trigger.yml b/.github/workflows/release_trigger.yml
deleted file mode 100644
index 9b2e24a0..00000000
--- a/.github/workflows/release_trigger.yml
+++ /dev/null
@@ -1,407 +0,0 @@
-name: Release maven packages and docker upon a release
-
-on:
- release:
- types: [published]
-
-jobs:
- build-kernel-ref-idobjectvalidator:
-
- runs-on: ubuntu-latest
-
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 1.8
- uses: actions/setup-java@v1
- with:
- ref: ${{ github.ref }}
- java-version: 1.8
- server-id: ossrh # Value of the distributionManagement/repository/id field of the pom.xml
- settings-path: ${{ github.workspace }} # location for the settings.xml file
-
- - name: Setup branch and GPG public key
- run: |
- # Strip git ref prefix from version
- echo "::set-env name=BRANCH_NAME::$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')"
- echo ${{ env.BRANCH_NAME }}
- echo "::set-env name=GPG_TTY::$(tty)"
- echo ${{ env.GPG_TTY }}
- sudo apt-get --yes install gnupg2
- gpg2 --import ./.github/keys/mosipgpgkey_pub.gpg
- gpg2 --quiet --batch --passphrase=${{secrets.gpg_secret}} --allow-secret-key-import --import ./.github/keys/mosipgpgkey_sec.gpg
-
- - uses: actions/cache@v1
- with:
- path: ~/.m2/repository
- key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
- restore-keys: |
- ${{ runner.os }}-maven-${{ env.BRANCH_NAME }}
-
- - name: Setup the settings file for ossrh server
- run: echo " ossrh ${{secrets.ossrh_user}} ${{secrets.ossrh_secret}} ossrh true gpg2 ${{secrets.gpg_secret}} allow-snapshots true snapshots-repo https://oss.sonatype.org/content/repositories/snapshots false true releases-repo https://oss.sonatype.org/service/local/staging/deploy/maven2 true false sonar . https://sonarcloud.io false " > $GITHUB_WORKSPACE/settings.xml
-
-
- - name: Build with Maven
- run: |
- cd kernel
- mvn -B package -s $GITHUB_WORKSPACE/settings.xml --file pom.xml
-
- - name: Ready the springboot artifacts
- run: find -name '*.jar' -executable -type f -exec zip release.zip {} +
-
- - name: Upload the springboot jars
- uses: actions/upload-artifact@v1
- with:
- name: release
- path: ./release.zip
-
- publish_to_nexus:
- runs-on: ubuntu-latest
-
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 1.8
- uses: actions/setup-java@v1
- with:
- ref: ${{ github.ref }}
- java-version: 1.8
- server-id: ossrh # Value of the distributionManagement/repository/id field of the pom.xml
- settings-path: ${{ github.workspace }} # location for the settings.xml file
-
- - name: Setup branch and GPG public key
- run: |
- # Strip git ref prefix from version
- echo "::set-env name=BRANCH_NAME::$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')"
- echo ${{ env.BRANCH_NAME }}
- echo "::set-env name=GPG_TTY::$(tty)"
- echo ${{ env.GPG_TTY }}
- sudo apt-get --yes install gnupg2
- gpg2 --import ./.github/keys/mosipgpgkey_pub.gpg
- gpg2 --quiet --batch --passphrase=${{secrets.gpg_secret}} --allow-secret-key-import --import ./.github/keys/mosipgpgkey_sec.gpg
-
- - uses: actions/cache@v1
- with:
- path: ~/.m2/repository
- key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
- restore-keys: |
- ${{ runner.os }}-maven-${{ env.BRANCH_NAME }}
- - name: Install xmllint
- run: |
- sudo apt-get update
- sudo apt-get install libxml2-utils
- - name: Setup the settings file for ossrh server
- run: echo " ossrh ${{secrets.ossrh_user}} ${{secrets.ossrh_secret}} ossrh true gpg2 ${{secrets.gpg_secret}} allow-snapshots true snapshots-repo https://oss.sonatype.org/content/repositories/snapshots false true releases-repo https://oss.sonatype.org/service/local/staging/deploy/maven2 true false sonar . https://sonarcloud.io false " > $GITHUB_WORKSPACE/settings.xml
-
- - name: Build with Maven
- run: |
- cd kernel
- mvn -B package -s $GITHUB_WORKSPACE/settings.xml --file pom.xml
-
- - name: Publish the maven package
- run: |
- chmod +x ./deploy.sh
- ./deploy.sh kernel $GITHUB_WORKSPACE/settings.xml .*
- env:
- GPG_TTY: $(tty)
- - name: Analyze with SonarCloud
- run: |
- cd kernel
- mvn -B verify sonar:sonar -Dsonar.projectKey=${{ secrets.PROJECT_KEY }} -Dsonar.organization=${{ secrets.ORG_KEY }} -Dsonar.host.url=https://sonarcloud.io -Dsonar.login=${{ secrets.SONAR_TOKEN }}
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
- # This workflow contains a single job called "build"
-
- docker-registration-processor-external-integration-service:
-
- runs-on: ubuntu-latest
- env:
- NAMESPACE: mosipdev
- SERVICE_NAME: registration-processor-external-integration-service
- SERVICE_LOCATION: registration-processor/registration-processor-external-integration-service
-
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 11
- uses: actions/setup-java@v1
- with:
- ref: ${{ github.ref }}
- java-version: 11
- server-id: ossrh # Value of the distributionManagement/repository/id field of the pom.xml
- settings-path: ${{ github.workspace }} # location for the settings.xml file
- - name: Setup branch and env
- run: |
- # Strip git ref prefix from version
- echo "BRANCH_NAME=$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')" >> $GITHUB_ENV
- echo "GPG_TTY=$(tty)" >> $GITHUB_ENV
-
- - name: Setup branch and GPG public key
- run: |
- # Strip git ref prefix from version
- echo "BRANCH_NAME=$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')" >> $GITHUB_ENV
- echo ${{ env.GPG_TTY }}
- sudo apt-get --yes install gnupg2
- gpg2 --import ./.github/keys/mosipgpgkey_pub.gpg
- gpg2 --quiet --batch --passphrase=${{secrets.gpg_secret}} --allow-secret-key-import --import ./.github/keys/mosipgpgkey_sec.gpg
-
-
- - name: Setup the settings file for ossrh server
- run: echo " ossrh ${{secrets.ossrh_user}} ${{secrets.ossrh_secret}} ossrh true gpg2 ${{secrets.gpg_secret}} allow-snapshots true snapshots-repo https://oss.sonatype.org/content/repositories/snapshots false true releases-repo https://oss.sonatype.org/service/local/staging/deploy/maven2 true false sonar . https://sonarcloud.io false " > $GITHUB_WORKSPACE/settings.xml
-
-
- - name: Build with Maven
- run: |
- cd registration-processor/registration-processor-external-integration-service
- mvn -B package -s $GITHUB_WORKSPACE/settings.xml --file pom.xml
-
- - name: Ready the springboot artifacts
- run: find -name '*.jar' -executable -type f -exec zip release.zip {} +
-
-
- - name: Setup branch and GPG public key
- run: |
- # Strip git ref prefix from version
-
- echo "BRANCH_NAME=$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')" >> $GITHUB_ENV
- echo ${{ env.GPG_TTY }}
- sudo apt-get --yes install gnupg2
- gpg2 --import ./.github/keys/mosipgpgkey_pub.gpg
- gpg2 --quiet --batch --passphrase=${{secrets.gpg_secret}} --allow-secret-key-import --import ./.github/keys/mosipgpgkey_sec.gpg
-
- - uses: actions/cache@v1
- with:
- path: ~/.m2/repository
- key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
- restore-keys: |
- ${{ runner.os }}-maven-${{ env.BRANCH_NAME }}
- - name: Install xmllint
- run: |
- sudo apt-get update
- sudo apt-get install libxml2-utils
- - name: Setup the settings file for ossrh server
- run: echo " ossrh ${{secrets.RELEASE_USER}} ${{secrets.RELEASE_TOKEN}} ossrh true gpg2 ${{secrets.gpg_secret}} allow-snapshots true snapshots-repo https://oss.sonatype.org/content/repositories/snapshots false true releases-repo https://oss.sonatype.org/service/local/staging/deploy/maven2 true false sonar . https://sonarcloud.io false " > $GITHUB_WORKSPACE/settings.xml
-
-
-# - name: Analyze with SonarCloud
-# run: |
-# cd pre-registration-booking-service
-# mvn -B verify sonar:sonar -Dsonar.projectKey=${{ secrets.PROJECT_KEY }} -Dsonar.organization=${{ secrets.ORG_KEY }} -Dsonar.host.url=https://sonarcloud.io -Dsonar.login=${{ secrets.SONAR_TOKEN }}
-# env:
-# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
-# SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
-
- - name: Build image
- run: |
- cd "./${{env.SERVICE_LOCATION}}"
- docker build . --file Dockerfile --tag ${{ env.SERVICE_NAME }}
-
- - name: Log into registry
- run: echo "${{ secrets.release_docker_hub }}" | docker login -u ${{ secrets.actor_docker_hub }} --password-stdin
-
- - name: Push image
- run: |
- IMAGE_ID=$NAMESPACE/$SERVICE_NAME
-
- # Change all uppercase to lowercase
- IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]')
- VERSION=$BRANCH_NAME
- echo "push version $VERSION"
- echo IMAGE_ID=$IMAGE_ID
- echo VERSION=$VERSION
- docker tag $SERVICE_NAME $IMAGE_ID:$VERSION
- docker push $IMAGE_ID:$VERSION
-
- build-admin-ui:
- runs-on: ubuntu-latest
- env:
- NAMESPACE: ${{ secrets. dev_namespace_docker_hub }}
- SERVICE_NAME: admin-ui
- SERVICE_LOCATION: admin-ui
-
- # Steps represent a sequence of tasks that will be executed as part of the job
- steps:
- # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- - uses: actions/checkout@v2
- - uses: actions/setup-node@v1
-
- - name: npm install
- run: cd ${{ env.SERVICE_LOCATION }} && npm install --ignore-scripts
-
- - name: npm build
- run: cd ${{ env.SERVICE_LOCATION }} && npm run-script build -- --prod --base-href . --output-path=dist
-
- - name: setup environment
- run: |
- # Strip git ref prefix from version
- echo "::set-env name=BRANCH_NAME::$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')"
- echo ${{ env.BRANCH_NAME }}
-
- - name: Build image
- run: |
- cd "./${{env.SERVICE_LOCATION}}"
- docker build . --file Dockerfile --tag ${{ env.SERVICE_NAME }}
-
- - name: Log into registry
- run: echo "${{ secrets.release_docker_hub }}" | docker login -u ${{ secrets.actor_docker_hub }} --password-stdin
-
- - name: Push image
- run: |
- IMAGE_ID=$NAMESPACE/$SERVICE_NAME
-
- # Change all uppercase to lowercase
- IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]')
- VERSION=$BRANCH_NAME
- echo "push version $VERSION"
- echo IMAGE_ID=$IMAGE_ID
- echo VERSION=$VERSION
- docker tag $SERVICE_NAME $IMAGE_ID:$VERSION
- docker push $IMAGE_ID:$VERSION
-
-# This workflow contains a single job called "build"
- build-pre-registration-ui:
-
- runs-on: ubuntu-latest
- env:
- NAMESPACE: ${{ secrets. dev_namespace_docker_hub }}
- SERVICE_NAME: pre-registration-ui
- SERVICE_LOCATION: pre-registration-ui
-
- # Steps represent a sequence of tasks that will be executed as part of the job
- steps:
- # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it
- - uses: actions/checkout@v2
- - uses: actions/setup-node@v1
-
- - name: npm install
- run: cd ${{ env.SERVICE_LOCATION }} && npm install --ignore-scripts
-
- - name: npm build
- run: cd ${{ env.SERVICE_LOCATION }} && npm run-script build -- --prod --base-href . --output-path=dist
-
- - name: setup environment
- run: |
- # Strip git ref prefix from version
- echo "::set-env name=BRANCH_NAME::$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')"
- echo ${{ env.BRANCH_NAME }}
-
- - name: Build image
- run: |
- cd "./${{env.SERVICE_LOCATION}}"
- docker build . --file Dockerfile --tag ${{ env.SERVICE_NAME }}
-
- - name: Log into registry
- run: echo "${{ secrets.release_docker_hub }}" | docker login -u ${{ secrets.actor_docker_hub }} --password-stdin
-
- - name: Push image
- run: |
- IMAGE_ID=$NAMESPACE/$SERVICE_NAME
-
- # Change all uppercase to lowercase
- IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]')
- VERSION=$BRANCH_NAME
- echo "push version $VERSION"
- echo IMAGE_ID=$IMAGE_ID
- echo VERSION=$VERSION
- docker tag $SERVICE_NAME $IMAGE_ID:$VERSION
- docker push $IMAGE_ID:$VERSION
-
- build-demosdk:
-
- runs-on: ubuntu-latest
-
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 1.8
- uses: actions/setup-java@v1
- with:
- ref: ${{ github.ref }}
- java-version: 1.8
- server-id: ossrh # Value of the distributionManagement/repository/id field of the pom.xml
- settings-path: ${{ github.workspace }} # location for the settings.xml file
-
- - name: Setup branch and GPG public key
- run: |
- # Strip git ref prefix from version
- echo "::set-env name=BRANCH_NAME::$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')"
- echo ${{ env.BRANCH_NAME }}
- echo "::set-env name=GPG_TTY::$(tty)"
- echo ${{ env.GPG_TTY }}
- sudo apt-get --yes install gnupg2
- gpg2 --import ./.github/keys/mosipgpgkey_pub.gpg
- gpg2 --quiet --batch --passphrase=${{secrets.gpg_secret}} --allow-secret-key-import --import ./.github/keys/mosipgpgkey_sec.gpg
-
- - uses: actions/cache@v1
- with:
- path: ~/.m2/repository
- key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
- restore-keys: |
- ${{ runner.os }}-maven-${{ env.BRANCH_NAME }}
-
- - name: Setup the settings file for ossrh server
- run: echo " ossrh ${{secrets.ossrh_user}} ${{secrets.ossrh_secret}} ossrh true gpg2 ${{secrets.gpg_secret}} allow-snapshots true snapshots-repo https://oss.sonatype.org/content/repositories/snapshots false true releases-repo https://oss.sonatype.org/service/local/staging/deploy/maven2 true false sonar . https://sonarcloud.io false " > $GITHUB_WORKSPACE/settings.xml
-
-
- - name: Build with Maven
- run: |
- cd demosdk
- mvn -B package -s $GITHUB_WORKSPACE/settings.xml --file pom.xml
-
- - name: Ready the springboot artifacts
- run: find -name '*.jar' -executable -type f -exec zip release.zip {} +
-
- - name: Upload the springboot jars
- uses: actions/upload-artifact@v1
- with:
- name: release
- path: ./release.zip
-
- build-authentication-ref-impl:
-
- runs-on: ubuntu-latest
-
- steps:
- - uses: actions/checkout@v2
- - name: Set up JDK 1.8
- uses: actions/setup-java@v1
- with:
- ref: ${{ github.ref }}
- java-version: 1.8
- server-id: ossrh # Value of the distributionManagement/repository/id field of the pom.xml
- settings-path: ${{ github.workspace }} # location for the settings.xml file
-
- - name: Setup branch and GPG public key
- run: |
- # Strip git ref prefix from version
- echo "::set-env name=BRANCH_NAME::$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')"
- echo ${{ env.BRANCH_NAME }}
- echo "::set-env name=GPG_TTY::$(tty)"
- echo ${{ env.GPG_TTY }}
- sudo apt-get --yes install gnupg2
- gpg2 --import ./.github/keys/mosipgpgkey_pub.gpg
- gpg2 --quiet --batch --passphrase=${{secrets.gpg_secret}} --allow-secret-key-import --import ./.github/keys/mosipgpgkey_sec.gpg
-
- - uses: actions/cache@v1
- with:
- path: ~/.m2/repository
- key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
- restore-keys: |
- ${{ runner.os }}-maven-${{ env.BRANCH_NAME }}
-
- - name: Setup the settings file for ossrh server
- run: echo " ossrh ${{secrets.ossrh_user}} ${{secrets.ossrh_secret}} ossrh true gpg2 ${{secrets.gpg_secret}} allow-snapshots true snapshots-repo https://oss.sonatype.org/content/repositories/snapshots false true releases-repo https://oss.sonatype.org/service/local/staging/deploy/maven2 true false sonar . https://sonarcloud.io false " > $GITHUB_WORKSPACE/settings.xml
-
-
- - name: Build with Maven
- run: |
- cd authentication
- mvn -B package -s $GITHUB_WORKSPACE/settings.xml --file pom.xml
-
- - name: Ready the springboot artifacts
- run: find -name '*.jar' -executable -type f -exec zip release.zip {} +
-
- - name: Upload the springboot jars
- uses: actions/upload-artifact@v1
- with:
- name: release
- path: ./release.zip
-
diff --git a/.github/workflows/tag.yml b/.github/workflows/tag.yml
new file mode 100644
index 00000000..73c55b03
--- /dev/null
+++ b/.github/workflows/tag.yml
@@ -0,0 +1,33 @@
+name: Tagging of repos
+
+on:
+ workflow_dispatch:
+ inputs:
+ TAG:
+ description: 'Tag to be published'
+ required: true
+ type: string
+ BODY:
+ description: 'Release body message'
+ required: true
+ default: 'Changes in this Release'
+ type: string
+ PRE_RELEASE:
+ description: 'Pre-release? True/False'
+ required: true
+ default: False
+ type: string
+ DRAFT:
+ description: 'Draft? True/False'
+ required: false
+ default: False
+ type: string
+
+jobs:
+ tag-branch:
+ uses: mosip/kattu/.github/workflows/tag.yml@master
+ with:
+ TAG: ${{ inputs.TAG }}
+ BODY: ${{ inputs.BODY }}
+ PRE_RELEASE: ${{ inputs.PRE_RELEASE }}
+ DRAFT: ${{ inputs.DRAFT }}
\ No newline at end of file