Skip to content

delete management cluster datastores from the frontend (#4423) #550

delete management cluster datastores from the frontend (#4423)

delete management cluster datastores from the frontend (#4423) #550

Workflow file for this run

"on":
push:
tags:
- production
name: Deploy Porter to Production
jobs:
deploy-start:
name: Mark deploy as started
runs-on: ubuntu-latest
outputs:
deploy-ts: ${{ steps.deploy.outputs.ts }}
steps:
- name: Slack Notification
uses: slackapi/slack-github-action@v1
id: deploy
continue-on-error: true
env:
SLACK_WEBHOOK_URL: ${{ secrets.PORTER_PROD_NOTIFICATIONS_SLACK_WEBHOOK }}
with:
payload: |
{
"text": "porter prod deploy started (In Progress)\n<${{ github.event.pull_request.html_url || github.event.head_commit.url }}|Link to commit>",
"attachments": [
{
"pretext": "Deployment started",
"color": "dbab09",
"fields": [
{
"title": "Status",
"short": true,
"value": "In Progress"
}
]
}
]
}
build-go:
runs-on: ubuntu-latest
needs:
- deploy-start
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: build-go
uses: ./.github/actions/build-go
build-npm:
runs-on: ubuntu-latest
needs:
- deploy-start
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: build-npm
uses: ./.github/actions/build-npm
deploy-porter:
runs-on: ubuntu-latest
needs: [build-go, build-npm]
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Get Go Binaries
uses: actions/download-artifact@v3
with:
name: go-binaries
path: bin/
- name: Get NPM static files
uses: actions/download-artifact@v3
with:
name: npm-static-files
path: build/
- name: Set Github tag
id: vars
run: echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
- name: Build Image
timeout-minutes: 20
uses: porter-dev/[email protected]
with:
command: update build --app porter-ui --tag ${{ steps.vars.outputs.sha_short }} --stream
env:
PORTER_HOST: https://dashboard.internal-tools.porter.run
PORTER_CLUSTER: 9
PORTER_PROJECT: 5
PORTER_TOKEN: ${{ secrets.PORTER_PRODUCTION_DEPLOYMENT }}
- name: Push Image
timeout-minutes: 20
uses: porter-dev/[email protected]
with:
command: update push --app porter-ui --tag ${{ steps.vars.outputs.sha_short }} --stream
env:
PORTER_HOST: https://dashboard.internal-tools.porter.run
PORTER_CLUSTER: 9
PORTER_PROJECT: 5
PORTER_TOKEN: ${{ secrets.PORTER_PRODUCTION_DEPLOYMENT }}
- name: Update Porter Migration Job
timeout-minutes: 20
uses: porter-dev/[email protected]
with:
command: update config --app migrate --tag ${{ steps.vars.outputs.sha_short }} --stream
env:
PORTER_HOST: https://dashboard.internal-tools.porter.run
PORTER_CLUSTER: 9
PORTER_PROJECT: 5
PORTER_TOKEN: ${{ secrets.PORTER_PRODUCTION_DEPLOYMENT }}
- name: Run Migration Job
timeout-minutes: 20
uses: porter-dev/[email protected]
with:
job: migrate
host: https://dashboard.internal-tools.porter.run
cluster: 9
project: 5
token: ${{ secrets.PORTER_PRODUCTION_DEPLOYMENT }}
- name: Update Porter Server
timeout-minutes: 20
uses: porter-dev/[email protected]
with:
app: porter-ui
cluster: "9"
host: https://dashboard.internal-tools.porter.run
namespace: default
project: "5"
tag: ${{ steps.vars.outputs.sha_short }}
token: ${{ secrets.PORTER_PRODUCTION_DEPLOYMENT }}
- name: Update Porter Auth
timeout-minutes: 20
uses: porter-dev/[email protected]
with:
app: porter-auth
cluster: "9"
host: https://dashboard.internal-tools.porter.run
namespace: default
project: "5"
tag: ${{ steps.vars.outputs.sha_short }}
token: ${{ secrets.PORTER_PRODUCTION_DEPLOYMENT }}
deploy-worker-pool:
runs-on: ubuntu-latest
needs: [build-go, build-npm] # don't run this step unless these finish successfully
steps:
- name: Checkout code
uses: actions/checkout@v3
- name: Set Github tag
id: vars
run: echo "sha_short=$(git rev-parse --short HEAD)" >> $GITHUB_OUTPUT
- name: Update Worker Pool (revision cull job)
timeout-minutes: 20
uses: porter-dev/[email protected]
with:
app: cull-helm-revisions
cluster: "9"
host: https://dashboard.internal-tools.porter.run
namespace: default
project: "5"
tag: ${{ steps.vars.outputs.sha_short }}
token: ${{ secrets.PORTER_PRODUCTION_DEPLOYMENT }}
deploy-end:
name: Mark deploy as ended
runs-on: ubuntu-latest
if: always()
needs:
- deploy-start
- deploy-porter
- deploy-worker-pool
steps:
- name: Slack Notification
uses: slackapi/slack-github-action@v1
continue-on-error: true
env:
SLACK_WEBHOOK_URL: ${{ secrets.PORTER_PROD_NOTIFICATIONS_SLACK_WEBHOOK }}
with:
update-ts: ${{ steps.deploy-start.outputs.deploy-ts }}
payload: |
{
"text": "porter prod deploy completed\n<${{ github.event.pull_request.html_url || github.event.head_commit.url }}|Link to commit>",
"attachments": [
{
"pretext": "Deployment completed",
"color": "8590ff",
"fields": [
{
"title": "Porter Result",
"short": true,
"value": "${{ needs.deploy-porter.result }}"
},
{
"title": "Worker Pool Result",
"short": true,
"value": "${{ needs.deploy-worker-pool.result }}"
}
]
}
]
}