class TencentCloud::Tsf::V20180326::ContainerGroupDeploy

def deserialize(params)

def deserialize(params)
  @GroupId = params['GroupId']
  @GroupName = params['GroupName']
  @InstanceNum = params['InstanceNum']
  @CurrentNum = params['CurrentNum']
  @Server = params['Server']
  @Reponame = params['Reponame']
  @TagName = params['TagName']
  @CpuRequest = params['CpuRequest']
  @CpuLimit = params['CpuLimit']
  @MemRequest = params['MemRequest']
  @MemLimit = params['MemLimit']
  @AccessType = params['AccessType']
  unless params['ProtocolPorts'].nil?
    @ProtocolPorts = []
    params['ProtocolPorts'].each do |i|
      protocolport_tmp = ProtocolPort.new
      protocolport_tmp.deserialize(i)
      @ProtocolPorts << protocolport_tmp
    end
  end
  @UpdateType = params['UpdateType']
  @UpdateIvl = params['UpdateIvl']
  @JvmOpts = params['JvmOpts']
  @SubnetId = params['SubnetId']
  @AgentCpuRequest = params['AgentCpuRequest']
  @AgentCpuLimit = params['AgentCpuLimit']
  @AgentMemRequest = params['AgentMemRequest']
  @AgentMemLimit = params['AgentMemLimit']
  @IstioCpuRequest = params['IstioCpuRequest']
  @IstioCpuLimit = params['IstioCpuLimit']
  @IstioMemRequest = params['IstioMemRequest']
  @IstioMemLimit = params['IstioMemLimit']
  unless params['Envs'].nil?
    @Envs = []
    params['Envs'].each do |i|
      env_tmp = Env.new
      env_tmp.deserialize(i)
      @Envs << env_tmp
    end
  end
  unless params['HealthCheckSettings'].nil?
    @HealthCheckSettings = HealthCheckSettings.new
    @HealthCheckSettings.deserialize(params['HealthCheckSettings'])
  end
  @DeployAgent = params['DeployAgent']
  @Alias = params['Alias']
  @DisableService = params['DisableService']
  @HeadlessService = params['HeadlessService']
  unless params['TcrRepoInfo'].nil?
    @TcrRepoInfo = TcrRepoInfo.new
    @TcrRepoInfo.deserialize(params['TcrRepoInfo'])
  end
  unless params['VolumeInfos'].nil?
    @VolumeInfos = []
    params['VolumeInfos'].each do |i|
      volumeinfo_tmp = VolumeInfo.new
      volumeinfo_tmp.deserialize(i)
      @VolumeInfos << volumeinfo_tmp
    end
  end
  unless params['VolumeMountInfos'].nil?
    @VolumeMountInfos = []
    params['VolumeMountInfos'].each do |i|
      volumemountinfo_tmp = VolumeMountInfo.new
      volumemountinfo_tmp.deserialize(i)
      @VolumeMountInfos << volumemountinfo_tmp
    end
  end
  @KubeInjectEnable = params['KubeInjectEnable']
  @RepoType = params['RepoType']
  unless params['WarmupSetting'].nil?
    @WarmupSetting = WarmupSetting.new
    @WarmupSetting.deserialize(params['WarmupSetting'])
  end
  unless params['GatewayConfig'].nil?
    @GatewayConfig = GatewayConfig.new
    @GatewayConfig.deserialize(params['GatewayConfig'])
  end
  @ContainerName = params['ContainerName']
  unless params['AdditionalContainerList'].nil?
    @AdditionalContainerList = []
    params['AdditionalContainerList'].each do |i|
      groupcontainerinfo_tmp = GroupContainerInfo.new
      groupcontainerinfo_tmp.deserialize(i)
      @AdditionalContainerList << groupcontainerinfo_tmp
    end
  end
  unless params['InternalContainerList'].nil?
    @InternalContainerList = []
    params['InternalContainerList'].each do |i|
      groupcontainerinfo_tmp = GroupContainerInfo.new
      groupcontainerinfo_tmp.deserialize(i)
      @InternalContainerList << groupcontainerinfo_tmp
    end
  end
end