Skip to content

some exp added

some exp added #50

Workflow file for this run

name: CI/CD Pipeline
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
build-and-push-to-registry:
runs-on: ubuntu-latest
services: # use docker services for building and pushing compose file inside the repo
docker:
image: docker:latest
options: --privileged
steps:
- uses: actions/checkout@v4 # use this is an action to check the repo codes
- name: Login to DockerHub
run: echo "${{ secrets.DOCKER_PASSWORD }}" | docker login -u "${{ secrets.DOCKER_USERNAME }}" --password-stdin docker.hoopoe.app
- name: Build and Push
run: | # 1 - build services | 2 - push services to the custom registry hosted on docker.hoopoe.app
sudo docker compose -f "docker-compose.yml" build
sudo docker compose -f "docker-compose.yml" push
pull-from-registry-on-server:
runs-on: ubuntu-latest
needs: build-and-push-to-registry
steps:
- name: Deploy to server
uses: appleboy/ssh-action@master # use this is an action to login into the ssh
with:
host: ${{ secrets.SERVER_HOST }}
username: ${{ secrets.SERVER_USER }}
password: ${{ secrets.SERVER_PASSWORD }}
port: 22
script: | # 1 - pull services from the custom registry (each image in dockercompose file prefixed with registry name) | 2 - up all the services
cd /root/hoopoe
sudo docker compose -f "docker-compose.yml" pull
sudo docker compose -f "docker-compose.yml" up -d