44 lines
1.2 KiB
YAML
44 lines
1.2 KiB
YAML
steps:
|
|
# 1. Build & Push Image
|
|
build-and-push:
|
|
image: plugins/docker
|
|
settings:
|
|
registry: git.exavolt.web.id
|
|
repo: git.exavolt.web.id/fikri/fullstack-portfolio
|
|
dockerfile: Dockerfile
|
|
use_cache: true
|
|
username:
|
|
from_secret: gitea_user
|
|
password:
|
|
from_secret: gitea_token
|
|
when:
|
|
branch: main
|
|
event: push
|
|
|
|
# 2. Deploy via SSH
|
|
deploy:
|
|
image: appleboy/drone-ssh
|
|
settings:
|
|
host: 103.197.190.44
|
|
username: root
|
|
port: 22
|
|
key:
|
|
from_secret: ssh_key
|
|
# Langsung masukkan secret ke dalam settings yang didukung plugin drone-ssh
|
|
envs:
|
|
- GITEA_USER
|
|
- GITEA_TOKEN
|
|
# Definisikan isi envs tersebut di sini (cara ini didukung plugin)
|
|
gitea_user:
|
|
from_secret: gitea_user
|
|
gitea_token:
|
|
from_secret: gitea_token
|
|
script:
|
|
- cd ~/projects/fikri-fullstack-portfolio
|
|
- echo $GITEA_TOKEN | docker login git.exavolt.web.id -u $GITEA_USER --password-stdin
|
|
- docker compose pull
|
|
- docker compose up -d --remove-orphans
|
|
- docker image prune -f
|
|
when:
|
|
branch: main
|
|
event: push |