Skip to content

環境定義

環境要件

Qmonus Value Streamを利用するために必要な環境は、以下のとおりです。

  • アプリケーションのソースコードを管理しているGitリポジトリ
    • プライベートリポジトリの場合、リポジトリへのアクセス権のあるトークン
  • アプリケーションをデプロイするクラウド環境
    • 環境については、用意する環境を参照してください。
    • デプロイに必要な権限を有したサービスアカウント、またはそのサービスアカウントを利用するためのトークン
  • ドメイン名、および、SSL証明書
    • Qmonus Value Streamを利用する際に、Cloud Native Adapterを用いて クラウドのマネージド証明書によるDV(Domain Validation)証明書を自動発行できます。DV証明書以外を使用する場合は、事前にSSL証明書の準備が必要です。

サポートしているプロバイダ

  • Provisioning Target: Amazon Web ServicesMicrosoft AzureGoogle Cloud(GCP)Kubernetes
  • Repository: BacklogBitbucketGitHubGitLab
    • BacklogBitbucket: git cloneに使用可能なプロトコルはsshのみとなります。
    • GitHubGitLab: git cloneに使用可能なプロトコルはhttps/ssh双方に対応しています。
  • Secret Backend: Azure Key VaultGCP Secret Manager

クライアント要件

  • 推奨ブラウザは、Google ChromeMozilla Firefox になります。
  • 推奨OSは、Mac OSMicrosoft Windows (Windows Subsystem for Linux) になります。
    • Windows(WSL)の方は、qvsctlなどのQmonus Value Streamが提供するバイナリをご利用の場合、Linuxのバイナリをご利用ください。
    • VMインスタンスおよびコンテナを利用する場合、CLIを利用したAPI認証の手順が一部異なります。詳細はVMインスタンスやコンテナ内からのアクセストークンの取得をご確認ください。

用意する環境

Qmonus Value Streamは、アプリケーション開発における試験フェーズと運用フェーズをサポートしています。
結合試験環境は1つのみ、総合試験環境・商用環境は複数の環境に対応しています。
試験フェーズでは、結合試験をスコープとする環境が1つ必須であり、総合試験をスコープとする環境も1つ用意することを強く推奨します。運用フェーズでは、商用環境をスコープとする環境が1つ必須です。なお、各環境の名称は任意で設定できます。
Qmonus Value Streamで想定している開発~運用までのフェーズと対応する環境は、以下のとおりです。

  • 開発フェーズ
    • 開発環境
    • Pull Request試験環境
  • 試験フェーズ
    • 結合試験環境 (名称例:Staging環境)
    • 総合試験環境 (名称例:Pre-Production環境)
  • 運用フェーズ
    • 商用環境 (名称例:Production環境)

開発フェーズにおける開発環境・Pull Request試験環境については、Qmonus Value Streamではサポートしません。
アプリケーション開発者が各フェーズで用意する環境とQmonus Value Streamのサポート範囲を以下の図に示します。Promotionについては、ページの下部を参照して下さい。

Info

Promotion を行うことで、AssemblyLine(A)の処理が完了した後、(A)の実行結果(例えば、イメージビルドしたDocker Image名など)を入力パラメータとして利用して後段のAssemblyLine(B)を実行できます。

Qmouns Value Streamがサポートする範囲

環境とAssemblyLineの推奨パターン

環境とAssemblyLineの推奨パターン

各リソースの推奨のまとめ方は以下を参考にしてください。

Task

  • 再利用可能な単位で処理の実行をまとめる
  • 失敗時に再実行したい単位でまとめる
  • 例:git-checkout, docker-image-build

Pipeline

  • Applicationに対する作業でまとめる
  • 例: build-axis, deploy-axis, release-axis

AssemblyLine

  • Promotionを挟みたい単位でまとめる
  • マイクロサービス(=リリースサイクルが同じでまとめてリリースしたいApplication群)でまとめる
  • リリースサイクルが同じで複数の環境に同時にデプロイしたい場合も、同一AssemblyLineにまとめる
    • 例:総合試験のために機能試験用の環境(A)と非機能試験用の環境(B)に同時にリリース、商用の東京リージョンと大阪リージョンに同時リリース、etc.

Last updated: