Deployments
Every time you push code to your repository, Deploy Forge can automatically deploy your changes to WordPress. This page explains the deployment lifecycle and how to manage deployments.
Deployment Lifecycle
A deployment progresses through several states depending on the deployment method:
GitHub Actions flow:
- Pending - Deployment created, waiting for WordPress to acknowledge
- Triggered - GitHub Actions workflow dispatch sent
- Running - Workflow is in progress
- Artifact Ready - Workflow complete, build artifact available for download
- Downloading - WordPress plugin is downloading the artifact
- Deploying - WordPress plugin is deploying files to the theme directory
- Success - Deployment completed successfully
Direct Clone flow:
- Pending - Deployment created, waiting for WordPress to acknowledge
- Cloning - WordPress plugin is cloning the repository
- Deploying - WordPress plugin is deploying files to the theme directory
- Success - Deployment completed successfully
Alternate outcomes:
- Failed - An error occurred during any step
- Skipped - WordPress chose to skip this deployment
How Deployments Work
GitHub Actions Method
- You push code to your configured branch
- GitHub sends a webhook to Deploy Forge
- Deploy Forge creates a deployment record and notifies your WordPress site
- Your WordPress plugin acknowledges and requests a workflow trigger
- Deploy Forge triggers your GitHub Actions workflow via the GitHub API
- The workflow builds your theme and uploads an artifact
- GitHub sends a workflow completion webhook to Deploy Forge, which fetches the artifact info and notifies WordPress with the download URL
- The WordPress plugin downloads the artifact and deploys the files
- Status updates to Success
Direct Clone Method
- You push code to your configured branch
- GitHub sends a webhook to Deploy Forge
- Deploy Forge creates a deployment record and notifies your WordPress site
- Your WordPress plugin acknowledges and requests clone credentials
- Deploy Forge generates a temporary access token for your repository
- The WordPress plugin clones the repository using those credentials
- Files are deployed to the theme directory
- Status updates to Success
Direct Clone skips the build step entirely — deployments are faster since there's no workflow to run.
Triggering Deployments
Automatic (Webhook)
Deployments trigger automatically when you push to your configured branch:
- Push to your configured branch
- GitHub sends a push webhook to Deploy Forge
- Deploy Forge validates the webhook signature and creates a deployment
- Your WordPress site is notified and processes the deployment
This is configured automatically when you connect your site. You don't need to manually set up any webhooks.
Manual
From Deploy Forge → Dashboard in WordPress admin:
- Click Deploy Now
- Confirm the deployment
- Watch progress as the deployment runs
Viewing Deployment History
Go to Deploy Forge → History to see all deployments:
- Status - Current state (e.g., pending, running, success, failed, skipped)
- Commit - Hash and message
- Triggered by - How the deployment started (push, manual, or workflow dispatch)
- Timestamp - When the deployment was created and completed