DevOps的概念其實很早之前就被提出來,但是當時市場上並未有相關配套產品或解決方案,加上企業大多紮根於傳統開發的團隊,貿然導入DevOps對於企業是很大的的衝擊,所以企業一直採取觀望的態度。到了近幾年,DevOps的概念越趨成熟,不僅討論的聲浪持續地發燒,隨之而來的支援技術也陸續成熟,使得DevOps的施行更加容易,也讓企業看到DevOps導入的價值。

導入DevOps不只是為了降低成本,而是為了因應市場需求的急速變化做出快速的反應,然而DevOps最終的目標並非只有速度,如果只看速度而不考慮品質,將有問題的軟體交付出去,這是本末倒置的做法。所以DevOps包含著開發、測試、維運三個部分,每個團隊間的資訊越透明,整合度越高。換句話說,要能夠成功引入DevOps,其中一個關鍵因素是企業的協同文化,打通交付軟體的供應鏈,使各個團隊都能夠減少作業程序跟時間,更加有效率的協同工作。

GSSDLC 自動化持續整合及部署平台

GSSDLC透過開源平台Jenkins實踐版控管理、原始碼檢核、程式建構、程式部署的最佳自動化平台,提供Web-base的服務架構,以統一管理介面整合多種DevOps工具,制定完整且具有彈性之自動化作業程序,加速軟體交付速度,減少人工作業導致的錯誤。

特色一 可結合企業版控系統

支援多種原始碼版控軟體,例如:Git、Subversion、TFS、CVS等,可直接與GSSDLC結合取出原始碼。

特色二 整合原始碼檢測工具

透過CLI(Command-line Interface)與原始碼檢查或測試工具整合,執行遠端呼叫啟動檢測程序。

特色三 輕鬆執行原始碼部署

原始碼經過取出、檢測、建構後,GSSDLC可依據部署腳本(Script)將目的碼正確部署至指定路徑。

特色四 自動退版機制

當自動化部署作業失敗時,可以透過預先設定的判斷機制,進行自動化退版,維持系統正常運作。

特色五 落實分權管理

導入分權機制,以人員角色及職能為基礎,不同的角色擁有不同的操作權限。

特色六 首創結合Mobile APP

可支援IPA、APK原始檔導入GSSDLC自動化作業程序,包含原始碼建構、測試、簽章、上架至APP商店。

DevOps活動打破了開發及維運團隊之間的隔閡,促進企業內團隊的協同合作效率,從中幫助企業達到更好更有效率的指標。GSSDLC平台涵蓋軟體交付的速度、安全、品質三面向,以確保企業能夠提供更好服務。

 

平台簡介

面對快速變動的系統開發需求,想要維持軟體的高品質要求,持續整合是重要的關鍵。  持續整合工具的應用及版本控管工具的結合,是幫助企業實現持續整核流程最佳的利器,得以便於進行自動化軟體建置及測試,以及快速驗證軟體版本演進的需求,縮短軟體開發生命週期,讓系統的服務更快、更好、更穩定。

然而,如果所有的程式的潛在問題及安全性隱憂,都要透過人工的方式一個一個地檢查出來,需要浪費大量的人力與時間,所以透過持續整合工具,將源碼掃描工具整合進來,協助將程式碼的安全性做更完整的檢查,甚至提出一些可能的安全性隱憂。 讓使用者能夠將程式碼中潛在的問題一目了然,並提供改善建議,對於團隊開發來說相當實用!

GSSDLC 持續整合平台服務提供了持續整合工具, 版本控管工具導入,透過視覺化介面,輕鬆管理軟體開發自動化建置流程及軟體開發之品質,大幅減短開發人員品質管理及功能測試的時間,縮短了整個開發的時程,加速系統上線的品質與效率。

產品特色

持續整合(CI)和持續交付(CD)是最基本以及最佳的現代軟體開發的實行平台。GSSDLC使用了適用於全球的DevOps團隊的CI和CD第一開源平台Jenkins,提供web-base的服務架構,從軟體開發、版控管理、原始碼檢核、建置到最後部署工作,制定完整之自動化作業流程,加速軟體交付以及消除人為導致的延遲。

通常在軟體專案過程中,系統整合與測試都是留在後半段,萬一到了這個階段才發現規格不符,修改成本必然十分驚人。持續整合試圖解決這類問題,在專案初期,就開始進行介面整合與相關測試,並且持續進行。這種重覆不斷的程序,很明顯地需要搭配適當的工具,才能落實。因此GSSDLC具備下列六大特色:

特色一  與版本控軟體整合,自動取出原始碼

無論是廠商或是企業IT,只要有軟體原始碼管理需求,多半都已導入版本控管(Revision Control) 軟體, 像是Git、Subversion 、TFS、CVS 等等。CI Server 最基本的功能,便是由這些版本控管軟體取回原始碼,存放至CI Server 預設的工作區域(Workspaces),如此才能順利進行後續步驟。通常CI Server 預設取回最新版本的原始碼,當然也可以依據版本號碼或是標籤(Tag),指定取回特定版本。

特色二  整合建置工具,自動建置執行碼

當CI Server 簽出原始碼後,最基本的檢測就是對程式碼進行編譯,來檢查每一支程式的結構及語法使用;或是進行所有程式的建置(Build),來檢查整個專案的完整性。CI Server 並不懂得如何編譯C# 或是Java 程式,而是具備與程式語言開發工具整合的能力, 能夠在簽出原始碼後, 呼叫正確的建置工具(Build Tool), 例如Ant、Maven 、MSBuild, 並且給予適當的參數值,例如原始碼存放路徑。 每日建置(Daily Build) 也是軟體開發最佳實務之一。對於軟體開發團隊而言,每天下班後, 將當天工作成果集中起來,然後進行自動建置,不僅能夠及早發現問題。

特色三  整合檢測工具,自動檢測原始碼或執行碼

GSSDLC 平台提供簡單但功能強大的整合能力:只要具備CLI(command-line Interface; 命令列控制介面) 的軟體,GSSDLC大概都能與其進行整合。以Jmeter為例,便提供了CLI,使用者可以在系統命令列執行程式,來執行壓力測試。當然Jemter測試工具,通常不會與GSSDLC 平台安裝在同一台伺服主機,因此必須配合遠程呼叫來啟動檢測。

特色四   整合系統工具,進行自動部署(上版)

GSSDLC平台在進行自動化部屬之前,會針對部署任務的內容及完整性檢查、確認使用合適的帳號、停止執行中的服務、將佈署內容移至正確的位置、重啟服務等。這些動作可以透過系統命令完成,亦可進一步透過撰寫部署腳本(script),將這些動作串連起來。

當GSSDLC平台完成自動建置後,其工作區會同時存在原始碼和目的碼(執行碼),只要經過適當的安排,GSSDLC平台可以輕易備妥佈署內容,接著呼叫佈署腳本,執行佈署動作,並且支援備份機制,提供建構腳本、部署腳本及任務相關環境參數設定。

特色五  風險管理,還原/退版機制

一個可信賴的自動化應用系統上線部署作業程序中,除了免除人力的排程執行之外,異常處理的退版機制,也是很重要的一環。當自動化應用系統部署失敗時,能透過預先設定好的邏輯判斷機制,進行自動化遠端退版,維持系統正常運作,待開發人員修復程式後,再重新上線部署。

除了應用系統的錯誤處理機制之外,當業務邏輯錯誤時,也能透過管理人員手動退版的方式,以避免錯誤的資料,進入到維運系統之中。 審慎的為客戶考量所有的情境,不僅規劃如何進(上版),也思量如何還原(退版),以系統正常運行為原則,做最完善的準備。

特色六 落實分權管理,自動發送通知

導入分權機制,以人員角色及職能為基礎,不同的角色擁有不同的權限對系統進行操作,並可在自動化建置/部署作業結束後,會自動發送Email通知任務負責人,內容包含任務執行的時間、任務名稱、任務內容、執行過程及結果。

支援平台

Operation System Middleware Database Virtualization Cloud Service
  • Microsoft Windows
  • SUSE Linux
  • Redhat Linux
  • AIX
  • MacOS
  • NEC
  • IBM WebSphere
  • Tomcat
  • Apache
  • Microsoft IIS
  • MQ
  • Nginx
  • MS SQL
  • MySQL
  • IBM DB2
  • Oracle
  • PostgreSQL
  • Microsoft Hyper-V
  • VMWare
  • Linux KVM
  • OpenStack
  • Docker
  • VirtualBox
  • AWS
  • GCP
  • Azure
  • Apperian

 

  •  
  • WebSphere 支援Version 7以上
  • Tomcat  支援Version 7以上
  • DB2  支援Version 7以上

 如欲進一步了解,歡迎與我們聯絡

電話:02-2586-7890 ext:500      Email:gss_iss@mail.gss.com.tw