private createRequestObject()

in services/self-service/src/main/resources/webapp/src/app/resources/computational/computational-resource-create-dialog/computational-resource-create.model.ts [45:116]


  private createRequestObject(parameters, image, env, provider, config, gpu?) {
    if (provider === 'aws' && image.image === 'docker.datalab-dataengine-service') {
      return {
        name: parameters.cluster_alias_name,
        emr_instance_count: parameters.instance_number,
        emr_master_instance_type: parameters.shape_master,
        emr_slave_instance_type: parameters.shape_slave,
        emr_version: parameters.version,
        notebook_name: env.name,
        image: image.image,
        template_name: image.template_name,
        emr_slave_instance_spot: parameters.emr_slave_instance_spot,
        emr_slave_instance_spot_pct_price: parameters.instance_price,
        config: config,
        project: env.project,
        custom_tag: parameters.custom_tag
      };
    } else if (provider === 'gcp' && image.image === 'docker.datalab-dataengine-service') {
      return {
        template_name: image.template_name,
        image: image.image,
        notebook_name: env.name,
        name: parameters.cluster_alias_name,
        dataproc_master_count: 1,
        dataproc_slave_count: (parameters.instance_number - 1),
        dataproc_preemptible_count: parameters.preemptible_instance_number,
        dataproc_master_instance_type: parameters.shape_master,
        dataproc_slave_instance_type: parameters.shape_slave,
        dataproc_version: parameters.version,
        config: config,
        project: env.project,
        custom_tag: parameters.custom_tag,
        master_gpu_type: gpu ? parameters.master_GPU_type : null,
        slave_gpu_type: gpu ? parameters.slave_GPU_type : null,
        master_gpu_count: gpu ? parameters.master_GPU_count : null,
        slave_gpu_count: gpu ? parameters.slave_GPU_count : null,
        gpu_enabled: gpu
      };
    } else if (provider === 'azure' && image.template_name === 'HDInsight cluster') {
      return {
        template_name: image.template_name,
        image: image.image,
        name: parameters.cluster_alias_name,
        project: env.project,
        custom_tag: parameters.custom_tag,
        notebook_name: env.name,
        config: config,
        hdinsight_master_instance_type: parameters.shape_master,
        hdinsight_slave_instance_type: parameters.shape_slave,
        hdinsight_version: parameters.version,
        hdinsight_instance_count: parameters.instance_number ,
      };
    } else {
      return {
        name: parameters.cluster_alias_name,
        dataengine_instance_count: parameters.instance_number,
        master_instance_shape: parameters.shape_master,
        slave_instance_shape: parameters.shape_slave,
        gpu_enabled: gpu,
        master_gpu_type: gpu ? parameters.master_GPU_type : null,
        slave_gpu_type: gpu ? parameters.slave_GPU_type : null,
        master_gpu_count: gpu ? parameters.master_GPU_count : null,
        slave_gpu_count: gpu ? parameters.slave_GPU_count : null,
        notebook_name: env.name,
        image: image.image,
        template_name: image.template_name,
        config: config,
        project: env.project,
        custom_tag: parameters.custom_tag
      };
    }
  }