2017-05-01 16 views
0

私は自分のビルド定義にビルドステップの引数プロパティでpowershell関数に渡しているが、代わりに********として送られる秘密変数がいくつかある解読される。私はPowerShellスクリプトの呼び出しに渡しているTFSビルド定義シークレット変数

パラメータは、ビルド定義に秘密として設定$(アクセスキー)と$(秘密鍵)を次のとおりです。

-source "$(CodeDeploySource)" -destination "$(CodeDeployDestination)" -Description "$(Description)" -Location "$(Location)" -ApplicationName "$(ApplicationName)" -DeploymentGroup "$(DeploymentGroup)" -DeploymentConfig "$(DeploymentConfig)" -ak "$(accesskey)" -sk "$(secretkey)" -region "$(region)" 

のパラメータセクション私のPowerShellスクリプトは次のとおりです。

param(
[string]$source, 
[string]$destination, 
[string]$Description, 
[string]$Location, 
[string]$ApplicationName, 
[string]$DeploymentGroup, 
[string]$DeploymentConfig, 
[string]$ak, 
[string]$sk, 
[string]$region 
) 

は、ビルドプロセス中に秘密の変数を解読するためにTFSで有効にする必要があります設定はありますか?

答えて

1

秘密変数を復号化するために設定を行う必要はありません。あなたの問題を再現し、ビルドログで見つけました。*****のように表示されます。実際にはOfficial documentに記載されています:

クライアントには戻されません。ビルドまたはリリースからのログ出力は、 から自動的にマスクされます。

環境変数に復号化されません。したがって、ビルドステップによるスクリプトとプログラムの実行 にはデフォルトでアクセス権が与えられていません。

したがって、ビルドログには表示されません。しかし、あなたのビルドには効果がありません。この値はPowerShellスクリプトで取得でき、正常に使用できます。それは秘密変数であるため出力できません。

+0

ニース。私はそれが印刷によって正しく設定されていることを確認しようとしていましたが、出力に印刷することさえそれを隠すことに気づいていませんでした。私はちょうどそれが渡されていることを確認するためにその部分を示すために、部分文字列をしました。 – Aaron

関連する問題