Skip to content

fix: Update Fusion Integration Lib (#114) #185

fix: Update Fusion Integration Lib (#114)

fix: Update Fusion Integration Lib (#114) #185

Workflow file for this run

name: πŸš€ Push
on:
push:
branches:
- main
workflow_dispatch:
inputs:
force:
description: "Force deploy to prod"
type: boolean
default: false
required: true
jobs:
build:
secrets: inherit
name: Build
uses: equinor/spinedatasheetapi/.github/workflows/build.yml@main
release_please:
name: πŸ”– Release Please
runs-on: ubuntu-latest
steps:
- name: Create Release
id: release
uses: google-github-actions/release-please-action@v3
with:
release-type: simple
package-name: spinedatasheet
changelog-types: >
[{"type":"feat","section":"Features","hidden":false},
{"type":"fix","section":"Bug Fixes","hidden":false},
{"type":"style", "section":"Cosmetic changes","hidden":false},
{"type":"docs","section":"For developers","hidden":false},
{"type":"refactor","section":"For developers","hidden":false},
{"type":"ci", "section":"For developers","hidden":false},
{"type":"chore", "section":"For developers","hidden":false},
{"type":"perf", "section":"Optimalization","hidden":false}]
outputs:
release_created: ${{ steps.release.outputs.release_created }}
deploy-ci:
name: 'πŸš€ CI'
runs-on: ubuntu-latest
needs: build
environment: CI
permissions:
id-token: write
contents: read
steps:
- name: "Tag Image with Env"
uses: equinor/iaf-actions/add-container-tags@main
with:
build-id: ${{ github.sha }}
environment-shortname: 'ci'
registry: ${{ secrets.ACR_ENDPOINT }}
registry-repository: 'datasheetapi'
tag: 'ci-release'
client-id: ${{ secrets.ACR_USERNAME }}
client-secret: ${{ secrets.ACR_PASSWORD }}
- name: "Login to Azure"
uses: azure/login@v1
with:
client-id: ${{ vars.AZURE_SERVICE_PRINCIPAL_CLIENT_ID }}
tenant-id: ${{ vars.AZURE_TENANT_ID }}
allow-no-subscriptions: true
- name: "Obtain token for upload"
shell: bash
run: echo FUSION_TOKEN=$(az account get-access-token --resource '${{ vars.RADIX_SERVICE_ID }}' | jq '.accessToken') >> $GITHUB_ENV
- name: "Trigger Radix Deploy"
shell: bash
run: |
curl -X POST \
-i \
-f \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${{ env.FUSION_TOKEN }}" \
-d '{"branch":"main", "triggeredBy":"${{ github.workflow_ref }}"}' \
"https://api.radix.equinor.com/api/v1/applications/datasheet/pipelines/build-deploy"
deploy_qa:
name: 'πŸš€ QA'
runs-on: ubuntu-latest
needs: [release_please, deploy-ci]
if: ${{ needs.release_please.outputs.release_created || inputs.force }}
environment: QA
permissions:
id-token: write
contents: read
steps:
- name: Log into registry
uses: docker/login-action@v2
with:
registry: ${{ secrets.ACR_ENDPOINT }}
username: ${{ secrets.ACR_USERNAME }}
password: ${{ secrets.ACR_PASSWORD }}
- run: |
docker image pull ${{ secrets.REGISTRY }}/datasheetapi:${{ github.sha }}
docker tag ${{ secrets.REGISTRY }}/datasheetapi:${{ github.sha }} ${{ secrets.REGISTRY }}/datasheetapi:qa-release
docker push ${{ secrets.REGISTRY }}/datasheetapi:qa-release
- name: "Login to Azure"
uses: azure/login@v1
with:
client-id: ${{ vars.AZURE_SERVICE_PRINCIPAL_CLIENT_ID }}
tenant-id: ${{ vars.AZURE_TENANT_ID }}
allow-no-subscriptions: true
- name: "Obtain token for upload"
shell: bash
run: echo FUSION_TOKEN=$(az account get-access-token --resource '${{ vars.RADIX_SERVICE_ID }}' | jq '.accessToken') >> $GITHUB_ENV
- name: "Trigger Radix Deploy"
shell: bash
run: |
curl -X POST \
-i \
-f \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${{ env.FUSION_TOKEN }}" \
-d '{"branch":"main", "triggeredBy":"${{ github.workflow_ref }}"}' \
"https://api.radix.equinor.com/api/v1/applications/datasheet/pipelines/build-deploy"
deploy_prod:
name: 'πŸš€ Prod'
runs-on: ubuntu-latest
needs: [deploy_qa]
environment: PROD
permissions:
id-token: write
contents: read
steps:
- name: Log into registry
uses: docker/login-action@v2
with:
registry: ${{ secrets.ACR_ENDPOINT }}
username: ${{ secrets.ACR_USERNAME }}
password: ${{ secrets.ACR_PASSWORD }}
- run: |
docker image pull ${{ secrets.REGISTRY }}/datasheetapi:${{ github.sha }}
docker tag ${{ secrets.REGISTRY }}/datasheetapi:${{ github.sha }} ${{ secrets.REGISTRY }}/datasheetapi:prod-release
docker push ${{ secrets.REGISTRY }}/datasheetapi:prod-release
- name: "Login to Azure"
uses: azure/login@v1
with:
client-id: ${{ vars.AZURE_SERVICE_PRINCIPAL_CLIENT_ID }}
tenant-id: ${{ vars.AZURE_TENANT_ID }}
allow-no-subscriptions: true
- name: "Obtain token for upload"
shell: bash
run: echo FUSION_TOKEN=$(az account get-access-token --resource '${{ vars.RADIX_SERVICE_ID }}' | jq '.accessToken') >> $GITHUB_ENV
- name: "Trigger Radix Deploy"
shell: bash
run: |
curl -X POST \
-i \
-f \
-H "Content-Type: application/json" \
-H "Authorization: Bearer ${{ env.FUSION_TOKEN }}" \
-d '{"branch":"main", "triggeredBy":"${{ github.workflow_ref }}"}' \
"https://api.radix.equinor.com/api/v1/applications/datasheet/pipelines/build-deploy"