概要
変更セットを使って変更を本番環境に適用するような運用をしていたSalesforce環境に対して、DevOps CenterとGitを使ったコード管理体制を導入しました。
目的
従来の開発体制では、Sandbox環境に手作業で変更を適用し、準備ができた段階で本番環境に対して変更セットでリリースする運用をしていました。それにより、以下のような不都合が生じていたため、それらの解消を目指しました。
- 変更セットに過不足なく変更点を追加するためには、注意深く作業するしかない
- 複数の開発作業を1つのSandbox環境で同時に進める体制だったため、並列作業できない部分が発生したり、最新の本番環境の状況を基準に開発できなかったりする
- Sandbox環境と本番環境の設定がズレていく、ズレていることに気づけない
- 変更履歴を管理できない
実施作業
- Salesforce DXプロジェクトのセットアップ
- Salesforce CLIを使って、SFDXプロジェクトの雛形を作成しました。
- GitHubリポジトリのセットアップ
- Salesforceの設定を管理するためのGitHubリポジトリの初期設定を行いました。
- DevOps Centerのセットアップ
- SalesforceにDevOps Centerをセットアップしました。
- DevOps Center管理の”環境”に既存のSandbox環境を追加しました。
- 設定を順次Git管理
- 以下の順番でコード管理に含めていきました。
- 標準選択リスト項目の値のセット(StandardValueSet)
- レコードタイプ(RecordType)
- リストビュー(ListView)
- カスタムアプリケーション(CustomApplication)
- 外部ログイン情報(ExternalCredential)
- 指定ログイン情報(NamedCredential)
- 権限セット(PermissionSet)
- 接続アプリケーション(ConnectedApp)
- ページレイアウト(Layout)
- プロファイル(Profile)
- Salesforce CLIの操作手順書の作成
- スクラッチ組織の作成、パスワード生成、UI表示、削除などの基本操作をまとめた手順書を作成しました。
本支援の結果
解決したかった課題が解決でき、Salesforce開発のスピードが上がりました。また、開発環境として作成したスクラッチ組織に対して最新の設定をボタン一つで適用できることになったことにより、タスクごとに独立した本番環境相当の環境で開発でき、環境間の差分による手戻りや設定漏れの手動適用にかかる工数が発生しなくなりました。