drone/.drone.yml
liupeng fde4c5e69e
All checks were successful
continuous-integration/drone/push Build is passing
fix
2024-03-01 16:11:58 +08:00

188 lines
4.1 KiB
YAML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

kind: pipeline
name: default
#设置挂载
volumes:
#Go编译缓存
- name: pkgdeps
host:
path: /mnt/drone/cache/go
#Docker环境
- name: dockersock
host:
path: /var/run/docker.sock
#Docker配置
- name: docker-daemon
host:
path: /etc/docker/daemon.conf
clone:
disable: false # 启用代码拉取
steps:
#设置缓存
# - name: load cache
# image: drillster/drone-volume-cache
# privileged: true
# network_mode: host
# # 将宿主机的 docker和配置挂载到运行的 docker 容器中,那么在容器中运行 docker 命令时等同于在宿主机中运行该docker 命令
# volumes:
# - name: docker_sock
# path: /var/run/docker.sock
# - name: images
# path: /images
# - name: docker-daemon
# path: /etc/docker/daemon.conf
#构建镜像
- name: build
image: golang:latest
pull: if-not-exists
volumes:
- name: pkgdeps
path: /go/pkg
environment:
GOPROXY: "https://goproxy.cn,direct" # 懂的都懂
commands:
- CGO_ENABLED=0 go build -o adapt -ldflags="-w -s"
when:
branch:
- master
- dev
event:
- push
#推送镜像至镜像仓库
# - name: publish
# image: plugins/docker
# pull: if-not-exists
# volumes:
# - name: docker
# path: /var/run/docker.sock
# - name: pkgdeps
# path: /cache
# # mirrors: #镜像仓库加速地址,不需要加速,可以直接删除
# # from_secret: registry_mirrors
# settings:
# purge: false
# registry: git.daymele.com
# repo: git.daymele.com/liupeng/drone
# tags:
# - latest
# username: liupeng
# password: #镜像仓库密码
# from_secret: DOCKER_PASSWORD
#部署镜像服务
# - name: ssh commands
# image: appleboy/drone-ssh
# pull: if-not-exists
# settings:
# host: dev.daymele.com
# port: 22
# username:
# from_secret: liup
# key:
# from_secret: HOST_KEY
# script:
# - cd /home/dockerConfig/project/go-gin
# - docker-compose pull && docker-compose up --force-recreate -d
# - docker rmi $(docker images | grep go-fblsj/person-api | grep none | awk '{print $3}')
# 开发版
- name: docker-${DRONE_BRANCH}
image: plugins/docker
settings:
username: liupeng
password:
from_secret: DOCKER_PASSWORD
registry: git.daymele.com
repo: git.daymele.com/liupeng/drone
insecure: true
debug: true
dockerfile: Dockerfile
tags:
- latest
when:
branch:
- master
- dev
event:
- push
# 稳定版
# - name: docker-release
# image: plugins/docker
# settings:
# username: liupeng
# password:
# from_secret: DOCKER_PASSWORD
# registry: git.daymele.com
# repo: git.daymele.com/liupeng/drone
# insecure: true
# dockerfile: Dockerfile
# tags:
# - ${DRONE_TAG}
# - latest
# when:
# event:
# - tag
- name: deploy-${DRONE_BRANCH}
image: appleboy/drone-ssh
settings:
host:
- dev.daymele.com
username: liup
# password:
# from_secret: HOST_PASSWORD
key:
from_secret: HOST_KEY
port: 22
command_timeout: 2m
script:
- echo "deploy docker ssh!"
- name=drone-test
- image=git.daymele.com/liupeng/drone:latest
- echo ${DRONE_BRANCH}
- docker pull $image
- docker rm -f drone-test || true
- docker image prune -f
- docker run --name=$name -d -p 8001:9000 -v /etc/conf:/conf $image
when:
branch:
- master
- dev
event:
- push
# - name: deploy-release
# image: appleboy/drone-ssh
# settings:
# host:
# - pub.daymele.com
# username: liup
# # password:
# # from_secret: HOST_PASSWORD
# key:
# from_secret: HOST_KEY
# port: 22
# command_timeout: 2m
# script:
# - echo "deploy podman ssh!"
# - name=drone-release
# - image=git.daymele.com/liupeng/drone:latest
# - podman pull $image
# - podman rm -f drone-release || true
# - podman image prune -f
# - podman run --name=$name -d -p 8002:9000 -v /etc/conf:/conf $image
# when:
# event:
# - tag