67 lines
1.6 KiB
YAML
67 lines
1.6 KiB
YAML
name: Reusable Server Application Workflow
|
|
|
|
on:
|
|
workflow_call:
|
|
inputs:
|
|
service_name:
|
|
required: true
|
|
type: string
|
|
workspace_name:
|
|
required: true
|
|
type: string
|
|
deploy_web:
|
|
required: false
|
|
default: true
|
|
type: boolean
|
|
deploy_worker:
|
|
required: false
|
|
default: true
|
|
type: boolean
|
|
package_path:
|
|
required: true
|
|
type: string
|
|
secrets:
|
|
DOCKER_USERNAME:
|
|
required: true
|
|
DOCKER_PASSWORD:
|
|
required: true
|
|
CI_PAT_TOKEN:
|
|
required: true
|
|
AWS_ACCESS_KEY_ID:
|
|
required: true
|
|
AWS_SECRET_ACCESS_KEY:
|
|
required: true
|
|
|
|
jobs:
|
|
publish:
|
|
name: Publish Docker Image
|
|
uses: standardnotes/server/.github/workflows/common-docker-image.yml@main
|
|
with:
|
|
service_name: ${{ inputs.service_name }}
|
|
package_path: ${{ inputs.package_path }}
|
|
workspace_name: ${{ inputs.workspace_name }}
|
|
secrets: inherit
|
|
|
|
deploy-web:
|
|
if: ${{ inputs.deploy_web }}
|
|
|
|
needs: publish
|
|
|
|
name: Deploy Web
|
|
uses: standardnotes/server/.github/workflows/common-deploy.yml@main
|
|
with:
|
|
service_name: ${{ inputs.service_name }}
|
|
docker_image: ${{ inputs.service_name }}:${{ github.sha }}
|
|
secrets: inherit
|
|
|
|
deploy-worker:
|
|
if: ${{ inputs.deploy_worker }}
|
|
|
|
needs: publish
|
|
|
|
name: Deploy Worker
|
|
uses: standardnotes/server/.github/workflows/common-deploy.yml@main
|
|
with:
|
|
service_name: ${{ inputs.service_name }}-worker
|
|
docker_image: ${{ inputs.service_name }}:${{ github.sha }}
|
|
secrets: inherit
|