在 Jenkins 2 使用有 Submodule 的 Git Repository

前幾天文章 Git 專案引用其他 Repository 的作法(Git Submodule) 介紹了如何使用 Git Submodule 的功能來拆解專案的相依性,讓 repository 可以引用其他外部 repository 檔案或是 source code,已經滿足了一般開發的基本需求,但身為精益求精的工程師,CI - Continuous integration 的整合也是不可或缺的一環,就來看看 Jenkins 2 遇上使用 submodule 專案時該如何設定

安裝 Git plugin

  • 安裝 Git Plugin Git Plugin
  • 這個套件是使用 Git 的基礎,下面範例會使用這個套件 demo

建立新的 job

  1. Jenkins 首頁 –> New Item

    1newitem

  2. Enter an item name –> Freestyle project

    2entername

設定 Source Code Management

  1. 使用 Git

  2. 填入 Repository URL

  3. 選擇適合的 Credentials

    • 如果選錯 Credentials,會出現錯誤訊息

      3CREDERROR

      4credpass

    • 可以透過 ADD –> Jenkins 新增 Credentials

      5addcred

  4. 增加 Additional Behaviours –> Advanced sub-modules behaviours

    6addbehaviours

  5. 填入 submodule repository url

    Use credentials from default remote of parent repository

    7moduleurl

  6. 設定是否使用相同的 credential

    視情況勾選 Use credentials from default remote of parent repository

    8samecred

編譯結果

確認有執行 git submodule initgit submodule update,詳細請看 Git 專案引用其他 Repository 的作法(Git Submodule)

9result

參考資訊

  1. Git 專案引用其他 Repository 的作法(Git Submodule)