2024.03.04

Salesforce上でバージョン管理ができる?DevOps Centerとは

Just a moment... (31526)

はじめに

みなさんSalesforceの開発において資材管理やリリースはどのようにしていますでしょうか。git等を利用してメタデータまで管理している方もいれば、特にソース管理システムは利用せずSandboxごとに管理している方もいると思います。リリースについては変更セットを利用している方がほとんどでしょう。今回は、Salesforceが提供するDevOps Centerを触ってみましたので紹介します。

DevOps Centerとは

Salesforceのヘルプに下記のような記載があるように、DevOps CenterはSalesforce上で変更管理、リリース管理ができるツールになります。
Salesforce DevOps Center は、ローコードからプロコードまでの開発チームに DevOps のベストプラクティスを提供し、変更とリリース管理に関するエクスペリエンスを向上させます。宣言型ビルダーを使用しているか、VS Code 向け Salesforce 拡張機能でコードを記述しているか、Salesforce CLI の能力と柔軟性を活用しているか、または 3 つすべてを使用しているかに関係なく、すべての開発者が協力して、反復可能で拡張性の高い方法で顧客に価値を提供できます。

使用方法

Developer Editionでも使用できますので、実際に使ってみました。
詳しい設定方法等は下記のサイトに記載されていますので割愛しますが、設定から有効化できます。
https://help.salesforce.com/s/articleView?id=sf.devops_center_overview.htm&type=5
また、バージョン管理システムとしてGithubのアカウントを作成する必要があります。

事前準備

アプリケーションランチャーからDevOps Centerを開くと下記のような画面が表示されるので右上の「New Project」を押し、名前をつけます。これを1回のリリース単位ごとに作成します。

プロジェクトを作成したらリリース組織の設定をします。Sandboxの設定は試していないのですが、本番組織(DevelopeEdition含む)とSandboxをリリース組織として設定できるようです。

リリース組織を設定すると、下記のようにパイプラインと呼ばれるものが表示されます。
各ステージごとに組織を設定して、変更資材を次のステージへ反映していくようになっています。
ステージは増やしたり、減らしたりできます。
次は一番右の開発環境を登録します。本来はDeveloper Sandbox等を使うと思いますが、今回はスクラッチ組織を登録します。

今回は開発組織から直接本番組織に移行するため、2つのステージのみにして有効化します。

実際に開発を行う

環境の準備、DevOps Centerのプロジェクト作成が完了したので、実際に開発環境に設定したスクラッチ組織で開発を行ってみます。
今回は、商談に「DevOpsサンプル」というカスタム項目を1つ作成します。

開発作業が終わったら、DevOps Centerの先ほど作成したプロジェクトでWorksItemを作成します。

作成したWork Itemで送信したい環境を指定してProceedを押します。

ステータスが「処理中」に変わり、github上でブランチが作成されます。

その後Pull Changesを押すと変更内容が取り込まれ、次環境に反映する内容が選択できるようになります。
反映したい内容を選択して、Commit Changesを押します。
※プロファイルを含めるとエラーが出たため今回は除外しています。

変更内容が確定されます。
右上のCreate Reviewボタンが活性化されるため、そのボタンを押下します。

ステージがレビュー中に変わり、内部ではGituHubにプルリクエストが作成されます。
レビューが完了したら右上のReady to PromoteをONにします。

ステータスが昇格準備完了になったら開発の作業は完了です。

パイプラインに戻り、次の環境に反映したいWork Itemを選択してPromote Selectedを押します。
その際テストオプションの選択画面が表示されますので(通常の変更セットでリリースするときと同じような画面です)、資材に合わせた選択をしてリリースは完了です。

使ってみた感想

基本的にはgitのブランチ作成、プルリクエストのような機能をSalesforceのUI上からできる機能だと思います。gitを使ったバージョン管理にそれほど精通していないユーザーにとっては、開発フローの確立をするのに有効活用できるのではないでしょうか。
ただ上記で紹介した操作をリリース環境(本番環境)でする必要があるため、企業によってはネックになる部分があるのかなと感じました。

Salesforceが公開しているDevOps Centerのロードマップを確認すると、Bitbucket等にも対応するようになるようなので、機能も充実してくるのではないでしょうか。
https://github.com/orgs/forcedotcom/projects/4

テラスカイではより高機能なリリース管理が行えるFlosumを提供し、大変好評を得ております。ご興味があある方はこちらをご覧ください。
39 件
     
  • banner
  • banner

関連する記事