Azure DevOps เดชเตˆเดชเตเดชเต เดฒเตˆเดจเตเด•เดณเดฟเตฝ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต

Windows-เดจเตเด‚ เด…เดคเดฟเดฒเต‡เดฑเต† เด•เดพเดฐเตเดฏเด™เตเด™เตพเด•เตเด•เตเดฎเตเดณเตเดณ เด’เดฐเต เด…เดคเตเดญเตเดคเด•เดฐเดฎเดพเดฏ เด‰เดชเด•เดฐเดฃเดคเตเดคเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดžเด™เตเด™เดณเตเดŸเต† เด…เดตเดฒเต‹เด•เดจเด‚ เดžเด™เตเด™เตพ เดคเตเดŸเดฐเตเดจเตเดจเต, Azure DevOps. เด‡เดชเตเดฐเดพเดตเดถเตเดฏเด‚, เดชเดฐเดฟเดธเตเดฅเดฟเดคเดฟ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เด•เตŠเดฃเตเดŸเต เดตเดณเดฐเต†เดฏเดงเดฟเด•เด‚ เด•เดทเตเดŸเดชเตเดชเต†เดŸเตเดŸเดคเดฟเดจเดพเตฝ, เดŽเดฒเตเดฒเดพ เด…เดจเตเดญเดตเด™เตเด™เดณเตเด‚ เด’เดฐเต เดฒเต‡เด–เดจเดคเตเดคเดฟเตฝ เด‰เตพเดชเตเดชเต†เดŸเตเดคเตเดคเดพเตป เดžเดพเตป เดคเต€เดฐเตเดฎเดพเดจเดฟเดšเตเดšเต.

เด“เดฐเต‹ เดจเดฟเตผเดตเตเดตเดนเดฃ เดชเดฐเดฟเดคเดธเตเดฅเดฟเดคเดฟเดฏเดฟเดฒเตเด‚ เด…เดตเดฏเตเด•เตเด•เต เดตเตเดฏเดคเตเดฏเดธเตเดค เดตเดพเด•เตเดฏเด˜เดŸเดจเดฏเตเดฃเตเดŸเต†เดจเตเดจ เดตเดธเตเดคเตเดคเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เด†เดฐเด‚เดญเดฟเดšเตเดšเต, เดชเตˆเดชเตเดชเตเดฒเตˆเดจเดฟเดจเตเดฑเต† เด’เดฐเต เด˜เดŸเตเดŸเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดฎเดฑเตเดฑเตŠเดจเตเดจเดฟเดฒเต‡เด•เตเด•เต เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เด•เตˆเดฎเดพเดฑเตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด’เดฐเต เดธเตเดฑเตเดฑเดพเตปเดกเต‡เตผเดกเต เด•เดดเดฟเดตเดฟเดจเตเดฑเต† เด…เดญเดพเดตเดคเตเดคเดฟเตฝ เด…เดตเดธเดพเดจเดฟเด•เตเด•เตเดจเตเดจเต.

เดชเตเดฐเดงเดพเดจ เด‰เดฆเดพเดนเดฐเดฃเด™เตเด™เตพ เดฑเดฟเดฒเต€เดธเต เดชเตˆเดชเตเดชเต เดฒเตˆเดจเตเด•เดณเดฟเดฒเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเดฎเต†เดจเตเดจเต เดžเดพเตป เดฑเดฟเดธเตผเดตเต‡เดทเตป เดšเต†เดฏเตเดฏเตเด‚, เด•เดพเดฐเดฃเด‚ YAML เด‡เดคเตเดตเดฐเต† เด…เดตเดฟเดŸเต† เดŽเดคเตเดคเดฟเดฏเดฟเดŸเตเดŸเดฟเดฒเตเดฒ, เด•เต‚เดŸเดพเดคเต† เดŽเดจเดฟเด•เตเด•เต เดจเดฟเดฐเดตเดงเดฟ เด˜เดŸเตเดŸเด™เตเด™เดณเตเดŸเต†เดฏเตเด‚ เดจเดฟเดฐเดตเดงเดฟ เดชเตเดฐเดพเดตเดธเตเดคเตเด•เตเด•เดณเตเดŸเต†เดฏเตเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดค เด†เดตเดถเตเดฏเดฎเดพเดฃเต. เด‡เดคเต เดธเดพเดงเดพเดฐเดฃ เดชเตˆเดชเตเดชเตเดฒเตˆเดจเตเด•เดณเดฟเตฝ เดฒเดญเตเดฏเดฎเดพเดฏเดคเดพเดฏเดฟ เดคเต‹เดจเตเดจเตเดจเตเดจเต, เด‡เดคเต เดชเตเดฐเดตเตผเดคเตเดคเดจเดคเตเดคเดฟเตฝ เดชเตเดฐเดพเดฏเต‹เด—เดฟเด•เดฎเดพเดฏเดฟ เดคเตเดฒเตเดฏเดฎเดพเดฃเต. เดชเตˆเดชเตเดชเตโ€Œเดฒเตˆเดจเตเด•เตพ YAML-เตฝ, เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเดจเตเดจ เดชเดพเดฐเดพเดฎเต€เดฑเตเดฑเดฑเตเด•เดณเตเดณเตเดณ เดŸเต†เด•เตเดธเตเดฑเตเดฑเต เดชเตเดฐเดพเดคเดฟเดจเดฟเดงเตเดฏเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เดžเด™เตเด™เตพ เด’เดฐเต เดšเต†เดฑเดฟเดฏ เด—เตเดฐเดพเดซเดฟเด•เตเด•เตฝ เดŸเต‚เตพเดŸเดฟเดชเตเดชเต เดšเต‡เตผเดคเตเดคเต. เด‡เดคเต เดตเดณเดฐเต† เดธเต—เด•เดฐเตเดฏเดชเตเดฐเดฆเดฎเดพเดฃเต; เด“เดฐเต‹ เดฎเตŠเดกเตเดฏเต‚เดณเดฟเดจเตเด‚ เดจเดฟเด™เตเด™เตพ เดกเต‹เด•เตเดฏเตเดฎเต†เดจเตเดฑเต‡เดทเดจเดฟเดฒเต‚เดŸเต† เดชเต‹เด•เต‡เดฃเตเดŸเดคเดฟเดฒเตเดฒ. เดŽเดจเตเดจเดพเตฝ เดžเดพเตป เด‡เดคเต เด…เดŸเตเดคเตเดค เดฒเต‡เด–เดจเดคเตเดคเดฟเตฝ เดตเดฟเดตเดฐเดฟเด•เตเด•เตเด‚, เดŽเดจเตเดจเดพเตฝ เด‡เดชเตเดชเต‹เตพ เด‡เดตเดฟเดŸเต† เดจเดตเต€เด•เดฐเดฃเดคเตเดคเดฟเดจเตเดฑเต† เดคเดจเตเดจเต† เด’เดฐเต เดšเดฟเดคเตเดฐเด‚ เด‰เดฃเตเดŸเต.

Azure DevOps เดชเตˆเดชเตเดชเต เดฒเตˆเดจเตเด•เดณเดฟเตฝ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต

เดธเด‚เดญเดฐเดฃเดตเตเด‚ เด‰เดชเดฏเต‹เด—เดตเตเด‚

เดจเดฎเตเด•เตเด•เต เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ เดธเตเดฅเดฟเดฐเดธเตเดฅเดฟเดคเดฟ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เด‰เดฃเตเดŸเต†เดจเตเดจ เดตเดธเตเดคเตเดคเดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเดฎเตเด•เตเด•เต เด†เดฐเด‚เดญเดฟเด•เตเด•เดพเด‚. เด…เดต เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเดคเต, เด…เดตเดฏเตเดŸเต† เด‰เดคเตเดญเดตเดคเตเดคเต† เด†เดถเตเดฐเดฏเดฟเดšเตเดšเต, เดฑเดฟเดฒเต€เดธเต, เดธเดฟเดธเตเดฑเตเดฑเด‚ เดฎเตเดคเดฒเดพเดฏเดตเดฏเดฟเตฝ เดจเดฟเดจเตเดจเดพเดฃเต. เดชเต‚เตผเดฃเตเดฃเดฎเดพเดฏ เดฒเดฟเดธเตเดฑเตเดฑเต (เด…เดคเต เดฎเดพเดฑเตเดจเตเดจเดคเตเดชเต‹เดฒเต†, เด…เดฒเตเดฒ), เด‡เดตเดฟเดŸเต† เดฒเดญเตเดฏเดฎเดพเดฃเต เดชเตเดฐเดฎเดพเดฃเต€เด•เดฐเดฃเด‚. เดตเดพเด•เตเดฏเด˜เดŸเดจเดฏเตเดณเตเดณ เดŽเดฒเตเดฒเดพ เดธเตเด•เต€เดธเต‹เดซเตเดฐเต€เดจเดฟเดฏเดฏเตเด‚ เดšเตเดตเดŸเต†เดฏเตเดณเตเดณ เดกเต‹เด•เตเดฏเตเดฎเต†เดจเตเดฑเต‡เดทเดจเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เด’เดฐเต เด‰เดฆเดพเดนเดฐเดฃเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดšเดฟเดคเตเดฐเต€เด•เดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต. เด’เดฐเต‡ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเดฟเดจเต เดฎเต‚เดจเตเดจเต เดชเตเดฐเดคเดฟเดจเดฟเดงเดพเดจเด™เตเด™เดณเตเดฃเตเดŸเต, เด…เดคเต เดจเดฎเตเดฎเตพ เดŽเดตเดฟเดŸเต†เดฏเดพเดฃเต เดตเดฟเดณเดฟเด•เตเด•เตเดจเตเดจเดคเต เดŽเดจเตเดจเดคเดฟเดจเต† เด†เดถเตเดฐเดฏเดฟเดšเตเดšเต.

steps:
 - bash: echo This script could use $SYSTEM_ACCESSTOKEN
    env:
      SYSTEM_ACCESSTOKEN: $(System.AccessToken)
  - powershell: Write-Host "This is a script that could use $env:SYSTEM_ACCESSTOKEN"
    env:
      SYSTEM_ACCESSTOKEN: $(System.AccessToken)

เดŸเดพเดธเตโ€Œเด•เต เดŽเด•เตโ€Œเดธเดฟเด•เตเดฏเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเดจเตเดจ เดเดœเดจเตเดฑเดฟเตฝ เดจเดฟเด™เตเด™เตพ เด’เดฐเต เดตเต‡เดฐเดฟเดฏเดฌเดฟเตพ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ, เด…เดคเต $(System.AccessToken) เด†เดฃเต. เด…เดคเต‡ เดเดœเดจเตเดฑเดฟเตฝ เดคเดจเตเดจเต† เด’เดฐเต เดชเดตเตผเดทเต†เตฝ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเดฟเดจเตเดณเตเดณเดฟเตฝ เด‡เดคเต เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เตพ เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เด™เตเด•เดฟเตฝ, เด…เดคเต เด‡เดคเดฟเดจเด•เด‚ เดคเดจเตเดจเต† $env:SYSTEM_ACCESSTOKEN เด†เดฏเดฟเดฐเดฟเด•เตเด•เตเด‚. เดŸเดพเตผเด—เต†เดฑเตเดฑเต เดฎเต†เดทเต€เดจเตเด•เตพ เดŸเดพเดธเตโ€Œเด•เตเด•เดฟเดฒเต† เดชเดตเตผเดทเต†เตฝ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เดฑเดฟเดฎเต‹เดŸเตเดŸเต เดนเต‹เดธเตเดฑเตเดฑเดฟเตฝ เดˆ เดตเต‡เดฐเดฟเดฏเดฌเดฟเตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เตพ เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เด™เตเด•เดฟเตฝ, เดจเดฟเด™เตเด™เตพ เด‡เดคเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดธเตโ€Œเด•เตเดฐเดฟเดชเตเดฑเตเดฑเดฟเดฒเต‡เด•เตเด•เต เด’เดฐเต เด†เตผเด—เตเดฏเตเดฎเต†เดจเตเดฑเดฟเดฒเต‚เดŸเต† เด•เตˆเดฎเดพเดฑเต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต. เดชเดฐเด‚. เดฌเดพเดทเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด‡เดคเต เดฒเดณเดฟเดคเดฎเดพเดฃเต, $SYSTEM_ACCESSTOKEN เดŽเดจเตเดจ เด†เตผเด—เตเดฏเตเดฎเต†เดจเตเดฑเตเด‚ เดตเดพเด•เตเดฏเด˜เดŸเดจเดฏเตเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด…เดคเต เด‰เดณเตเดณเดฟเดฒเต‡เด•เตเด•เต เด•เดŸเดคเตเดคเดฟเดตเดฟเดŸเดพเด‚.

เดจเดฟเด™เตเด™เดณเตเดŸเต† เดธเตเดตเดจเตเดคเด‚ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพเด•เตเด•เต เดธเดฎเดพเดจ เดจเดฟเดฏเดฎเด™เตเด™เตพ เดฌเดพเดงเด•เดฎเดฒเตเดฒ; เด‡เดตเดฟเดŸเต† เดจเดฟเด™เตเด™เตพ เด‡เดคเดฟเดจเด•เด‚ เดคเดจเตเดจเต† เดตเดพเด•เตเดฏเด˜เดŸเดจเดฏเตเด•เตเด•เต เด‰เดคเตเดคเดฐเดตเดพเดฆเดฟเดฏเดพเดฃเต. เด“เดฐเต‹ เดŸเดพเดธเตเด•เตเด•เดฟเดฒเตเด‚ เดชเตเดฐเดพเดฆเต‡เดถเดฟเด•เดฎเดพเดฏเดฟ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เดธเดœเตเดœเดฎเดพเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚.

Azure DevOps เดชเตˆเดชเตเดชเต เดฒเตˆเดจเตเด•เดณเดฟเตฝ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต

เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด†เด—เต‹เดณเดคเดฒเดคเตเดคเดฟเตฝ เดตเต‡เดฐเดฟเดฏเดฌเดฟเตพ เดธเตเดฑเตเดฑเต‹เดฑเดฟเดฒเต‡เด•เตเด•เต, เดคเตเดŸเตผเดจเตเดจเต เด…เดต เดธเตเดฑเตเดฑเต‹เดฑเดฟเตฝ เดจเดฟเดจเตเดจเต เดฒเดฟเด™เตเด•เต เดšเต†เดฏเตเดฏเตเด•. เดตเดณเดฐเต† เดธเตเด–เด•เดฐเดฎเดพเดฏเดฟ.

Azure DevOps เดชเตˆเดชเตเดชเต เดฒเตˆเดจเตเด•เดณเดฟเตฝ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต

เด’เดฐเต เดฌเต‹เดฃเดธเต เดŽเดจเตเดจ เดจเดฟเดฒเดฏเดฟเตฝ, เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เดตเดณเดฐเต† เดฐเดนเดธเตเดฏเดฎเดพเดฃเต†เด™เตเด•เดฟเตฝ, เด…เดต เด…เดธเต‚เตผ เด•เตเดฒเต—เดกเดฟเตฝ เด…เดธเต‚เตผ เดตเต‹เตพเดŸเตเดŸเต เดŽเดจเตเดจ เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเดฟเตฝ เดธเต‚เด•เตเดทเดฟเด•เตเด•เดพเด‚; เดฒเตˆเดฌเตเดฐเดฑเดฟเดฏเดฟเดฒเต† เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเดฟเดฒเต‡เด•เตเด•เต เดตเต‹เตพเดŸเตเดŸเต เดฒเดฟเด™เตเด•เต เดšเต†เดฏเตเดฏเดพเด‚.

Azure DevOps เดชเตˆเดชเตเดชเต เดฒเตˆเดจเตเด•เดณเดฟเตฝ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต

เดชเตŠเดคเตเดตเต‡, เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดŽเดฒเตเดฒเดพเด‚ เดตเตเดฏเด•เตเดคเดฎเดพเดฃเต; เดชเตˆเดชเตเดชเตเดฒเตˆเดจเตเด•เดณเดฟเตฝ เด…เดต เด“เดฐเต‹ เดฒเต‹เดžเตเดšเดฟเดจเตเด‚ เดธเตเดตเดฎเต‡เดงเดฏเดพ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเด‚; เดฑเดฟเดฒเต€เดธเดฟเตฝ เด…เดคเตเดคเดฐเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดจเด™เตเด™เดณเตŠเดจเตเดจเตเดฎเดฟเดฒเตเดฒ. เดเดœเดจเตเดฑเต เด‡เดจเต€เดทเตเดฏเดฒเตˆเดธเต‡เดทเตป เดฒเต‹เด—เตเด•เดณเดฟเตฝ เดจเดฟเด™เตเด™เตพ เดตเต€เดฃเตเดŸเตเด‚ เดชเตˆเดชเตเดชเตเดฒเตˆเดจเดฟเดฒเต‡เด•เตเด•เต เดŽเดจเตเดคเดพเดฃเต เด•เตˆเดฎเดพเดฑเตเดจเตเดจเดคเต†เดจเตเดจเต เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด•เดพเดฃเดพเตป เด•เดดเดฟเดฏเตเด‚, เดŽเดจเตเดจเดพเตฝ เด…เดต เด‡เดคเดฟเดจเด•เด‚ เดคเดจเตเดจเต† เดชเดฐเดฟเดตเตผเดคเตเดคเดจเด‚ เดšเต†เดฏเตเดค เดฐเต‚เดชเดคเตเดคเดฟเตฝ เด‰เดฃเตเดŸเต†เดจเตเดจเต เด“เตผเดฎเตเดฎเดฟเด•เตเด•เตเด•.

Azure DevOps เดชเตˆเดชเตเดชเต เดฒเตˆเดจเตเด•เดณเดฟเตฝ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต

เดกเตˆเดจเดพเดฎเดฟเด•เต เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ

เด’เดฐเต เด˜เดŸเตเดŸเดคเตเดคเดฟเตฝ เด•เตเดฑเดšเตเดšเต เดฎเต‚เดฒเตเดฏเด‚ เดฒเดญเดฟเด•เตเด•เตเด•เดฏเตเด‚ เด…เดคเต เด…เดŸเตเดคเตเดค เด˜เดŸเตเดŸเดคเตเดคเดฟเดฒเต‡เด•เตเด•เต เด•เตˆเดฎเดพเดฑเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดฎเตเดชเต‹เดดเดพเดฃเต เดคเดฎเดพเดถ เด†เดฐเด‚เดญเดฟเด•เตเด•เตเดจเตเดจเดคเต.

Azure DevOps เดชเตˆเดชเตเดชเต เดฒเตˆเดจเตเด•เดณเดฟเตฝ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต

เดžเด™เตเด™เตพเด•เตเด•เต เด…เดคเตเดคเดฐเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดค เดจเตฝเด•เดฟเดฏเดฟเดŸเตเดŸเดฟเดฒเตเดฒ. เดŽเดจเตเดจเดพเตฝ เดžเด™เตเด™เดณเตเดŸเต† เด•เตˆเด•เตพ เดตเดฟเดฐเดธเดคเดฏเตเด•เตเด•เตเดณเตเดณเดคเดฒเตเดฒ, เด—เต‚เด—เดฟเดณเดฟเดจเตเดฑเต† เดธเดนเดพเดฏเดคเตเดคเต‹เดŸเต† เด’เดฐเต เดชเดฐเดฟเดนเดพเดฐเด‚ เด•เดฃเตเดŸเต†เดคเตเดคเดฟ. เดฆเตˆเดตเดคเตเดคเดฟเดจเต เดจเดจเตเดฆเดฟ, เด‡เดจเตเดฑเตผเดซเต‡เดธเดฟเตฝ เดšเดฟเดคเตเดฐเต€เด•เดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต‡เด•เตเด•เดพเตพ เด•เตเดฑเดšเตเดšเต เด•เต‚เดŸเตเดคเตฝ เดšเต†เดฏเตเดฏเดพเตป เดžเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจ เด’เดฐเต API Azure DevOps-เดจเตเดฃเตเดŸเต.

เด…เดคเดฟเดจเดพเตฝ, เด†เด—เต‹เดณ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เด…เดชเตโ€Œเดกเต‡เดฑเตเดฑเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต เดžเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เด•เต‹เตพ เด†เดตเดถเตเดฏเดฎเดพเดฃเต, เด…เดคเต เดžเด™เตเด™เตพ เดชเตˆเดชเตเดชเต เดฒเตˆเดจเดฟเดจเตเดณเตเดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดจเต‡เดฐเดฟเดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเด‚. เดจเต‡เดฐเดคเตเดคเต† เดธเต‚เดšเดฟเดชเตเดชเดฟเดšเตเดšเดคเตเดชเต‹เดฒเต†, เดกเต‹เด•เตเดฏเตเดฎเต†เดจเตเดฑเต‡เดทเดจเดฟเตฝ เด’เดฐเต เดตเดพเด•เตเด•เตเดชเต‹เดฒเตเด‚ เด‡เดฒเตเดฒเดพเดคเตเดค เดชเดฐเดฟเดธเตเดฅเดฟเดคเดฟ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเดพเดฃเต เดตเดฟเดฒเดพเดธเด‚ เดŽเดŸเตเดคเตเดคเดคเต. เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด…เดต เดธเตเดตเดฏเด‚ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เดพเด‚ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ, เด…เดตเตผ เด•เดŸ เด…เดŸเดšเตเดšเดพเตฝ เดนเดพเตผเดกเตเด•เต‹เดกเต เดšเต†เดฏเตเดฏเตเด•.

$releaseurl = ('{0}{1}/_apis/release/releases/{2}?api-version=5.0' -f $($env:SYSTEM_TEAMFOUNDATIONSERVERURI), $($env:SYSTEM_TEAMPROJECTID), $($env:RELEASE_RELEASEID)  )

เดจเดฎเตเด•เตเด•เต เด•เตˆเดฎเดพเดฑเดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเดฟเดจเตเดฑเต† เดถเต‚เดจเตเดฏเดฎเดพเดฏ เดฎเต‚เดฒเตเดฏเด‚ เดžเด™เตเด™เตพ เดธเดœเตเดœเดฎเดพเด•เตเด•เดฟ, เดธเตเด•เต‹เดชเตเดชเต - เดฑเดฟเดฒเต€เดธเต เดธเดœเตเดœเดฎเดพเด•เตเด•เตเด•

Azure DevOps เดชเตˆเดชเตเดชเต เดฒเตˆเดจเตเด•เดณเดฟเตฝ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต

เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เดžเด™เตเด™เตพ เดšเดฟเดฒ เด•เตเดฐเดฎเดฐเดนเดฟเดค เดฎเต‚เดฒเตเดฏ เดœเดจเดฑเต‡เดฑเตเดฑเตผ เด‰เดฃเตเดŸเดพเด•เตเด•เตเดจเตเดจเต. เดˆ เด˜เดŸเตเดŸเดคเตเดคเดฟเดจเตเดณเตเดณเดฟเตฝ เด’เดฐเต เดตเต‡เดฐเดฟเดฏเดฌเดฟเตพ เดชเตเดฐเด–เตเดฏเดพเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เดตเดพเด•เตเดฏเด˜เดŸเดจ เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เตเด•; เดˆ เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เด…เดตเดคเดฐเดฟเดชเตเดชเดฟเดšเตเดšเต.

Azure DevOps เดชเตˆเดชเตเดชเต เดฒเตˆเดจเตเด•เดณเดฟเตฝ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต

เด…เดŸเตเดคเตเดค เด˜เดŸเตเดŸเดคเตเดคเดฟเตฝ, เดžเด™เตเด™เตพ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเดฟเดฒเต‡เด•เตเด•เต เดตเต‡เดฐเดฟเดฏเดฌเดฟเตพ เด•เตˆเดฎเดพเดฑเตเดจเตเดจเต, เด…เดคเต†, เด…เดคเต†, เด‡เดคเต เดจเต‡เดฐเดฟเดŸเตเดŸเต เดธเดพเดงเตเดฏเดฎเดฒเตเดฒ, เด…เดคเต เด’เดฐเต เด†เตผเด—เตเดฏเตเดฎเต†เดจเตเดฑเดฟเดฒเต‚เดŸเต† เด†เดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚.

Azure DevOps เดชเตˆเดชเตเดชเต เดฒเตˆเดจเตเด•เดณเดฟเตฝ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต

เดธเตโ€Œเดชเต‹เดฏเตโ€Œเดฒเดฑเดฟเดจเต เด•เต€เดดเดฟเดฒเตเดณเตเดณ เดธเตโ€Œเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต

เดชเดตเตผเดทเต†เตฝ

#Script requires stageVar variable in release variables set to Release scope

param ( [string] $expVar )
#region variables
$ReleaseVariableName = 'StageVar'
$releaseurl = ('{0}{1}/_apis/release/releases/{2}?api-version=5.0' -f $($env:SYSTEM_TEAMFOUNDATIONSERVERURI), $($env:SYSTEM_TEAMPROJECTID), $($env:RELEASE_RELEASEID)  )
#endregion


#region Get Release Definition
Write-Host "URL: $releaseurl"
$Release = Invoke-RestMethod -Uri $releaseurl -Headers @{
    Authorization = "Bearer $env:SYSTEM_ACCESSTOKEN"
}
#endregion

#region Output current Release Pipeline
Write-Output ('Release Pipeline variables output: {0}' -f $($Release.variables | ConvertTo-Json -Depth 10))
#endregion


#region Update StageVar with new value
$release.variables.($ReleaseVariableName).value = "$expVar"
#endregion

#region update release pipeline
Write-Output ('Updating Release Definition')
$json = @($release) | ConvertTo-Json -Depth 99
Invoke-RestMethod -Uri $releaseurl -Method Put -Body $json -ContentType "application/json" -Headers @{Authorization = "Bearer $env:SYSTEM_ACCESSTOKEN" }
#endregion

#region Get updated Release Definition
Write-Output ('Get updated Release Definition')
Write-Host "URL: $releaseurl"
$Release = Invoke-RestMethod -Uri $releaseurl -Headers @{
    Authorization = "Bearer $env:SYSTEM_ACCESSTOKEN"
}
#endregion

#region Output Updated Release Pipeline
Write-Output ('Updated Release Pipeline variables output: {0}' -f $($Release.variables | ConvertTo-Json -Depth 10))
#endregion

เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ

เดฌเดพเดทเต

INPUT_VAR=$1
RELEASE_VAR=$2

echo Test ID: ${INPUT_VAR}

RELEASE_URL="${SYSTEM_TEAMFOUNDATIONSERVERURI}${SYSTEM_TEAMPROJECTID}/_apis/release/releases/${RELEASE_RELEASEID}?api-version=5.0"

echo release url: $RELEASE_URL

RELEASE_JSON=$(curl -H "Authorization: Bearer $SYSTEM_ACCESSTOKEN" $RELEASE_URL)

OUTPUT=`jq ''.variables.${RELEASE_VAR}.value' = '"${INPUT_VAR}"'' <<< $RELEASE_JSON`

curl -H "Authorization: Bearer $SYSTEM_ACCESSTOKEN" -H "Content-Type: application/json" -X PUT -d "$OUTPUT" $RELEASE_URL

เดšเตเดฐเตเด•เตเด•เดคเตเดคเดฟเตฝ, เดžเด™เตเด™เดณเตเดŸเต† เดธเตโ€Œเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต myVar เดŽเดจเตเดจ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเดฟเดจเต† เด‡เตปเดชเตเดŸเตเดŸเดพเดฏเดฟ เดŽเดŸเตเด•เตเด•เตเด•เดฏเตเด‚ เดˆ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเดฟเดจเตเดฑเต† เดฎเต‚เดฒเตเดฏเด‚ stageVar-เตฝ เด‰เตพเดชเตเดชเต†เดŸเตเดคเตเดคเดพเตป API เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เด…เดŸเตเดคเตเดค เด˜เดŸเตเดŸเดคเตเดคเดฟเตฝ, เดธเดฟเดธเตเดฑเตเดฑเด‚ เดตเต‡เดฐเดฟเดฏเดฌเดฟเตพ เดธเดฟเดจเตเดฑเดพเด•เตเดธเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต, เดจเดฎเตเด•เตเด•เต เด…เดคเต เดจเต‹เด•เตเด•เดพเด‚.

Azure DevOps เดชเตˆเดชเตเดชเต เดฒเตˆเดจเตเด•เดณเดฟเตฝ เดตเต‡เดฐเดฟเดฏเดฌเดฟเดณเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต

เด‰เดฆเดพเดนเดฐเดฃเด‚ เดตเดณเดฐเต† เดฒเดณเดฟเดคเดฎเดพเดฃเต, เดŽเดจเตเดจเดพเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เดŽเดจเตเดฑเต† เดฎเตเดฎเตเดชเดคเตเดคเต‡เดคเดฟเดจเต เดชเตเดฑเดฎเต‡ เดžเด™เตเด™เตพเด•เตเด•เต เดจเดฒเตเดฒ เด…เดตเดธเดฐเด™เตเด™เตพ เดคเตเดฑเด•เตเด•เตเดจเตเดจเต เดฒเต‡เด–เดจเด™เตเด™เตพ, เดชเดฐเต€เด•เตเดทเดฃเดคเตเดคเดฟเดจเตเดฑเต† เด†เดฆเตเดฏ เด˜เดŸเตเดŸเดคเตเดคเดฟเตฝ เดจเดฎเตเด•เตเด•เต เด’เดฐเต เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดทเต€เตป เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเตป เด•เดดเดฟเดฏเตเดฎเตเดชเต‹เตพ, เด…เดคเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด•เต‚เดŸเตเดคเตฝ เด•เตƒเดคเตเดฐเดฟเดฎเด™เตเด™เตพ เดจเดŸเดคเตเดคเตเด•, เด•เต‚เดŸเดพเดคเต† เดจเดฟเดฐเดตเดงเดฟ เดธเดฎเดพเดจเตเดคเดฐเดฎเดพเดฏเดฟ. เด…เดตเดธเดพเดจ เด˜เดŸเตเดŸเด‚ เด…เดคเดฟเดจเต† เดจเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเด• เดŽเดจเตเดจเดคเดพเดฃเต. เด‡เดชเตเดชเต‹เตพ เดžเด™เตเด™เตพ เดชเตเดคเดฟเดฏ เดตเต†เตผเดšเตเดตเตฝ เดฎเต†เดทเต€เดจเตเด•เดณเดฟเตฝ เด“เดฐเต‹ เดคเดตเดฃเดฏเตเด‚ เด‰เตฝเดชเตเดชเดจเตเดจเดคเตเดคเดฟเดจเตเดฑเต† เด“เดŸเตเดŸเต‹เดŸเต†เดธเตเดฑเตเดฑเตเด•เตพ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต. เด…เดตเตผ เดเด•เดฆเต‡เดถเด‚ 10 เดฎเดฟเดจเดฟเดฑเตเดฑเต เดœเต€เดตเดฟเด•เตเด•เตเดจเตเดจเดคเต เด•เดฃเด•เตเด•เดฟเดฒเต†เดŸเตเด•เตเด•เตเดฎเตเดชเต‹เตพ, เด‡เดคเดฟเดจเต เด’เดฐเต เดชเตˆเดธ เดšเดฟเดฒเดตเดพเด•เตเด‚.

เด…เดŸเตเดคเตเดค เดฒเต‡เด–เดจเดคเตเดคเดฟเตฝ, เด†เดตเดถเตเดฏเดฎเต†เด™เตเด•เดฟเตฝ, เดžเดพเตป YAML เดชเตˆเดชเตเดชเตเดฒเตˆเดจเตเด•เดณเต† เด•เตเดฑเดฟเดšเตเดšเต เดธเด‚เดธเดพเดฐเดฟเด•เตเด•เตเด‚; เดˆเดฏเดฟเดŸเต†เดฏเดพเดฏเดฟ เด…เดตเดฟเดŸเต† เดฐเดธเด•เดฐเดฎเดพเดฏ เด’เดฐเตเดชเดพเดŸเต เด•เดฃเตเดŸเตเดชเดฟเดŸเดฟเดคเตเดคเด™เตเด™เตพ เด‰เดฃเตเดŸเดพเดฏเดฟเดŸเตเดŸเตเดฃเตเดŸเต.

เด…เดตเดฒเด‚เดฌเด‚: www.habr.com

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•