kind: pipeline type: kubernetes name: deploy-backend steps: # BUILD & PUSH para Harbor - name: build-and-push-backend image: plugins/docker:latest environment: DOCKER_USERNAME: from_secret: HARBOR_USERNAME DOCKER_PASSWORD: from_secret: HARBOR_PASSWORD settings: registry: in.gohorsejobs.com repo: gohorsejobs/gohorsejobs-backend tags: - latest context: backend dockerfile: backend/Dockerfile insecure: true # Use apenas se necessário (HTTP ou certificado self-signed) insecure_skip_verify: true # Use apenas se necessário debug: true mtu: 0 # DEPLOY no K3S - name: deploy-backend image: bitnami/kubectl:latest environment: KUBERNETES_SERVER: from_secret: K3S_SERVER KUBERNETES_CA: from_secret: K3S_CA_CERT KUBERNETES_CLIENT_CERT: from_secret: K3S_CLIENT_CERT KUBERNETES_CLIENT_KEY: from_secret: K3S_CLIENT_KEY commands: - mkdir -p ~/.kube - | cat < ~/.kube/config apiVersion: v1 kind: Config clusters: - name: k3s cluster: server: ${KUBERNETES_SERVER} certificate-authority-data: ${KUBERNETES_CA} users: - name: drone user: client-certificate-data: ${KUBERNETES_CLIENT_CERT} client-key-data: ${KUBERNETES_CLIENT_KEY} contexts: - name: drone-context context: cluster: k3s user: drone namespace: gohorsejobs current-context: drone-context EOF - echo "Deploying backend..." - kubectl apply -f k8s/backend-deployment.yaml - kubectl apply -f k8s/backend-service.yaml