origen是否支持93k multi_bin功能?

时间:2017-09-15 16:14:59

标签: origen-sdk

在测试流程中生成测试的示例创建了stop_bins。但是,没有关于如何生成93k multi_bin节点的示例。当前的origen-sdk中是否存在此功能?

输出节点在93k .tf文件中看起来像这样

    "GatewayLabAutoScalingGroup": {
  "Metadata": {
    "AWS::CloudFormation::Init": {
      "config": {
        "commands": {
          "a_install_pip": {
            "command": "pip install requests boto3"
          },
          "c_restart_cron": {
            "command": "service crond restart"
          },
          "d_restart_cfn_hup": {
            "command": "service cfn-hup restart"
          }
        },
        "files": {
          "/etc/cfn/cfn-hup.conf": {
            "content": {
              "Fn::Join": [
                "",
                [
                  "[main]\nstack=",
                  {
                    "Ref": "AWS::StackName"
                  },
                  "\nregion=",
                  {
                    "Ref": "AWS::Region"
                  },
                  "\nverbose=true\ninterval=1\n"
                ]
              ]
            },
            "group": "root",
            "mode": "000644",
            "owner": "root"
          },
          "/usr/local/sbin/join_ad_script.sh": {
            "content": {
              "Fn::Join": [
                "",
                [
                  "sudo yum -y update\nsudo yum -y install sssd realmd krb5-workstation\nsudo realm leave\n\nDOMAIN=\"",
                  {
                    "Ref": "SimpleADDomain"
                  },
                  "\"\n\ncat <<EOF > /etc/resolv.conf\nnameserver ",
                  {
                    "Fn::Select": [
                      0,
                      {
                        "Fn::GetAtt": [
                          "WorkspacesSimplead",
                          "DnsIpAddresses"
                        ]
                      }
                    ]
                  },
                  "\nnameserver ",
                  {
                    "Fn::Select": [
                      1,
                      {
                        "Fn::GetAtt": [
                          "WorkspacesSimplead",
                          "DnsIpAddresses"
                        ]
                      }
                    ]
                  },
                  "\nEOF\n\n# empty all current sssd cache\nsss_cache -E\n\necho ",
                  {
                    "Ref": "SimpleADPassword"
                  },
                  " | sudo realm join -U Administrator@${DOMAIN^^} ${DOMAIN^^} --verbose\nsudo sed -re 's/^(PasswordAuthentication)([[:space:]]+)no/\\1\\2yes/' -i.`date -I` /etc/ssh/sshd_config\necho \"enumerate=true\" >> /etc/sssd/sssd.conf\nsudo service sssd restart\nsudo service sshd restart\n\n# empty all current sssd cache\nsss_cache -E\n"
                ]
              ]
            },
            "group": "root",
            "mode": "000755",
            "owner": "root"
          }
        }
      }
    }
  },
  "Properties": {
    "AvailabilityZones": [
      {
        "Fn::Select": [
          0,
          {
            "Fn::GetAZs": ""
          }
        ]
      }
    ],
    "HealthCheckGracePeriod": 300,
    "HealthCheckType": "EC2",
    "LaunchConfigurationName": {
      "Ref": "GatewayLabLaunchConfiguration"
    },
    "LoadBalancerNames": [

    ],
    "MaxSize": 2,
    "MinSize": 1,
    "Tags": [
      {
        "Key": "Name",
        "PropagateAtLaunch": true,
        "Value": "hub-autoscaling"
        }
      }
    ],
    "VPCZoneIdentifier": [
      {
        "Ref": "EC2SubnetSubnet1"
      }
    ]
  },
  "Type": "AWS::AutoScaling::AutoScalingGroup",
  "UpdatePolicy": {
    "AutoScalingRollingUpdate": {
      "MaxBatchSize": 1,
      "MinInstancesInService": 1,
      "PauseTime": "PT60S"
    }
  }
}

1 个答案:

答案 0 :(得分:2)

目前没有直接支持创建multi_bin节点,但我确实希望它会作为结果of this effort to add support for limits tables添加。 在此期间,可以渲染任何文本,这可以用来生成你想要的东西。

要生成上述示例,您可以执行以下操作:

if_flag :flag do
  render 'multi_bin;'
end

这也适用于在线条件,这是相同的:

render 'multi_bin;', if_flag: :flag

此外,on_passon_fail将接受渲染选项:

 func :my_test, on_fail: { render: 'multi_bin;' }

显然,这会创建一些无法转换为其他测试人员平台的东西,因此建议谨慎使用render,并且只在真正需要时才能使用jail卡。

另请注意,要使这些示例正常工作,您至少需要OrigenTesters 0.11.1。

相关问题