1. clone

这个是内置的,实际上就行进行代码clone的

参考配置,同时我们可以使用自定义的插件

clone:
+ git:
+ image: plugins/git pipeline:
build:
image: golang
commands:
- go build
- go test
2. workspace
字面意思是工作空间,drone 的pipeline 过程中是共享的

参考配置 ,实际上就是指定我们项目代码的位置,以及目录结构

+workspace:
+ base: /go
+ path: src/github.com/octocat/hello-world pipeline:
build:
image: golang:latest
commands:
- go get
- go test
3. pipelins
构建的任务

参考配置

pipeline:
backend:
image: golang
commands:
- go build
- go test
frontend:
image: node
commands:
- npm install
- npm run test
- npm run build
4. webhook
实际上就是我们的项目构建出发的条件

实际的一些条件参考
http://docs.drone.io/pipeline-conditions/
5. service 
我们项目运行依赖的一些服务(redis, 数据库 。。。)

参考配置, 访问方式类似docker-compose 

pipeline:
build:
image: golang
commands:
- go build
- go test services:
database:
image: mysql cache:
image: redis
6. plugins
实际上drone 的每个任务都是使用容器插件构建的

参考

pipeline:
build:
image: golang
commands:
- go build
- go test publish:
image: plugins/docker
repo: foo/bar
tags: latest notify:
image: plugins/slack
channel: dev
7. promoting(提升,实际上就是开发中环境的转变)
参考

pipeline:
build:
image: golang
commands:
- go build
- go test publish:
image: plugins/docker
registry: registry.heroku.com
repo: registry.heroku.com/my-staging-app/web
when:
+ event: deployment
+ environment: staging publish_to_prod:
image: plugins/docker
registry: registry.heroku.com
repo: registry.heroku.com/my-production-app/web
when:
+ event: deployment
+ environment: production
8. Matrix Builds
实际上就是我们的一些构建环境参数 比如 golang 的不同运行时环境

参考配置

pipeline:
build:
image: golang:${GO_VERSION}
commands:
- go get
- go build
- go test services:
database:
image: ${DATABASE} matrix:
GO_VERSION:
- 1.4
- 1.3
DATABASE:
- mysql:5.5
- mysql:6.5
- mariadb:10.1
9. 参考资料
http://docs.drone.io/hooks/
http://docs.drone.io/workspace/
http://docs.drone.io/cloning/
http://docs.drone.io/pipelines/
http://docs.drone.io/services/
http://docs.drone.io/using-plugins/
http://docs.drone.io/promoting-builds/
http://docs.drone.io/matrix-builds/
 
 
 
 

drone 学习一 几个核心组件的更多相关文章

  1. 【Cloud Foundry】Could Foundry学习(二)——核心组件分析

    在阅读的过程中有不论什么问题,欢迎一起交流 邮箱:1494713801@qq.com    QQ:1494713801 Cloud Foundry核心组件架构图例如以下: 主要组件:     Clou ...

  2. drone 学习六 发布部署&&集成私有容器仓库&&构建代码s3 保存

    备注:      需要进行drone 以及gitlab 环境的配置,可以参考相关资料   1. 参考项目 https://github.com/rongfengliang/drone-appdemo ...

  3. drone 学习三 条件步骤

    1. 基本格式 pipeline: slack: image: plugins/slack channel: dev + when: + branch: master 2. 几种条件类型 a. bra ...

  4. drone 学习二 pipeline 说明

    1. 基本语法 pipeline: backend: image: golang commands: - go build - go test frontend: image: node comman ...

  5. drone 学习四 几个有用的命令

    1. 安装cli 工具 linux curl -L https://github.com/drone/drone-cli/releases/download/v0.8.5/drone_linux_am ...

  6. drone 学习五 集成gitlab 配置以及简单测试

    备注: 使用docker-compose  进行安装 同时集成gitlab,预备环境 docker  docker-compose  gitlab 1. docker-compose version: ...

  7. Spring学习10-SpringMVC原理及核心组件1

    一.SpringMVC原理     请求到来时,第一个接受这个请求的前端控制器叫DispatcherServlet(这个需要在web.xml中配置), 后端控制器叫Controller.负责处理请求U ...

  8. Kubernetes 学习(九)Kubernetes 源码阅读之正式篇------核心组件之 Scheduler

    0. 前言 继续上一篇博客阅读 Kubernetes 源码,参照<k8s 源码阅读>首先学习 Kubernetes 的一些核心组件,首先是 kube-scheduler 本文严重参考原文: ...

  9. .NET Core on K8S学习实践系列文章索引(Draft版)

    一.关于这个系列 自从去年(2018年)底离开工作了3年的M公司加入X公司之后,开始了ASP.NET Core的实践,包括微服务架构与容器化等等.我们的实践是渐进的,当我们的微服务数量到了一定值时,发 ...

随机推荐

  1. C++ 知识点积累---待整理

  2. 委托---.net4.0提供两个比较重要的委托

    public delegate void Action<[in T1][,in T2][,in T3]......>([T1 t1][,T2 t2][,T3 t3]...) public ...

  3. numpy.random之常用函数

    在实际开发中,我们经常会使用随机函数,比如交叉验证,构造测试数据等.下面,是我常用的几个生成随机样本的函数: 1,rand(n1,n2,…,nn) 每一维度都是[0.0,1.0)半闭半开区间上的随机分 ...

  4. day31 堡垒机尾声 + Python与金融量化分析(一)

    堡垒机尾声: 代码案例:https://github.com/liyongsan/git_class/tree/master/day31 课堂笔记:file send: 1.选择本地文件 2.远程路径 ...

  5. 基本http服务性能测试(Python vs Golang)

    最近学习Golang,总想体验下并发到底有多叼,必我大 python强势多少. 学习了官方教程的http 服务,用性能测试工具wrk测试了下,发现结果很令人惊讶- wrk可以参考我的博客,有基本用法说 ...

  6. 缓存LruCache简单创建和使用

    LruCache一般使用: /** * 总容量为当前进程的1/8,单位:KB * sizeOf():计算缓存对象的大小,单位要一致 * entryRemoved():移除旧缓存时调用 */ int m ...

  7. vue 错误记录

    1.错误信息: You may use special comments to disable some warnings.Use // eslint-disable-next-line to ign ...

  8. OC-NSString

    ========================== 面向对象编程进阶和字符串 ========================== Δ一.类的设计模式—单例 [单例]程序允许过程中,有且仅有一块内存 ...

  9. LINUX系统下APACHE中的CGI应用

    该实验环境是在APACHE的配置内容的基础上实现的! 1.安装软件: yum install  php  -y      ##安装完成后,可以在/etc/httpd/conf.d/目录下查看,有php ...

  10. I2S音频总线学习(二)I2S总线协议

    http://blog.csdn.net/ce123_zhouwei/article/details/6919954