Deploy #53
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: Deploy | |
on: | |
workflow_call: | |
inputs: | |
github_environment: | |
description: The name of the github environment for deployment secrets/Namespace | |
type: string | |
required: true | |
environment: | |
description: The name of the environment to deploy to (dev/prod) | |
type: string | |
required: true | |
version: | |
description: The image version to deploy | |
type: string | |
required: true | |
workflow_dispatch: | |
inputs: | |
github_environment: | |
description: The name of the github environment for deployment secrets/Namespace | |
type: choice | |
required: true | |
options: | |
- development | |
- production | |
environment: | |
description: Environment | |
type: choice | |
required: true | |
options: | |
- dev | |
- prod | |
version: | |
description: Image version | |
type: string | |
required: true | |
jobs: | |
deploy: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
environment: | |
name: ${{ inputs.github_environment }} | |
steps: | |
- name: Checkout repository | |
uses: actions/checkout@v4 | |
# - name: Env details | |
# uses: ./.github/actions/get-env-details | |
# id: env | |
# with: | |
# environment: ${{ inputs.github_environment }} | |
# - name: Set Kubernetes Namespace secrets | |
# id: set_namespace_secrets | |
# run: | | |
# if [[ "${{ inputs.github_environment }}" == "development" ]]; then | |
# api=https://"{{ secrets.DEVELOPMENT_KUBE_CLUSTER }}" | |
# cert="${{ secrets.DEVELOPMENT_KUBE_CERT }}" | |
# cluster="${{ secrets.DEVELOPMENT_KUBE_CLUSTER }}" | |
# namespace="${{ secrets.DEVELOPMENT_KUBE_NAMESPACE }}" | |
# token="${{ secrets.DEVELOPMENT_KUBE_TOKEN }}" | |
# elif [[ "${{ inputs.github_environment }}" == "production" ]]; then | |
# api=https://"{{ secrets.PRODUCTION_KUBE_CLUSTER }}" | |
# cert="${{ secrets.PRODUCTION_KUBE_CERT }}" | |
# cluster="${{ secrets.PRODUCTION_KUBE_CLUSTER }}" | |
# namespace="${{ secrets.PRODUCTION_KUBE_NAMESPACE }}" | |
# token="${{ secrets.PRODUCTION_KUBE_TOKEN }}" | |
# else | |
# echo "Invalid Github environment/namespace specified: ${{ inputs.github_environment }}" | |
# exit 1 | |
# fi | |
- name: Deploy to Dev | |
# if: ${{ steps.check_files.outputs.files_exists == 'true' && steps.enabled.outputs.enabled == 'true' }} | |
uses: ./.github/actions/cloud-platform-deploy | |
with: | |
environment: ${{ inputs.environment }} | |
version: ${{ inputs.version }} | |
api: https://${{ secrets.DEVELOPMENT_KUBE_CLUSTER }} | |
cert: ${{ secrets.DEVELOPMENT_KUBE_CERT }} | |
cluster: ${{ secrets.DEVELOPMENT_KUBE_CLUSTER }} | |
namespace: ${{ secrets.DEVELOPMENT_KUBE_NAMESPACE }} | |
token: ${{ secrets.DEVELOPMENT_KUBE_TOKEN }} | |
# - name: Set Kubernetes Namespace secrets | |
# id: set_namespace_secrets | |
# run: | | |
# if [[ "${{ inputs.github_environment }}" == "development" ]]; then | |
# api=https://"{{ secrets.DEVELOPMENT_KUBE_CLUSTER }}" | |
# cert="${{ secrets.DEVELOPMENT_KUBE_CERT }}" | |
# cluster="${{ secrets.DEVELOPMENT_KUBE_CLUSTER }}" | |
# namespace="${{ secrets.DEVELOPMENT_KUBE_NAMESPACE }}" | |
# token="${{ secrets.DEVELOPMENT_KUBE_TOKEN }}" | |
# elif [[ "${{ inputs.github_environment }}" == "production" ]]; then | |
# api=https://"{{ secrets.PRODUCTION_KUBE_CLUSTER }}" | |
# cert="${{ secrets.PRODUCTION_KUBE_CERT }}" | |
# cluster="${{ secrets.PRODUCTION_KUBE_CLUSTER }}" | |
# namespace="${{ secrets.PRODUCTION_KUBE_NAMESPACE }}" | |
# token="${{ secrets.PRODUCTION_KUBE_TOKEN }}" | |
# else | |
# echo "Invalid Github environment/namespace specified: ${{ inputs.github_environment }}" | |
# exit 1 | |
# fi | |
- name: Deploy to Prod | |
# if: ${{ steps.check_files.outputs.files_exists == 'true' && steps.enabled.outputs.enabled == 'true' }} | |
uses: ./.github/actions/cloud-platform-deploy | |
with: | |
environment: ${{ inputs.github_environment }} | |
version: ${{ inputs.version }} | |
api: https://${{ secrets.PRODUCTION_KUBE_CLUSTER }} | |
cert: ${{ secrets.PRODUCTION_KUBE_CERT }} | |
cluster: ${{ secrets.PRODUCTION_KUBE_CLUSTER }} | |
namespace: ${{ secrets.PRODUCTION_KUBE_NAMESPACE }} | |
token: ${{ secrets.PRODUCTION_KUBE_TOKEN }} | |
# jobs: | |
# deploy: | |
# runs-on: ubuntu-latest | |
# strategy: | |
# fail-fast: false | |
# environment: | |
# name: ${{ inputs.github_environment }} | |
# steps: | |
# - uses: actions/checkout@v3 | |
# - uses: ./.github/actions/get-env-details | |
# id: env | |
# with: | |
# environment: ${{ inputs.environment }} | |
# - name: Set Kubernetes Namespace secrets | |
# id: set_namespace_secrets | |
# run: | | |
# case "${{ }}" | |
# uses: ./.github/actions/cloud-platform-deploy | |
# with: | |
# environment: ${{ inputs.environment }} | |
# version: ${{ inputs.version }} | |
# api: https://${{ secrets.DEVELOPMENT_KUBE_CLUSTER }} | |
# cert: ${{ secrets.DEVELOPMENT_KUBE_CERT }} | |
# cluster: ${{ secrets.DEVELOPMENT_KUBE_CLUSTER }} | |
# namespace: ${{ secrets.DEVELOPMENT_KUBE_NAMESPACE }} | |
# token: ${{ secrets.DEVELOPMENT_KUBE_TOKEN }} | |