Docker 技术鼻祖系列
原文链接:https://muzim.cn/post/BVx30SK1M/
前言
本文会详细介绍如何编写一个 Drone 的 pipeline 文件。
pipeline 的意思就是流水线,持续集成其实就是一个流水线工作,指定一系列的动作,然后让程序按顺序和条件去执行。所以写好一个 pipeline 就很重要。本文会介绍比较常用的 pipeline 流水线模式。
1. Drone 的 Pipeline 语法
Drone 的 pipeline 语法和 k8s 非常的相似,也是 yaml 文件。这里贴上 nodejs 的构建示例来作为展示 (附带注释讲解):
#分隔符
---
#定义类型
kind: pipeline
#定义pipeline名字
name: default
#定义步骤,固定语法
steps:
#定义步骤的名字
- name: restore-cache
#定义该步骤用到的镜像
image: drillster/drone-volume-cache
#挂载缓存
volumes:
#挂载的名字
- name: cache
#挂载路径
path: /cache
#该步骤的设置(就是容器的环境变量)
settings:
restore: true
mount:
- ./node_modules
#定义下一个步骤
- name: build
#所用到的镜像
image: node:8.15
#镜像运行时候的命令(就是docker里面的command)
commands:
- yarn config set registry https:
- yarn install
- yarn run build
#缓存相关的
- name: rebuild-