Add Application and Subscription Support #176
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Release Management Server. | |
on: | |
workflow_call: | |
inputs: | |
aks_deployment: | |
required: true | |
type: boolean | |
description: "Deploy to AKS" | |
secrets: | |
WSO2_BOT_TOKEN: | |
required: true | |
WSO2_BOT_USER: | |
required: true | |
WSO2_BOT_EMAIL: | |
required: true | |
DOCKER_ORGANIZATION: | |
required: true | |
AZURE_ACR_NAME: | |
required: true | |
AZURE_CREDENTIALS: | |
required: true | |
workflow_dispatch: | |
inputs: | |
release_version: | |
required: true | |
type: string | |
description: "Release Version" | |
next_version: | |
type: string | |
description: "Next Development Version" | |
pull_request_target: | |
types: | |
- closed | |
- opened | |
- synchronize | |
paths: | |
- '**/management-server/**' | |
branches: | |
- 'main' | |
concurrency: | |
group: management-server-${{ github.event.number || github.run_id }} | |
cancel-in-progress: true | |
env: | |
GH_TOKEN: ${{ secrets.WSO2_BOT_TOKEN }} | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
steps: | |
- name: Install Go | |
uses: actions/setup-go@v3 | |
with: | |
go-version: "1.19" | |
- name: Install Revive | |
shell: sh | |
run: | | |
go install github.com/mgechev/revive@latest | |
- name: Checkout apk-repo. | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: "0" | |
path: apk-repo | |
token: ${{ secrets.WSO2_BOT_TOKEN }} | |
- name: Set release username and email | |
shell: sh | |
run: | | |
git config --global user.name ${{ secrets.WSO2_BOT_USER }} | |
git config --global user.email ${{ secrets.WSO2_BOT_EMAIL }} | |
- name: checkout pull request and merge. | |
shell: sh | |
if: github.event_name == 'pull_request_target' && github.event.action == 'opened' || github.event.action == 'synchronize' | |
run: | | |
cd apk-repo | |
gh pr checkout ${{ github.event.number }} -b pr-${{ github.event.number }} | |
git checkout pr-${{ github.event.number }} | |
git merge origin/main | |
- name: Run Gradle build | |
if: github.event_name == 'workflow_dispatch' && github.event.inputs.release_version != '' && github.event.inputs.next_version != '' | |
shell: sh | |
run: | | |
cd apk-repo/management-server | |
./gradlew release -Prelease.useAutomaticVersion=true -Pdocker_organization=${{ secrets.DOCKER_ORGANIZATION }} -Pdocker_username=${{ secrets.DOCKER_USERNAME }} -Pdocker_password=${{ secrets.DOCKER_PASSWORD }} -Prelease.releaseVersion=${{ github.event.inputs.release_version }} -Prelease.newVersion=${{ github.event.inputs.next_version }} -PmultiArch=true | |
- name: Run Gradle Build | |
run: | | |
cd apk-repo/management-server | |
./gradlew build | |
- name: Run Gradle Build | |
if: github.event_name == 'pull_request_target' && github.event.action == 'closed' && github.event.pull_request.merged == true | |
run: | | |
cd apk-repo/management-server | |
./gradlew docker_push -Pdocker_organization=${{ secrets.DOCKER_ORGANIZATION }} -Pdocker_username=${{ secrets.DOCKER_USERNAME }} -Pdocker_password=${{ secrets.DOCKER_PASSWORD }} -Pimage_version=latest -PmultiArch=true | |
./gradlew docker_push -Pdocker_organization=${{ secrets.DOCKER_ORGANIZATION }} -Pdocker_username=${{ secrets.DOCKER_USERNAME }} -Pdocker_password=${{ secrets.DOCKER_PASSWORD }} -Pimage_version=${{ github.sha }} -PmultiArch=true | |
- name: Login to azure. | |
if: ${{inputs.aks_deployment}} | |
uses: azure/login@v1 | |
with: | |
creds: ${{ secrets.AZURE_CREDENTIALS }} | |
- name: Push Docker images to aks. | |
if: ${{inputs.aks_deployment}} | |
run: | | |
az acr login -n ${{ secrets.AZURE_ACR_NAME }} | |
cd apk-repo/management-server | |
./gradlew docker_push -Pdocker_organization=${{ secrets.DOCKER_ORGANIZATION }} -Pimage_version=${{ github.sha }} -PmultiArch=true | |
- name: run codecov | |
uses: codecov/codecov-action@v3 | |
with: | |
verbose: true # optional (default = false) | |
directory: apk-repo/idp/management-server | |
flags: management-server |