Course Code: gitlabci
Duration: 14 hours
Prerequisites:

基本使用能力 GIT

基本的程式設計技能,例如語言 PHP。

Overview:

在技術發展非常快的時代,以及越來越多的框架,高效優化開發過程變得至關重要。開發團隊應該能夠專注於編寫可靠的代碼,而與自動執行構建、測試和部署相關的其餘過程應該以最少的手動步驟來完成。

在實施持續集成/持續交付 (CI/CD) 和部署自動化 流程后,公司可以額外節省 20-30% 的開發人員時間,這些時間可用於編寫代碼,而不是與部署或測試執行相關的次要活動。

該培訓將使參與者能夠學習 CI/CD 操作的邏輯,並獲得獨立配置此類環境的能力。在培訓期間,參與者將收到一個包含配置檔和工作流程自動化示例的入門包DevOps。

我們邀請主要編寫 Web 應用程式的人員參加培訓 - 因為這裡最重要的是優化流程。

該培訓基於軟體GitLab,該軟體在波蘭和全球公司中越來越受歡迎。

Course Outline:

第1天

介紹

  • DevOps - 新語還是在 IT 專案中扮演關鍵角色?
  • 為什麼選擇 GitLab CI/CD?
  • GitLab 與其他 CI/CD 系統(CircleCI、Travis、TeamCity)相比

調試前的準備工作

  • 解決方案的架構和邏輯,包括:GitLab / GitLab Runner
  • 系統和硬體要求
  • 安裝 GitLab 和 GitLab CI
  • 初始配置 GitLab:設計、使用者、集成、準備啟動第一個持續集成

調優和 API 準備

  • 優化設置 GitLab / GitLab CI:技巧與竅門
  • 準備用於觸發機制的 API

第一個 CI/CD 流程

  • CI Runner 安裝 GitLab,系統和硬體要求
  • 配置專案以連接到 GitLab CI
  • 運行典型流程:build -> test -> deploy

第2天

配置檔構建.gitlab-ci.yml

  • 概念的實際範例:
    • 環境和部署
    • 受保護的環境
    • 作業專案
    • 通過 Docker 部署
  • 可在 YML 設定檔中使用的變數
  • 布爾結構:only、except、when、alllow_failure、dependencies、retry

觸發流水線:如何通過API觸發任務?

GitLab CI 如何讓開發人員的生活更輕鬆

  • 測試覆蓋率百分比的計算
  • MarkDown 文件中的構建狀態
  • 在信使中傳送建構狀態(以 Mattermost 為例)

高級功能 GitLab CI

  • 自動DevOps
  • 集群 Kubernetes
  • 部署開發板
  • ChatOps的
  • Web終端

現場案例研究

  • 為基於 PHP/Magento 運行的專案構建、測試和部署,在多伺服器環境中運行,假設在部署期間停機時間為零。
Sites Published:

Polska - Wdrożenie procesu Continuous Integration / Continuous Delivery (CI/CD) z użyciem GitLab CI