Release Plugin #94
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 Plugin | |
on: | |
workflow_dispatch: | |
inputs: | |
tag: | |
description: 'The repo version tag' | |
required: true | |
type: string | |
forgeVersionO11: | |
description: 'The plugin version on the O11 forge' | |
required: true | |
type: string | |
forgeVersionODC: | |
description: 'The plugin version on the ODC forge' | |
required: true | |
type: string | |
mabsMin: | |
description: 'Minimum MABS version' | |
required: true | |
type: string | |
releaseNotes: | |
description: 'Release Notes' | |
required: true | |
type: string | |
jobs: | |
change-extensibility: | |
uses: ./.github/workflows/o11_change_extensibility.yml | |
name: '✍🏻 Update O11 OML Extensibility' | |
secrets: inherit | |
with: | |
plugin: InAppBrowserPlugin | |
configName: InAppBrowser Plugin | |
tag: ${{ github.event.inputs.tag }} | |
forgeVersion: ${{ github.event.inputs.forgeVersionO11 }} | |
mabsMin: ${{ github.event.inputs.mabsMin }} | |
environment: enmobile11-dev.outsystemsenterprise.com | |
deploy_o11: | |
name: '🔌 Deploy plugin across LifeTime' | |
runs-on: ubuntu-latest | |
needs: change-extensibility | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v4 | |
- name: Setup Node.js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
- name: Install dependencies | |
run: npm install | |
- name: Tag Plugin with Version | |
run: npm run update:version --plugin="InAppBrowser Plugin" --lifetime=${{ secrets.LIFETIME}} --authentication='${{secrets.AUTOMATION_TOKEN}}' | |
- name: ⏳ Wait for tag version to propagate | |
run: sleep 20 # Waits for 20 seconds | |
- name: Deploying from DEV to TST | |
run: npm run deploy --plugin="InAppBrowser Plugin" --from=Development --to=Testing --lifetime=${{ secrets.LIFETIME }} --authentication='${{ secrets.AUTOMATION_TOKEN }}' | |
- name: ⏳ Wait for deployment to propagate | |
run: sleep 20 # Waits for 20 seconds | |
- name: Deploying from TST to PROD | |
run: npm run deploy --plugin="InAppBrowser Plugin" --from=Testing --to=Production --lifetime=${{ secrets.LIFETIME }} --authentication='${{ secrets.AUTOMATION_TOKEN }}' | |
deploy_odc: | |
name: '🔌 Update ODC OML Extensibility & Tenant Release' | |
uses: ./.github/workflows/odc_release.yml | |
secrets: inherit | |
with: | |
tag: ${{ github.event.inputs.tag }} | |
forgeVersion: ${{ github.event.inputs.forgeVersionODC }} | |
mabsMin: ${{ github.event.inputs.mabsMin }} | |
releaseNotes: ${{ github.event.inputs.releaseNotes }} | |
odcPluginKey: 0076c4e5-80dd-4181-a56b-fab0858c1882 | |
release: | |
uses: ./.github/workflows/github_release.yml | |
name: '🚀 Create Github release' | |
secrets: inherit | |
needs: | |
- deploy_o11 | |
- deploy_odc | |
with: | |
tag: ${{ github.event.inputs.tag }} | |
environment: Production | |
plugin: InAppBrowserPlugin | |
notes: ${{ github.event.inputs.releaseNotes }} | |
pipelineID: ${{ needs.deploy_odc.outputs.pipelineID }} | |
forgeVersionO11: ${{ github.event.inputs.forgeVersionO11 }} | |
forgeVersionODC: ${{ github.event.inputs.forgeVersionODC }} | |