Page:
workflows-demo-deployment
Pages
ARCHITECTURE
AUTO_CREATE_ORG_PROJECTS
CLI_AUTOMATION
DEPLOY_SCRIPTS
DOLIBARR_MODULE_IDS
DRY_RUN_PATTERN
Documentation-Standards.-.-
Documentation-Standards.-
File-Header-Standards
Home
JOOMLA_SYNC
LEGAL_DOC_GENERATOR_WEB_README
MCP-Servers.-.-.
MCP-Servers
MINIFICATION
MONITORING_SCRIPTS
NEW_SCRIPTS
QUICKSTART_ORG_PROJECTS
SITE_MONITORING
WIKI_STANDARDS
WORKFLOW_STANDARDS
api-automation-index.-
api-automation-index
api-definitions-default-index.-
api-definitions-default-index
api-definitions-sync-index.-
api-definitions-sync-index
api-deploy-index.-
api-deploy-index
api-fix-index.-
api-fix-index
api-index.-
api-index
api-maintenance-index.-
api-maintenance-index
api-plugin-index.-
api-plugin-index
api-tests-index.-
api-tests-index
api-tests-sample-index.-
api-tests-sample-index
api-validate-index.-
api-validate-index
automation-README.-
automation-README
automation-branch-version-automation.-
automation-branch-version-automation
automation-push-files.-
automation-push-files
automation-repo-cleanup.-
automation-repo-cleanup
client-repos.-.-
client-repos
standards-mokostandards-file-spec.-
standards-mokostandards-file-spec
templates-client-waas
templates-dolibarr
templates-generic
templates-mcp
workflows-README.-
workflows-README
workflows-auto-release.-
workflows-auto-release
workflows-branch-protection.-
workflows-branch-protection
workflows-build-release.-
workflows-build-release
workflows-cascade-dev.-
workflows-cascade-dev
workflows-changelog-management.-
workflows-changelog-management
workflows-demo-deployment.-
workflows-demo-deployment
workflows-dev-branch-tracking.-
workflows-dev-branch-tracking
workflows-dev-deployment.-
workflows-dev-deployment
workflows-index.-
workflows-index
workflows-release-system.-
workflows-release-system
workflows-renovate.-
workflows-renovate
workflows-reusable-workflows.-
workflows-reusable-workflows
workflows-rs-deployment.-
workflows-rs-deployment
workflows-secret-scanning.-
workflows-secret-scanning
workflows-shared-workflows.-
workflows-shared-workflows
workflows-standards-compliance.-
workflows-standards-compliance
workflows-static-analysis.-
workflows-static-analysis
workflows-sub-issue-management.-
workflows-sub-issue-management
workflows-update-server.-
workflows-update-server
workflows-workflow-architecture.-
workflows-workflow-architecture
Clone
3
workflows-demo-deployment
Jonathan Miller edited this page 2026-05-20 01:26:25 +00:00
← Home
Demo Server Deployment
Automated SFTP deployment of the src/ directory to the demo server on merge to main.
Overview
The deploy-demo.yml workflow pushes the contents of src/ to a demo server over SFTP when:
- A commit is pushed to
mainormaster - A pull request targeting
main/masteris merged - Triggered manually via workflow dispatch
Unlike deploy-dev.yml, the demo workflow deploys the real version (no "development" override).
Required Variables
| Variable | Scope | Description |
|---|---|---|
DEMO_FTP_HOST |
org | Demo server hostname (may include :port suffix) |
DEMO_FTP_PATH |
org | Base remote path (e.g., /var/www/demo) |
DEMO_FTP_USERNAME |
org | SFTP username |
DEMO_FTP_SUFFIX |
repo | Repo-specific subdirectory appended to DEMO_FTP_PATH |
DEMO_FTP_PORT |
org (optional) | Explicit port override (auto-detected from host or defaults to 22) |
Required Secrets
| Secret | Scope | Description |
|---|---|---|
DEMO_FTP_KEY |
org | SSH private key (preferred) |
DEMO_FTP_PASSWORD |
org | SFTP password or key passphrase |
At least one of DEMO_FTP_KEY or DEMO_FTP_PASSWORD must be set.
Behaviour
- Permission check —
jmillerandgitea-actions[bot]are always authorized; other actors needadminormaintainrole - Skip on chore/ branches — PRs from
chore/branches do not trigger deployment - Skip if DEMO_FTP_SUFFIX not set — repos without the variable are silently skipped
- Clear remote folder — always clears the remote destination before uploading
- Upload — deploys via
deploy-sftp.phpusing phpseclib3 - Failure issue — creates/updates a
deploy-failureissue on error
Differences from Dev Deployment
| Feature | Dev | Demo |
|---|---|---|
| Triggers | dev/**, develop, development |
main, master |
| Version | Set to "development" |
Real version from README.md |
| Variables | DEV_FTP_* |
DEMO_FTP_* |
See Also
Note:
deploy-rs.ymlhas been retired. RS deployment is handled via the release pipeline only.
Repo: moko-platform · moko-platform wiki
| Field | Value |
|---|---|
| Minimum Version | 04.07.00 |
| Platform | all |
| Applies To | All repositories |
| Revision | Date | Author | Description |
|---|---|---|---|
| 1.0 | 2026-05-08 | Moko Consulting | Initial version |