PHP: Configure the GitHub Actions workflow
This documentation is part of the Deploy with GitHub Actions guide. View the full guide here: How to deploy your PHP code using GitHub Actions.
👋 Welcome to the Stackhero documentation!
Stackhero provides a PHP cloud platform 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. There are no manual steps needed.
- Rely on automatic backups, one-click updates, and clear, predictable pricing. Stackhero handles these details, so you can focus on your code.
- Benefit from strong performance and security on a private, dedicated infrastructure built specifically for your applications.
Make your workflow smoother and save time. Getting started with Stackhero's PHP cloud hosting takes just a few minutes.
Now you will set up a GitHub Actions workflow file to automate your deployments. Inside your Git repository, create a directory 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 by running these commands in your terminal:
git add -A .
git commit -m "Add GitHub Actions to deploy to Stackhero"
To create the production branch, you might 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, you can visit 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.