GOCD 基础概念

核心

CI(Continuous Integration)持续集成,CD(Continuous Delivery)持续交付

基础概念

  • Task

    • 基本上为一个命令,如执行一个ls系统命令,ant构建命令
  • Job

    • 由多个Task组合而成,Task命令的执行是相互独立的,即修改的环境变量不会影响到其他命令,但文件系统的修改会对其他Job可见;
    • Task会按照配置顺序依次执行,但如果一个Task失败,后续task将会取消执行;
    • Job的成功与否取决于所有Task是否全部执行成功;
  • Stage

    • 由多个Job组合而成;
    • Job会并行执行
    • 成功与否由全部Task是否成功决定;
  • Pipeline

    • 由多个Stage组合而成;
    • 执行方式为依次执行,其中一个Stage执行失败,将不会执行后续Stage;
  • Material(资源)

    1. 使用Git,Svn;GoCD会轮训检测资源变更,以触发Pipline;
    2. 可以使用版本库(git,svn),其他Pipline的Stage;
  • Fan-out and fan-in(扇出和扇入)

    1. Fan-out 表示一个Stage的结束可以触发多个Pipeline的Stage开始
    2. Fan-in 表示一个Pipeline的开始可以等待多个Stage完成后才被触发
  • Value Stream Map (VSM)

    • 数据驱动流图,即复杂的Fan-out和Fan-in的视图;
  • Artifacts

    1. 在Job上配置,默认会有console.log生成;(所有的Job都会在agent上执行,Artifacts存在的意义就是将文件上传到server端,再供使用)
    2. 可以创建获取其他Pipline的Task;
  • Environment Variables(环境变量)

    • Within environments, within pipelines, within stages and within jobs
    • 等级依次增高,高等级的变量将覆盖低等级变量
  • Resource

    • 可以将Agent进行别名命名,以在配置Job的执行位置时使用;
    • 可以将多个Agent命为相同名称;
  • Environments
    暂时不了解其特别用途,仅仅知道其为分组使用;

你可能感兴趣的:(GOCD 基础概念)