【问题标题】:How can i set a Azure DevOps Pipeline Varible which contains the date in this Format: 25.07.2020如何设置包含此格式日期的 Azure DevOps Pipeline 变量:25.07.2020
【发布时间】:2020-10-30 03:12:13
【问题描述】:

我没有使用yaml,因为我的公司使用TFVC,所以我需要经典的方式。

使用 $[pipeline.startTime] 我得到了开始时间,但现在我需要以这种方式格式化它:dd.MM.yyyy

VSO(TFS) - get current date time as variable 中的 powershellscript 帮助了我,但直接在变量中设置日期会更简洁

【问题讨论】:

  • 您是否尝试在管道变量上设置日期,并且您说您设置的格式是您提供的格式?你已经看过这个了吗?使用 ParseExact。 stackoverflow.com/questions/27741810/…
  • 这个问题怎么样?下面的答案是否解决了您的问题,如果没有,请告诉我有关此问题的最新信息吗?

标签: azure-devops azure-pipelines azure-pipelines-build-task azure-devops-server-2019


【解决方案1】:

如何设置 Azure DevOps Pipeline 变量,其中包含以下格式的日期:25.07.2020

由于您使用的是经典方式,构建管道不支持嵌套变量。所以,我们不能使用$(Get-Date -Format Date:MMddyy)这样的变量来设置日期时间。

我们只能将变量设置为:

$[format('{0:ddMMyyyy}', pipeline.startTime)]

通过这种方式,我们可以获得值10072020,而不是没有.10.07.2020。而且我无法在ddMMyyyy 之间添加任何间隔,Azure 管道不支持它。

此外,作为解决方法,我们可以在 选项 选项卡中定义内部版本号格式,其值为 $(DayOfMonth).$(Month).$(Year:yyyy)

那么我们可以直接使用变量$(Build.BuildNumber)来获取日期时间:

希望这会有所帮助。

【讨论】:

    【解决方案2】:

    您可以使用表达式定义 Azure DevOps 管道变量:https://docs.microsoft.com/en-us/azure/devops/pipelines/process/expressions?view=azure-devops 它支持 .NET 自定义日期和时间格式说明符:

    $[format('{0:dd}.{0:MM}.{0:yyyy}', pipeline.startTime)]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2021-05-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-09
      • 2019-06-16
      相关资源
      最近更新 更多