ci: sync all workflows from MokoStandards v04.05
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
19
.github/workflows/deploy-demo.yml
vendored
19
.github/workflows/deploy-demo.yml
vendored
@@ -22,7 +22,7 @@
|
|||||||
# INGROUP: MokoStandards.Deploy
|
# INGROUP: MokoStandards.Deploy
|
||||||
# REPO: https://github.com/mokoconsulting-tech/MokoStandards
|
# REPO: https://github.com/mokoconsulting-tech/MokoStandards
|
||||||
# PATH: /templates/workflows/shared/deploy-demo.yml.template
|
# PATH: /templates/workflows/shared/deploy-demo.yml.template
|
||||||
# VERSION: 04.05.00
|
# VERSION: 04.05.13
|
||||||
# BRIEF: SFTP deployment workflow for demo server — synced to all governed repos
|
# BRIEF: SFTP deployment workflow for demo server — synced to all governed repos
|
||||||
# NOTE: Synced via bulk-repo-sync to .github/workflows/deploy-demo.yml in all governed repos.
|
# NOTE: Synced via bulk-repo-sync to .github/workflows/deploy-demo.yml in all governed repos.
|
||||||
# Port is resolved in order: DEMO_FTP_PORT variable → :port suffix in DEMO_FTP_HOST → 22.
|
# Port is resolved in order: DEMO_FTP_PORT variable → :port suffix in DEMO_FTP_HOST → 22.
|
||||||
@@ -296,6 +296,12 @@ jobs:
|
|||||||
HOST="$HOST_RAW"
|
HOST="$HOST_RAW"
|
||||||
PORT="$PORT_VAR"
|
PORT="$PORT_VAR"
|
||||||
|
|
||||||
|
if [ -z "$HOST" ]; then
|
||||||
|
echo "⏭️ DEMO_FTP_HOST not configured — skipping demo deployment."
|
||||||
|
echo "skip=true" >> "$GITHUB_OUTPUT"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
# Priority 1 — explicit DEMO_FTP_PORT variable
|
# Priority 1 — explicit DEMO_FTP_PORT variable
|
||||||
if [ -n "$PORT" ]; then
|
if [ -n "$PORT" ]; then
|
||||||
echo "ℹ️ Using explicit DEMO_FTP_PORT=${PORT}"
|
echo "ℹ️ Using explicit DEMO_FTP_PORT=${PORT}"
|
||||||
@@ -317,7 +323,7 @@ jobs:
|
|||||||
echo "SFTP target: ${HOST}:${PORT}"
|
echo "SFTP target: ${HOST}:${PORT}"
|
||||||
|
|
||||||
- name: Build remote path
|
- name: Build remote path
|
||||||
if: steps.source.outputs.skip == 'false'
|
if: steps.source.outputs.skip == 'false' && steps.conn.outputs.skip != 'true'
|
||||||
id: remote
|
id: remote
|
||||||
env:
|
env:
|
||||||
DEMO_FTP_PATH: ${{ vars.DEMO_FTP_PATH }}
|
DEMO_FTP_PATH: ${{ vars.DEMO_FTP_PATH }}
|
||||||
@@ -326,10 +332,9 @@ jobs:
|
|||||||
BASE="$DEMO_FTP_PATH"
|
BASE="$DEMO_FTP_PATH"
|
||||||
|
|
||||||
if [ -z "$BASE" ]; then
|
if [ -z "$BASE" ]; then
|
||||||
echo "❌ DEMO_FTP_PATH is not set."
|
echo "⏭️ DEMO_FTP_PATH not configured — skipping demo deployment."
|
||||||
echo " Configure it as an org-level variable (Settings → Variables) and"
|
echo "skip=true" >> "$GITHUB_OUTPUT"
|
||||||
echo " ensure this repository has been granted access to it."
|
exit 0
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# DEMO_FTP_SUFFIX is required — it identifies the remote subdirectory for this repo.
|
# DEMO_FTP_SUFFIX is required — it identifies the remote subdirectory for this repo.
|
||||||
@@ -640,7 +645,7 @@ jobs:
|
|||||||
rm -f /tmp/deploy_key /tmp/sftp-config.json
|
rm -f /tmp/deploy_key /tmp/sftp-config.json
|
||||||
|
|
||||||
- name: Create or update failure issue
|
- name: Create or update failure issue
|
||||||
if: failure() && steps.remote.outputs.skip != 'true'
|
if: failure() && steps.remote.outputs.skip != 'true' && steps.conn.outputs.skip != 'true'
|
||||||
env:
|
env:
|
||||||
GH_TOKEN: ${{ secrets.GH_TOKEN || github.token }}
|
GH_TOKEN: ${{ secrets.GH_TOKEN || github.token }}
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
2
.github/workflows/deploy-dev.yml
vendored
2
.github/workflows/deploy-dev.yml
vendored
@@ -22,7 +22,7 @@
|
|||||||
# INGROUP: MokoStandards.Deploy
|
# INGROUP: MokoStandards.Deploy
|
||||||
# REPO: https://github.com/mokoconsulting-tech/MokoStandards
|
# REPO: https://github.com/mokoconsulting-tech/MokoStandards
|
||||||
# PATH: /templates/workflows/shared/deploy-dev.yml.template
|
# PATH: /templates/workflows/shared/deploy-dev.yml.template
|
||||||
# VERSION: 04.05.00
|
# VERSION: 04.05.13
|
||||||
# BRIEF: SFTP deployment workflow for development server — synced to all governed repos
|
# BRIEF: SFTP deployment workflow for development server — synced to all governed repos
|
||||||
# NOTE: Synced via bulk-repo-sync to .github/workflows/deploy-dev.yml in all governed repos.
|
# NOTE: Synced via bulk-repo-sync to .github/workflows/deploy-dev.yml in all governed repos.
|
||||||
# Port is resolved in order: DEV_FTP_PORT variable → :port suffix in DEV_FTP_HOST → 22.
|
# Port is resolved in order: DEV_FTP_PORT variable → :port suffix in DEV_FTP_HOST → 22.
|
||||||
|
|||||||
19
.github/workflows/deploy-rs.yml
vendored
19
.github/workflows/deploy-rs.yml
vendored
@@ -22,7 +22,7 @@
|
|||||||
# INGROUP: MokoStandards.Deploy
|
# INGROUP: MokoStandards.Deploy
|
||||||
# REPO: https://github.com/mokoconsulting-tech/MokoStandards
|
# REPO: https://github.com/mokoconsulting-tech/MokoStandards
|
||||||
# PATH: /templates/workflows/shared/deploy-rs.yml.template
|
# PATH: /templates/workflows/shared/deploy-rs.yml.template
|
||||||
# VERSION: 04.05.00
|
# VERSION: 04.05.13
|
||||||
# BRIEF: SFTP deployment workflow for release staging server — synced to all governed repos
|
# BRIEF: SFTP deployment workflow for release staging server — synced to all governed repos
|
||||||
# NOTE: Synced via bulk-repo-sync to .github/workflows/deploy-rs.yml in all governed repos.
|
# NOTE: Synced via bulk-repo-sync to .github/workflows/deploy-rs.yml in all governed repos.
|
||||||
# Port is resolved in order: RS_FTP_PORT variable → :port suffix in RS_FTP_HOST → 22.
|
# Port is resolved in order: RS_FTP_PORT variable → :port suffix in RS_FTP_HOST → 22.
|
||||||
@@ -296,6 +296,12 @@ jobs:
|
|||||||
HOST="$HOST_RAW"
|
HOST="$HOST_RAW"
|
||||||
PORT="$PORT_VAR"
|
PORT="$PORT_VAR"
|
||||||
|
|
||||||
|
if [ -z "$HOST" ]; then
|
||||||
|
echo "⏭️ RS_FTP_HOST not configured — skipping RS deployment."
|
||||||
|
echo "skip=true" >> "$GITHUB_OUTPUT"
|
||||||
|
exit 0
|
||||||
|
fi
|
||||||
|
|
||||||
# Priority 1 — explicit RS_FTP_PORT variable
|
# Priority 1 — explicit RS_FTP_PORT variable
|
||||||
if [ -n "$PORT" ]; then
|
if [ -n "$PORT" ]; then
|
||||||
echo "ℹ️ Using explicit RS_FTP_PORT=${PORT}"
|
echo "ℹ️ Using explicit RS_FTP_PORT=${PORT}"
|
||||||
@@ -317,7 +323,7 @@ jobs:
|
|||||||
echo "SFTP target: ${HOST}:${PORT}"
|
echo "SFTP target: ${HOST}:${PORT}"
|
||||||
|
|
||||||
- name: Build remote path
|
- name: Build remote path
|
||||||
if: steps.source.outputs.skip == 'false'
|
if: steps.source.outputs.skip == 'false' && steps.conn.outputs.skip != 'true'
|
||||||
id: remote
|
id: remote
|
||||||
env:
|
env:
|
||||||
RS_FTP_PATH: ${{ vars.RS_FTP_PATH }}
|
RS_FTP_PATH: ${{ vars.RS_FTP_PATH }}
|
||||||
@@ -326,10 +332,9 @@ jobs:
|
|||||||
BASE="$RS_FTP_PATH"
|
BASE="$RS_FTP_PATH"
|
||||||
|
|
||||||
if [ -z "$BASE" ]; then
|
if [ -z "$BASE" ]; then
|
||||||
echo "❌ RS_FTP_PATH is not set."
|
echo "⏭️ RS_FTP_PATH not configured — skipping RS deployment."
|
||||||
echo " Configure it as an org-level variable (Settings → Variables) and"
|
echo "skip=true" >> "$GITHUB_OUTPUT"
|
||||||
echo " ensure this repository has been granted access to it."
|
exit 0
|
||||||
exit 1
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# RS_FTP_SUFFIX is required — it identifies the remote subdirectory for this repo.
|
# RS_FTP_SUFFIX is required — it identifies the remote subdirectory for this repo.
|
||||||
@@ -567,7 +572,7 @@ jobs:
|
|||||||
rm -f /tmp/deploy_key /tmp/sftp-config.json
|
rm -f /tmp/deploy_key /tmp/sftp-config.json
|
||||||
|
|
||||||
- name: Create or update failure issue
|
- name: Create or update failure issue
|
||||||
if: failure() && steps.remote.outputs.skip != 'true'
|
if: failure() && steps.remote.outputs.skip != 'true' && steps.conn.outputs.skip != 'true'
|
||||||
env:
|
env:
|
||||||
GH_TOKEN: ${{ secrets.GH_TOKEN || github.token }}
|
GH_TOKEN: ${{ secrets.GH_TOKEN || github.token }}
|
||||||
run: |
|
run: |
|
||||||
|
|||||||
@@ -22,7 +22,7 @@
|
|||||||
# INGROUP: MokoStandards.Firewall
|
# INGROUP: MokoStandards.Firewall
|
||||||
# REPO: https://github.com/mokoconsulting-tech/MokoStandards
|
# REPO: https://github.com/mokoconsulting-tech/MokoStandards
|
||||||
# PATH: /templates/workflows/shared/enterprise-firewall-setup.yml.template
|
# PATH: /templates/workflows/shared/enterprise-firewall-setup.yml.template
|
||||||
# VERSION: 04.05.00
|
# VERSION: 04.05.13
|
||||||
# BRIEF: Enterprise firewall configuration — generates outbound allow-rules including SFTP deployment server
|
# BRIEF: Enterprise firewall configuration — generates outbound allow-rules including SFTP deployment server
|
||||||
# NOTE: Reads DEV_FTP_HOST / DEV_FTP_PORT variables to include SFTP egress rules alongside HTTPS rules.
|
# NOTE: Reads DEV_FTP_HOST / DEV_FTP_PORT variables to include SFTP egress rules alongside HTTPS rules.
|
||||||
|
|
||||||
|
|||||||
2
.github/workflows/repository-cleanup.yml
vendored
2
.github/workflows/repository-cleanup.yml
vendored
@@ -9,7 +9,7 @@
|
|||||||
# INGROUP: MokoStandards.Maintenance
|
# INGROUP: MokoStandards.Maintenance
|
||||||
# REPO: https://github.com/mokoconsulting-tech/MokoStandards
|
# REPO: https://github.com/mokoconsulting-tech/MokoStandards
|
||||||
# PATH: /templates/workflows/shared/repository-cleanup.yml.template
|
# PATH: /templates/workflows/shared/repository-cleanup.yml.template
|
||||||
# VERSION: 04.05.00
|
# VERSION: 04.05.13
|
||||||
# BRIEF: Recurring repository maintenance — labels, branches, workflows, logs, doc indexes
|
# BRIEF: Recurring repository maintenance — labels, branches, workflows, logs, doc indexes
|
||||||
# NOTE: Synced via bulk-repo-sync to .github/workflows/repository-cleanup.yml in all governed repos.
|
# NOTE: Synced via bulk-repo-sync to .github/workflows/repository-cleanup.yml in all governed repos.
|
||||||
# Runs on the 1st and 15th of each month at 6:00 AM UTC, and on manual dispatch.
|
# Runs on the 1st and 15th of each month at 6:00 AM UTC, and on manual dispatch.
|
||||||
|
|||||||
2
.github/workflows/sync-version-on-merge.yml
vendored
2
.github/workflows/sync-version-on-merge.yml
vendored
@@ -9,7 +9,7 @@
|
|||||||
# INGROUP: MokoStandards.Automation
|
# INGROUP: MokoStandards.Automation
|
||||||
# REPO: https://github.com/mokoconsulting-tech/MokoStandards
|
# REPO: https://github.com/mokoconsulting-tech/MokoStandards
|
||||||
# PATH: /templates/workflows/shared/sync-version-on-merge.yml.template
|
# PATH: /templates/workflows/shared/sync-version-on-merge.yml.template
|
||||||
# VERSION: 04.05.00
|
# VERSION: 04.05.13
|
||||||
# BRIEF: Auto-bump patch version on every push to main and propagate to all file headers
|
# BRIEF: Auto-bump patch version on every push to main and propagate to all file headers
|
||||||
# NOTE: Synced via bulk-repo-sync to .github/workflows/sync-version-on-merge.yml in all governed repos.
|
# NOTE: Synced via bulk-repo-sync to .github/workflows/sync-version-on-merge.yml in all governed repos.
|
||||||
# README.md is the single source of truth for the repository version.
|
# README.md is the single source of truth for the repository version.
|
||||||
|
|||||||
Reference in New Issue
Block a user