PHP deployment to SSH server using Github action and bash script
In this tutorial we would lean how to deploy our PHP code to a remote server using github action .
ssh into remote server by
for Windows users use Power shell, while Mac users use Terminal.
yyyy : username
xxxx.xxxx.xxxx : Remote IP address
-p :Reference to a port
ZZZZ: port number
In the root directory on your linux server create a bash file and write into by using
touch phpdeploy.sh && vi phpdeploy.sh
To start typing on the vi editor type press the "a" key and input the following
echo "Deploying changes..." cd /var/www/html DIR="ECOMM" if [ -d "$DIR" ]; then cd DIR echo "Pull update " git pull fi else echo "Clone repo" git clone https://username:[email protected]/username/projectname.git fi
To exit insert mode on vi editor press escape key followed by shift column and type wq(save and quite).
This is our final step, this involves creating our .github/main.yaml file in the root of our project.
name:project name on: push: branches: main jobs: build-and-deploy: name: Build and deploy next site runs-on: ubuntu-latest steps: - name: copy file via ssh key uses: appleboy/scp-action@master env: HOST: XXXXXXX PORT: XXXXX USERNAME: XXXXX PASSWORD: XXXXXX command_timeout: 100m script: sh phpdeploy.sh
For every time your code is merger to "main" branch the yaml file above would execute.Thanks for reading.