steps: # 1. Build & Push Image build-and-push: image: plugins/docker settings: registry: git.exavolt.web.id repo: git.exavolt.web.id/fikri/portfolio-app dockerfile: Dockerfile use_cache: true # Gunakan environment otomatis untuk plugin docker 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 key: from_secret: ssh_key port: 22 # Kita kirim variabel gitea ke dalam script SSH envs: [GITEA_USER, 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 environment: # Mendefinisikan variabel agar bisa dibaca oleh 'envs' di atas GITEA_USER: from_secret: gitea_user GITEA_TOKEN: from_secret: gitea_token when: branch: main event: push