oonyeje-portfolio/.drone.yml
oonyeje 42be7ec46f
Some checks failed
continuous-integration/drone/push Build is passing
Build and Push Docker Image to Gitea Registry / build-and-push (push) Failing after 4m28s
- use plain docker commands in drone.yaml file
2025-03-02 09:01:22 -05:00

145 lines
4.5 KiB
YAML
Executable File

kind: pipeline
type: docker
name: build
steps:
# - name: start-compose-container
# image: gitea.bsidesolutions.net/bside-solutions/docker-compose-v2-alpine:latest
# environment:
# REGISTRY_USER:
# from_secret: DOCKER_USERNAME
# REGISTRY_PASS:
# from_secret: DOCKER_PASSWORD
# commands:
# # - docker container stop compose-container
# - docker container prune -f
# - docker image prune -f
# - docker login gitea.bsidesolutions.net --username $REGISTRY_USER --password $REGISTRY_PASS
# - docker pull gitea.bsidesolutions.net/bside-solutions/docker-compose-v2-alpine:latest
# - docker run -v /var/run/docker.sock:/var/run/docker.sock --rm -d --name compose-container gitea.bsidesolutions.net/bside-solutions/docker-compose-v2-alpine sleep inf #start container in detached mode
# - sleep 5 # give container some time to fully start
# volumes:
# - name: docker_sock
# path: /var/run/docker.sock
- name: build
image: docker
environment:
SMTP_PROXY_EMAIL:
from_secret: SMTP_PROXY_EMAIL
SMTP_RECIPIENT_EMAIL:
from_secret: SMTP_RECIPIENT_EMAIL
SMTP_HOST:
from_secret: SMTP_HOST
SMTP_PORT:
from_secret: SMTP_PORT
SMTP_USERNAME:
from_secret: SMTP_USERNAME
SMTP_PASSWORD:
from_secret: SMTP_PASSWORD
NEXT_PUBLIC_GOOGLE_APPOINTMENTS_LINK:
from_secret: NEXT_PUBLIC_GOOGLE_APPOINTMENTS_LINK
RECAPTCHA_SECRET_KEY:
from_secret: RECAPTCHA_SECRET_KEY
NEXT_PUBLIC_RECAPTCHA_SITE_KEY:
from_secret: NEXT_PUBLIC_RECAPTCHA_SITE_KEY
volumes:
- name: docker_sock
path: /var/run/docker.sock
commands:
- export DRONE_SHA=${DRONE_COMMIT_SHA:0:7}
# - docker exec --env-file .env.drone compose-container mkdir /home/node
# - docker exec --env-file .env.drone compose-container mkdir /home/node/app
# - docker cp . compose-container:/home/node/app
# - docker exec -w /home/node/app --env-file .env.drone compose-container ls # check current directory
- docker build -t oonyeje-portfolio:${DRONE_COMMIT_SHA:0:7} .
- docker tag oonyeje-portfolio gitea.bsidesolutions.net/oonyeje/oonyeje-portfolio:${DRONE_COMMIT_SHA:0:7}
- docker tag oonyeje-portfolio gitea.bsidesolutions.net/oonyeje/oonyeje-portfolio:latest
- name: push-image
image: docker
environment:
SMTP_PROXY_EMAIL:
from_secret: SMTP_PROXY_EMAIL
SMTP_RECIPIENT_EMAIL:
from_secret: SMTP_RECIPIENT_EMAIL
SMTP_HOST:
from_secret: SMTP_HOST
SMTP_PORT:
from_secret: SMTP_PORT
SMTP_USERNAME:
from_secret: SMTP_USERNAME
SMTP_PASSWORD:
from_secret: SMTP_PASSWORD
NEXT_PUBLIC_GOOGLE_APPOINTMENTS_LINK:
from_secret: NEXT_PUBLIC_GOOGLE_APPOINTMENTS_LINK
RECAPTCHA_SECRET_KEY:
from_secret: RECAPTCHA_SECRET_KEY
NEXT_PUBLIC_RECAPTCHA_SITE_KEY:
from_secret: NEXT_PUBLIC_RECAPTCHA_SITE_KEY
REGISTRY_USER:
from_secret: DOCKER_USERNAME
REGISTRY_PASS:
from_secret: DOCKER_PASSWORD
volumes:
- name: docker_sock
path: /var/run/docker.sock
commands:
- export DRONE_SHA=${DRONE_COMMIT_SHA:0:7}
- docker login gitea.bsidesolutions.net --username $REGISTRY_USER --password $REGISTRY_PASS
- docker push gitea.bsidesolutions.net/oonyeje/oonyeje-portfolio:${DRONE_COMMIT_SHA:0:7}
- docker push gitea.bsidesolutions.net/oonyeje/oonyeje-portfolio:latest
# - docker container stop compose-container
# - name: deploy-staging
# image: plugins/ansible:latest
# settings:
# playbook: ansible/playbook.staging.yml
# galaxy: ansible/requirements.yml
# inventory: ansible/inventory.yml
# become_user: bside
# user: bside
# verbose: 4
# become: true
# list_tasks: true
# list_hosts: true
# private_key:
# from_secret: STAGING_SERVER_PRIVATE_KEY
# trigger:
# branch:
# - master
# - prod
# - qa
# - feature/*
# event:
# - push
# - pull_request
# ---
# kind: pipeline
# type: exec
# name: staging-deploy
# platform:
# os: linux
# arch: amd64
# steps:
# - name: ansible-deploy
# commands:
# - ansible --version
# - ansible-galaxy install --force --role-file ansible/requirements.yml -vvvv
# - ansible-playbook --inventory ansible/inventory.yml --list-hosts ansible/playbook.staging.yml
# trigger:
# branch:
# - master
# - prod
# - qa
# - feature/*
# event:
# - push
# - pull_request
volumes:
- name: docker_sock
host:
path: /var/run/docker.sock