JCConf 2016 Day1 (R2)

  • Day1 R0
  • 共筆位置:JCconf 2016 Day1 R0

  • Day1 R1
  • 共筆位置:JCConf 2016 Day1 R1

  • Day1 R2
  • 共筆位置:JCConf 2016 Day1 R2

  • Day2 R0
  • 共筆位置:JCConf 2016 Day2 R0

  • Day2 R1
  • 共筆位置:JCConf 2016 Day2 R1

    [快講] Jenkins Pipeline 簡介

    https://github.com/qrtt1/JCConf2016_JenkinsPipeline

    qrtt1

    Pipeline (from Continuous Delivery)

    Jenkins Workflow Plugins

    Job <- Workflow <- Pipelines

    由多個 Pipeline 由多個 Step 組成,並且支援 Pause / Resume

    為什麼要寫 Pipeline

    可以為每個階段標出很多stage...?

    Pipeline 設計成DSL型式

    mutil-branch pipeline -> stagging uat production, 可以一次建立

    https://github.com/qrtt1/JCConf2016_JenkinsPipeline 可以下載投影片

    填git位置跟branch 就可以從SCM建立 Pipeline

    pipeline 可以用  gradle 或 maven 去建立

    pipeline 語法是 groovy 

    pipeline step 萬用解是去呼https://github.com/b96705008/hackntu_x_cathay_2017/blob/master/introduction叫 shell(Unix base) 或 cmd(WIndows base) 外部指令

    不建議自己去實作 pipeline plugin 

    node {

    }

    checkout->build->test->war

    Pipeline DSL

    建立單一 pipeplie

    或是從 SCM 的方法

    Pipeline 規劃

    Refactoring Pipeline

    Pipeline Shared Library

    Q&A

    1. Pipeline 是否可與 Gradle 使用
      1. 很新,Library 很少,只能依賴 sh 與 bat 
    2. 升級後很多功能失靈?
      1. plugin 有很多地方不太相容
      2. 1.0 + Plugin 使用最好
      3. 可以將 XML 匯出並使用版本控制,但不好用

    有什麼想討論的可以開 issue 

    [Workshop] Introduction to Scala

    https://hackpad.com/JCConf-TW-2016-Introduction-to-Scala-m0SiMTDWbi8

    Using Armeria to write your RPC

    Armeria  Open Source Library

    sample code 

    Armeria 介紹