Skip to content

Commit

Permalink
lets try
Browse files Browse the repository at this point in the history
  • Loading branch information
loftwah committed Aug 2, 2024
1 parent 92bfbac commit ccc23cd
Show file tree
Hide file tree
Showing 2 changed files with 51 additions and 5 deletions.
43 changes: 43 additions & 0 deletions .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: Deploy

on:
workflow_run:
workflows: ["CI"]
types:
- completed

jobs:
deploy:
runs-on: ubuntu-latest
if: ${{ github.event.workflow_run.conclusion == 'success' }}

steps:
- name: Checkout code
uses: actions/checkout@v4

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2

- name: Login to GitHub Container Registry
uses: docker/login-action@v2
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GH_PAT }}

- name: Build and push Docker image
run: |
echo "${{ secrets.GH_PAT }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
GITHUB_TOKEN=${{ secrets.GH_PAT }} docker buildx build --secret id=GITHUB_TOKEN -t ghcr.io/loftwah/linkarooie:latest --push .
- name: Deploy to droplet
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.DROPLET_IP }}
username: root
key: ${{ secrets.DROPLET_SSH_PRIVATE_KEY }}
script: |
echo "${{ secrets.GH_PAT }}" | docker login ghcr.io -u ${{ github.actor }} --password-stdin
docker compose -f /root/docker-compose.prod.yml --env-file /root/.env down
docker compose -f /root/docker-compose.prod.yml --env-file /root/.env pull
docker compose -f /root/docker-compose.prod.yml --env-file /root/.env up -d
13 changes: 8 additions & 5 deletions terraform/main.tf
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,12 @@ resource "digitalocean_droplet" "web" {
image = "ubuntu-22-04-x64"
ssh_keys = [var.ssh_key_id]
user_data = <<-EOF
#!/bin/bash
# Install Docker
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
EOF
#!/bin/bash
# Update package list
apt-get update
# Install Docker using get.docker.com script
curl -fsSL https://get.docker.com -o get-docker.sh
sh get-docker.sh
EOF
}

0 comments on commit ccc23cd

Please sign in to comment.