Files
Jonathan Miller 38a975ee57
Branch Policy Check / Verify merge target (pull_request) Successful in 0s
chore: remove VERSION from all file header comments
Remove VERSION: XX.YY.ZZ lines from 213 file headers across PHP,
TypeScript, TF definitions, workflows, CSS, markdown, and XML files.
Version is tracked in composer.json and CHANGELOG.md only.

Authored-by: Moko Consulting

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-11 16:51:00 -05:00

2.5 KiB

SFTP Deploy Config — Local Setup

This directory (scripts/sftp-config/) holds per-environment SFTP connection configs used by deploy-sftp.php and the deploy-dev / deploy-release GitHub Actions workflows.

This directory is gitignored. Config files contain server hostnames and usernames. Never commit them.


Quick Setup

  1. Copy the example templates from MokoStandards:

    # From your repo root
    mkdir -p scripts/sftp-config scripts/keys
    cp path/to/MokoStandards/templates/scripts/deploy/sftp-config.dev.json.example \
       scripts/sftp-config/sftp-config.dev.json
    cp path/to/MokoStandards/templates/scripts/deploy/sftp-config.rs.json.example \
       scripts/sftp-config/sftp-config.rs.json
    
  2. Fill in your values — edit sftp-config.dev.json:

    {
      "type": "sftp",
      "host": "iad1-shared-b7-01.dreamhost.com",
      "user": "mokoconsulting_dev",
      "ssh_key_file": "jmiller_private.ppk",
      "port": "22",
      "remote_path": "/home/mokoconsulting_dev/dev.example.com/htdocs/custom/mymodule/"
    }
    
  3. Place your SSH key in scripts/keys/:

    scripts/
      keys/
        jmiller_private.ppk    ← gitignored; never committed
    

    ssh_key_file may be a bare filename (resolved from scripts/keys/) or an absolute path (e.g. J:/My Drive/Keys/jmiller_private.ppk).


Files in This Directory

File Purpose
sftp-config.dev.json Dev server connection (used with --env dev)
sftp-config.rs.json Production/release server connection (used with --env rs)

Running the Script

# Preview what would be uploaded (no connection made)
php path/to/MokoStandards/api/deploy/deploy-sftp.php \
  --path . --env dev --dry-run --verbose

# Deploy src/ to dev
php path/to/MokoStandards/api/deploy/deploy-sftp.php \
  --path . --env dev

# Deploy src/ to production
php path/to/MokoStandards/api/deploy/deploy-sftp.php \
  --path . --env rs

For full option reference run:

php path/to/MokoStandards/api/deploy/deploy-sftp.php --help

Last Updated: 2026-03-13