Technical Articles
SAPの新しい移送管理ツール gCTS 【Part.1 概要編】
SAPの新しい移送ツールgCTSについて、3回にわたってご紹介します。
第1回となるこのポストでは、まずgCTSの概要について情報を提供させていただきます。
gCTSとは何か?
gCTS は Git enabled CTSの略です。
gCTS は、SAPソフトウェアの変更ロジスティクスを管理する既存の移送依頼ツールであるCTSと、オープンソースのバージョン管理システムであるGitの連携を可能にした新たな移送管理ツールということができます。gCTSの管理の対象となるのは、ABAP上のワークベンチオブジェクトと、カスタマイジングオブジェクトです。
Gitとは何か
Gitは、プログラムのソースコードなどの変更履歴を記録・追跡するための分散型バージョン管理システムです。「分散型」の名のとおり、バージョン管理のためのリポジトリを複数持つことができます。
この図のように、各開発担当者がそれぞれの作業環境にローカルリポジトリを持つことができ、各担当者はローカルリポジトリからオンライン上のリモートリポジトリに開発物をpushして他の開発者と共有することができます。ローカルリポジトリがあるので、リモートリポジトリに接続していなくても作業をすることも可能です。
主にスクラッチ開発の現場で使用されていたツールですが、この5年ほどでSAPの開発現場でもその名を聞くことが多くなってきました。
【知識整理】 CTS 関連ツール群
CTSについては伝統的なSAP製品の変更・移送管理ツールとして読者の方は既にご存じかと思いますが、CTSを中心としたツールにはいくつか種類がありますので以下に整理しておきます。
- CTS ( Central Transport System ) ABAP製品の変更について、移送依頼という単位で管理するツール (いわゆるトランザクションコード:SE01/SE09のこと)
- TMS ( Transport Management System ) CTSで登録・リリースされた移送依頼を後続システムにインポートするためのツール(トランザクションコード:STMSのこと)
- CTS+ ( CTS plus ) 非ABAPのSAP製品の変更について、移送形式で管理するためのツール 対応製品一覧については → こちら
- cCTS ( Central CTS ) 複数のSAP製品における移送を一括管理するためのツール
- gCTS ( Git enabled CTS ) ← 今回紹介する機能
CTS/TMSについては、gCTSにおいても重要な役割を果たす機能です。一方、CTS+ と cCTSについては特に触れませんのでご注意ください。
gCTSのメリット
1.バージョン管理機能の強化
これまで、「ABAP開発のバージョン管理」といえば、ABAPワークベンチのバージョン管理機能でした。しかしこの機能は移送依頼単位のバージョンのみ管理するため、バージョンの区切りを開発者や管理者の任意のタイミングで設定するということができませんでした。しかし、Gitとの連携によってGitによる細かなバージョン管理が可能になります。
2.CIツールとの連携による継続的デベロップメントの実現
継続的デベロップメントのフローの例
① gCTSを通じて、開発者が開発物をGitにコミットする
②GitからJenkinsを通じてビルドを行う
③ビルドと同時にJenkinsがテストスクリプト(例:ABAP Unit)やATCを実行する
④テスト結果をJenkinsがslackを通して開発者やチームに通知する
3.分散開発(計画中の機能)
チームごとに開発機が複数あるような場合においても、リモートリポジトリによって開発物のバージョンの整合性を保つことができます。ただし本機能は2021年1月25日現在まだリリースされていません。
技術的な前提
gCTSを設定し、使用するには SAP S/4HANA 1909 以上が必要です。
また、移送対象となるオブジェクトには一部制限がありますので、ノート2888887 を予めご確認ください。
ここまでご覧いただきましてありがとうございます。
次回からは、gCTSの設定方法、gCTSの使用方法についてご紹介します。