天天看點

OpenShift 4 - DevSecOps Workshop (5) - 為Pipeline增加測試Task向Pipeline增加測試Task

《OpenShift 4.x HOL教程彙總》

說明:本文已經在OpenShift 4.8環境中驗證

文章目錄

  • 向Pipeline增加測試Task
    • 使用控制台
    • 使用指令

本節我們将分别介紹如何通過控制台和指令實作在Pipeline中增加一個測試任務。

OpenShift 4 - DevSecOps Workshop (5) - 為Pipeline增加測試Task向Pipeline增加測試Task

向Pipeline增加測試Task

使用控制台

  1. 在OpenShift控制台中進入“user1-cicd”項目的“管道”菜單,然後進入“tasks-dev-pipeline”的“管道詳情”頁面。點選“操作”下拉框的“編輯管道”選項。
    OpenShift 4 - DevSecOps Workshop (5) - 為Pipeline增加測試Task向Pipeline增加測試Task
  2. 在“管道建構器”頁面中的“任務”區選中“build-app”任務,然後根據提示點選右側藍色“+”增加一個新的任務。
    OpenShift 4 - DevSecOps Workshop (5) - 為Pipeline增加測試Task向Pipeline增加測試Task
  3. 為新任務選擇“simple-maven”任務類型。
    OpenShift 4 - DevSecOps Workshop (5) - 為Pipeline增加測試Task向Pipeline增加測試Task
  4. 選中建立的任務,在頁面右側區域按照以下設定任務屬性。最後點選“儲存”按鈕。

    Display name: test-app

    GOALS: test

    SETTINGS_PATH:configuration/cicd-settings-nexus3.xml

    maven-repo: local-maven-repo

    source: pipeline-source

    OpenShift 4 - DevSecOps Workshop (5) - 為Pipeline增加測試Task向Pipeline增加測試Task
  5. 在“tasks-dev-pipeline”的“管道詳情”頁面中的“操作”下拉框中選擇“開始”運作管道。
    OpenShift 4 - DevSecOps Workshop (5) - 為Pipeline增加測試Task向Pipeline增加測試Task
  6. 在“啟動管道”中按照下圖提供運作參數。
    OpenShift 4 - DevSecOps Workshop (5) - 為Pipeline增加測試Task向Pipeline增加測試Task
  7. 檢視“管道運作”的日志,确認運作成功。
    OpenShift 4 - DevSecOps Workshop (5) - 為Pipeline增加測試Task向Pipeline增加測試Task

使用指令

  1. 安裝3.x版的yq工具。
$ wget https://github.com/mikefarah/yq/releases/download/3.4.1/yq_linux_386
$ sudo mv yq_linux_386 /usr/bin/yq
$ sudo chmod +x /usr/bin/yq
           
  1. 通過指令增加“test-app”任務,該任務使用“configuration/cicd-settings-nexus3.xml”進行測試。
$ TASKS="$(oc get pipelines tasks-dev-pipeline -n ${CICD} -o yaml | yq r - 'spec.tasks' | yq p - 'spec.tasks')"
$ oc patch pipelines tasks-dev-pipeline -n ${CICD} --type=merge -p "$(cat << EOF
$TASKS
    - name: test-app
      taskRef:
        kind: Task
        name: simple-maven
      params:
          - name: GOALS
            value: test 
          - name: SETTINGS_PATH
            value: configuration/cicd-settings-nexus3.xml
      resources:
        inputs:
          - name: source
            resource: pipeline-source
      workspaces:
        - name: maven-repo
          workspace: local-maven-repo
      runAfter:
          - build-app
EOF
)"
           
  1. 通過指令運作“tasks-dev-pipeline”管道,确認新添加的test-app任務可成功運作。
$ tkn pipeline start tasks-dev-pipeline -n ${CICD} --showlog \
	--resource pipeline-source=tasks-source-code \
	--workspace name=local-maven-repo,claimName=maven-repo-pvc
。。。
[test-app : mvn-goals] -------------------------------------------------------
[test-app : mvn-goals]  T E S T S
[test-app : mvn-goals] -------------------------------------------------------
[test-app : mvn-goals] Running org.jboss.as.quickstarts.tasksrs.service.TaskResourceTest
[test-app : mvn-goals] Tests run: 3, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 0.303 sec - in org.jboss.as.quickstarts.tasksrs.service.TaskResourceTest
[test-app : mvn-goals] Running org.jboss.as.quickstarts.tasksrs.service.UserResourceTest
[test-app : mvn-goals] Tests run: 1, Failures: 0, Errors: 0, Skipped: 1, Time elapsed: 0.001 sec - in org.jboss.as.quickstarts.tasksrs.service.UserResourceTest
[test-app : mvn-goals]
[test-app : mvn-goals] Results :
[test-app : mvn-goals]
[test-app : mvn-goals] Tests run: 4, Failures: 0, Errors: 0, Skipped: 1
[test-app : mvn-goals]
[test-app : mvn-goals] [INFO] ------------------------------------------------------------------------
[test-app : mvn-goals] [INFO] BUILD SUCCESS
[test-app : mvn-goals] [INFO] ------------------------------------------------------------------------
[test-app : mvn-goals] [INFO] Total time: 6.053 s
[test-app : mvn-goals] [INFO] Finished at: 2021-08-21T09:06:56Z
[test-app : mvn-goals] [INFO] Final Memory: 23M/666M
[test-app : mvn-goals] [INFO] ------------------------------------------------------------------------
           

繼續閱讀