【问题标题】:Condition (if, else, else if) in YAMLYAML 中的条件(if、else、else if)
【发布时间】:2018-08-23 08:51:48
【问题描述】:

我使用 hautelook/AliceBundle 在 YAML 中创建虚假数据,但我希望数据更加一致。

我想要:

gender: <randomElement(['Homme', 'Femme'])>
if $gender == 'Homme'
    title: 'Monsieur'
else if $gender == 'Femme'
    title: 'Madame'

我知道在 YAML 中不能直接使用,但我不知道要使用哪个插件...以及如何使用。

我的项目中使用的工具/语言(Symfony、hautelook/AliceBundle、PHP、YAML)

【问题讨论】:

  • 正如您已经表明在 YAML 中无法做到这一点,使用 yaml 标签是不合适的,因为它只是其他工具使用的格式。您还应该注意,PHP 的 YAML 解析器是一个相当差/受限制的解析器。

标签: conditional-statements nelmio-alice


【解决方案1】:

你不能那样做。 YAML 是数据序列化语言,不是编程语言。

【讨论】:

    【解决方案2】:
    - task: TerraformTaskV1@0
    ${{ if eq(parameters.destroy, false) }}:
      displayName: Terraform Apply
    ${{ if eq(parameters.destroy, true) }}:
      displayName: Terraform Destroy
    inputs:
      provider: 'azurerm'
      ${{ if eq(parameters.destroy, false) }}:
        command: 'apply'
      ${{ if eq(parameters.destroy, true) }}:
        command: 'destroy'
      workingDirectory: "$(System.ArtifactsDirectory)/${{ parameters.environment_name }}${{ parameters.root_directory }}"
      ${{ if eq(parameters.destroy, false) }}:
        commandOptions: "$(System.ArtifactsDirectory)/${{ parameters.environment_name }}${{ parameters.root_directory }}/plan.tfplan"
      ${{ if eq(parameters.destroy, true) }}:
        commandOptions: "--var-file=$(System.ArtifactsDirectory)/${{ parameters.environment_name }}${{ parameters.tfvarFile }}"
      environmentServiceNameAzureRM: ${{ parameters.service_connection_name }}
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-07-01
      • 2021-03-07
      • 1970-01-01
      • 2019-04-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多