PHP: Configure the GitHub Actions workflow
This documentation is part of the Deploy with GitHub Actions guide. You can view the complete guide here: How to deploy your PHP code using GitHub Actions.
👋 Welcome to the Stackhero documentation!
Stackhero offers a PHP cloud solution designed for fast, reliable deployments:
- Deploy your PHP application to production in seconds with a simple
git push.- Use your own domain, with automatic HTTPS certificates configured for you—no manual steps required.
- Take advantage of automatic backups, one-click updates, and straightforward, predictable pricing. Stackhero manages these aspects so you can focus on your code.
- Enjoy strong performance and enhanced security on a private, dedicated VM built specifically for your applications.
Save time and streamline your workflow—getting started with Stackhero's PHP cloud hosting takes just a few minutes.
Now you will create a GitHub Actions workflow file to automate your deployments. In your Git repository, create a folder named .github/workflows and add a file called deploy-to-stackhero.yml with the following content:
# File: .github/workflows/deploy-to-stackhero.yml
name: Deploy to Stackhero
run-name: Deploy branch "${{ github.ref_name }}" to Stackhero
on:
push:
# List of branches that will trigger the deploy action following a git push
# Don't forget to create a corresponding environment in GitHub (under "Settings" -> "Environments") for each branch
# Then add the secret "STACKHERO_SSH_PRIVATE_KEY" and variable "STACKHERO_ENDPOINT" in that environment
branches: [ "production", "staging" ]
jobs:
Deploy:
environment: ${{ github.ref_name }}
runs-on: ubuntu-latest
steps:
- uses: stackhero-io/github-actions-deploy-to-stackhero@v1
with:
# The secret "STACKHERO_SSH_PRIVATE_KEY" and the variable "STACKHERO_ENDPOINT" should be defined in the corresponding GitHub environment (under "Settings" -> "Environments")
ssh_private_key: ${{ secrets.STACKHERO_SSH_PRIVATE_KEY }}
endpoint: ${{ vars.STACKHERO_ENDPOINT }}
Once you have added this file, you can commit your changes with the following commands in your terminal:
git add -A .
git commit -m "Add GitHub Actions to deploy to Stackhero"
To create the production branch, you can run:
git checkout -b production
Then push your changes to GitHub:
git push --set-upstream origin production
This will push your code to the production branch on GitHub. GitHub Actions will then automatically run and deploy your code to the associated Stackhero instance. To check the deployment status, go to your GitHub project and click on Actions.
GitHub Actions that deployed to production
Congratulations! Your project is now set up for automatic deployment to production using GitHub Actions.