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 ready-to-use PHP cloud solution with a range of advantages:
- Deploy your PHP application to production in just a few seconds with a simple
git push.- Use your own domain, with automatic HTTPS certificate configuration for enhanced security—no manual steps required.
- Benefit from automatic backups, one-click updates, and straightforward, transparent, and predictable pricing.
- Enjoy optimal performance and enhanced security thanks to a private, dedicated VM tailored for your applications.
Save time and streamline your workflow—it only takes 5 minutes to try Stackhero's PHP cloud hosting solution!
You will now 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
# Do not 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.