CI/CDについて
ビジネス・ニーズに最適な継続的インテグレーションおよび継続的デプロイメント(CI/CD)アーキテクチャを決定します。
CI/CDは、ソフトウェア・コンポーネントを構築し、それらをまとめて、他の構成要素と効率的に連携することを目指しています。CI/CDプロセスにより、必要な標準へのコンプライアンスが確保され、自動または手動による決定によって環境へのデプロイが保証され、完全にトレース可能です。
CI/CDプロセスは、繰り返し可能で一貫性がある必要があります。CI/CDプロセスを製造パイプラインまたはデリバリ・パイプラインとして視覚化し、コードを作成するたびに同じ一連のステージを通過させることができます。
ニーズを満たすアーキテクチャとソリューションの確認
次の関連ソリューションを確認します。
- モバイル・アプリ用のCI/CDパイプラインの作成
- ボットのカスタム・コンポーネントのCI/CDパイプラインの作成
- Oracle Cloud Infrastructure Devopsによる最新のアプリケーション・デプロイメント戦略の計画
次の関連するリファレンス・アーキテクチャを確認します。
- Jenkinsを使用したクラウド・デプロイメント用のCI/CDパイプラインの設定
- GitLabをデプロイして、OCIでCI/CDパイプラインを有効にします
- Oracle Cloud Infrastructure DevOpsサービスおよびOCI Functionsを使用したCICDパイプラインの構築
- GitHubアクションとOracle Cloud Infrastructure DevOpsサービスを使用して、クラウド・デプロイメントのCI/CDパイプラインを構築します
- Jenkinsをマスター/エージェント・モードでデプロイ
- Oracle DevOpsサービスを使用した継続的な統合およびデプロイメント・パイプラインの構築
- Oracle Cloud Infrastructure DevOpsサービスを使用した継続的なデプロイメント・パイプラインの構築
- クラスタ自動スケーリングによるOracle Container Engine for KubernetesへのGitLabランナーのデプロイ
CI/CDプロセスに関する考慮事項
CI/CDプロセスはコーディング目標の達成を簡素化しますが、複雑さの領域もあります。CI/CDアーキテクチャを実装する場合は、次の要因を考慮してください。
テクノロジーの多様性
ソリューションをデプロイするために単一のパイプラインで必要な様々なテクノロジを識別します。検証するテクノロジと、静的コード分析からユニット、統合およびコンポーネント・テストまでに必要な潜在的なツールの両方。
独自の品質要件
異なるソフトウェア・ビルドに個別の品質要件があるかどうかを識別します。たとえば、内部使用のためのソフトウェアでは機密データを管理する必要はなく、個々の医療データを処理するインターネット対応ソリューションと比較して、同じレベルのセキュリティ・チェックは必要ありません。
技術スキル要件
パイプラインを運用および維持するために、チームまたは組織で必要な技術的スキル範囲を識別します。
費用福利厚生分析
構築するソフトウェアの価値または要件と比較して、パイプラインの確立コストを見積もります。
製品戦略要件
関連する製品およびクラウド戦略を定義します。たとえば、事前構築されたサービス(PaaS上のIaaSまたはそれぞれ逆)と比較した場合、ベンダーに依存しないオープン・ソース・ソフトウェア。