最近の検証のリリース
検証のリリースではテストが再実行されないため、リリース時間を短縮できます。最近検証に成功している場合は、テストを実行せずに検証済みコンポーネントをリリースできます。<sf:deployRecentValidation> タスクで最近の検証をリリースできます。
検証では、組織にはいかなるコンポーネントも保存されません。検証は、実際のリリースで受信する可能性のある成功または失敗のメッセージを確認する場合にのみ使用します。コンポーネントを検証するには、checkOnly="true" パラメータを対象 (<sf:deploy>) に追加します。
最近の検証をリリースする前に、次の要件が満たされていることを確認します。
- コンポーネントが対象の環境で過去 10 日以内に正常に検証されている。
- 検証の一部として、対象組織での Apex テストに合格している。
- コードカバー率要件を満たしている。
- 組織のすべてのテストまたはすべてのローカルテストが実行された場合、全体のコードカバー率は 75% 以上で、Apex トリガについてもある程度のコードカバー率が必要である。
- 特定のテストが RunSpecifiedTests テストレベルで実行された場合、リリースされる各クラスおよびトリガの個々のカバー率が 75% 以上である。
<sf:deployRecentValidation> タスクは次のパラメータをサポートしています。
| 項目 | 説明 |
|---|---|
| username | sessionId が指定されていない場合は必須です。ログイン用の Salesforce ユーザ名。この接続に関連付けられるユーザ名には、「メタデータ API 関数を使用したメタデータを変更」権限が必要です。 |
| password | sessionId が指定されていない場合は必須です。このプロジェクトに関連付けられた組織にログインするために使用するパスワード。セキュリティトークンを使用している場合は、パスワードの最後に 25 桁のトークン値を貼り付けます。 |
| recentValidationId | 必須。最近の検証の ID を指定します。 |
| sessionId | username および password が指定されていない場合は必須です。有効な Salesforce セッションの ID または OAuth アクセストークン。セッションは、ユーザがユーザ名とパスワードを使用して正常に Salesforce にログインした後に作成されます。新しいセッションを作成するのではなく既存のセッションにログインする場合は、セッション ID を使用します。または、OAuth 認証のためのアクセストークンを使用します。詳細は、Salesforce ヘルプの「OAuth によるアプリケーションの認証」を参照してください。 |
| serverurl | 省略可能。Salesforce サーバの URL (空白の場合、デフォルトは login.salesforce.com)。Sandbox インスタンスに接続するには、この URL を test.salesforce.com に変更します。 |
| rollbackOnError | 省略可能。デフォルトは true です。エラーが発生した場合、ロールバックを完了するか (true)、否か (false) を示します。false の場合、エラーなしで実行できるアクションのセットはすべて実行され、残りのアクションではエラーが返されます。本番組織にリリースする場合は、このパラメータは true に設定されている必要があります。 |
| maxPoll | 省略可能。デフォルトは 200 です。リリース要求の結果を得るためにサーバをポーリングする回数です。待機を停止した場合でも、リリースに成功することがあります。 |
| pollWaitMillis | 省略可能。デフォルトは 10000 です。リリース結果をポーリングする場合の待機時間 (ミリ秒単位) です。待機を停止した場合でも、リリースに成功することがあります。 |
| trace | 省略可能。デフォルトは false です。SOAP 要求と応答をコンソールに表示します。このオプションを選ぶと、ログイン時のユーザのパスワードがプレーンテキストで表示されます。 |
次の例に、最近の検証のリリースターゲットを示します。recentValidationId (sf.recentValidationId) の値は、build.properties ファイルで定義されます。
1<target name="quickDeploy">
2 <sf:deployRecentValidation username="${sf.username}" password="${sf.password}"
3 sessionId="${sf.sessionId}" serverurl="${sf.serverurl}"
4 maxPoll="${sf.maxPoll}"
5 recentValidationId="${sf.recentValidationId}"/>
6</target><sf:deployRecentValidation> は、Ant 移行ツールのバージョン 34.0 以降でサポートされます。