gpt4 book ai didi

amazon-web-services - AWS CodeBuild - 如何在 buildspec.yml 中分配动态变量值?

转载 作者:行者123 更新时间:2023-12-04 15:55:46 24 4
gpt4 key购买 nike

我想根据生成的时间为我的 CodeBuild 生成的工件命名。

我尝试了以下方法,但是当工件上传到 S3 时,名称实际上是表达式,而不是我设置的表达式的评估值。

是否可以将 env:variables 设置为动态值,如果可以,如何设置?如果没有,是否有更好的方法来完成我在这里尝试的操作?

version: 0.2

env:
variables:
ARTIFACT_NAME: '[string]::Format("v{0}.zip", (Get-Date).ToString("yyyyMMdd-HHmmss"))'

... build commands ...

artifacts:
Name:$Env:ARTIFACT_NAME

更新:我根据下面的建议将工件部分调整为以下内容并完全省略了变量,但这样做时继续出现错误。

artifacts:
files:
- '**/*'
discard-paths: no
base-directory: publish/release
name: version-$(date +%Y%m%d-%H%M%S).zip

错误结果:

[Container] 2018/08/10 15:59:26 Updating artifact name as  Get-Date : Cannot bind parameter 'Date'. 
Cannot convert value "+%Y%m%d-%H%M%S" to type "System.DateTime".
Error: "String was not recognized as a valid DateTime."
At C:\codebuild\tmp\script.ps1:5 char:21
+ echo version-$(date +%Y%m%d-%H%M%S).zip
+ ~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [Get-Date], ParameterBindingException
+ FullyQualifiedErrorId : CannotConvertArgumentNoMessage,Microsoft.PowerShell.Commands.GetDateCommand

version-.zip

最佳答案

根据 docs您可以使用以下语法实现:

version: 0.2         
phases:
build:
commands:
- rspec HelloWorld_spec.rb
artifacts:
files:
- '**/*'
name: myname-$(date +%Y-%m-%d) ```

关于amazon-web-services - AWS CodeBuild - 如何在 buildspec.yml 中分配动态变量值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51789442/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com