RSS GitLab
フォロー
CI/CD 入力:パイプラインにパラメーターを渡すためのセキュアで推奨される方法
GitLab CI/CD の入力は、パイプライン パラメーターの渡しにmodernなソリューションを提供し、型付きのパラメーターと検証、および明確な契約を提供します。一方、伝統的な CI/CD 変数は、設定のために設計されたものですが、文字列のみの性質とランタイムのミュータビリティーのために信頼性とセキュリティーの問題を提起します。入力は、これらの問題を型の安全性を強制し、予期せぬエラーを防ぎ、変数の衝突を緩和することで解消します。変数は、型の検証がなく、数値やブール値を期待して文字列を受け取るとランタイム エラーが発生します。また、ランタイム中にはミュータブルであり、複数のジョブが同じ変数を変更すると予期せぬ動作が発生します。さらに、変数は、機密情報と同じアクセス許可を継承することが多く、セキュリティー リスクを提起します。変数を使用したエラーディテクションは、CI/CD リソースと開発者の時間を無駄にすることが多く、信頼性を確保するために複雑なワークアラウンドが必要です。ローカル デバッグも、外部システムに依存しているため困難です。GitLab の変数の優先順位は、特に異なるプロジェクトでの再利用可能なパイプライン コンポーネントを使用する場合、予期せぬ動作を引き起こすことがあります。この複雑さは、テンプレートの作者に対する広範なドキュメント化を必要とします。一方、入力は、パイプラインの作成時に評価され、ジョブ名を含む様々な設定要素での補間を許可します。この機能は、再利用可能なコンポーネントを複数回含む場合のジョブ名の衝突を防ぎます。入力は、異なる値の型をサポートし、パイプラインの作成時に型の不一致を検出して、実行前にパイプラインを拒否します。これにより、変数の遅延したエラーとは異なり、即時のフィードバックを提供します。入力は、明確なパラメーターの期待を定義し、設定された後は不変です。これにより、パイプラインのロバスト性とメンテナンス性を向上させ、CI/CD ワークフローの信頼性と効率を向上させます。入力への移行は、CI/CD ワークフローの信頼性と効率を向上させることを約束します。