-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy path.drone.yml
45 lines (41 loc) · 1.66 KB
/
.drone.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
kind: pipeline # 定义对象类型,还有secret和signature两种类型
type: docker # 定义流水线类型,还有kubernetes、exec、ssh等类型
name: nuxtjs-blogs-drone # 定义流水线名称
clone:
disable: false # 启用代码拉取
steps: # 定义流水线执行步骤,这些步骤将顺序执行
- name: build-project # 步骤名称
image: node:16-alpine # 使用镜像
depends_on: [clone] # 依赖的步骤,
volumes: # 挂载数据卷
- name: blogs-cache
path: /drone/src/node_modules
- name: blogs-build
path: /app/build
commands: # 执行命令
- pwd # 查看当前目录
- ls -lah
- cp -r ./ /app/build
- cd /app/build && ls -lah
- name: deploy-project
image: appleboy/drone-ssh
depends_on: [build-project]
settings:
host: 81.69.254.48 # 远程连接地址
username: root # 远程连接账号
password:
from_secret: ssh_password # 从Secret中读取SSH密码
port: 22 # 远程连接端口
command_timeout: 5m # 远程执行命令超时时间
script:
- pwd
- cd /mydata/blogs_build/nuxt/build # 进入宿主机构建目录
- chmod +x build.sh # 更改为可执行脚本
- ./build.sh # 运行脚本打包应用镜像并运行
volumes: # 声明数据卷
- name: blogs-cache # 数据卷名称
host: # Host Volume
path: /mydata/blogs_build/nuxt/cache/node_modules # 宿主机目录 绝对路径 将node_modules 缓存到宿主机
- name: blogs-build # 数据卷名称
host: # Host Volume
path: /mydata/blogs_build/nuxt/build # 宿主机目录 绝对路径 将node_modules 缓存到宿主机