in cli_tools/gce_onestep_image_import/onestep_importer/utils.go [101:142]
func runImageImport(args *OneStepImportArguments) error {
imageImportPath := path.ToWorkingDir("gce_vm_image_import", args.ExecutablePath)
imageImportArgs := []string{
fmt.Sprintf("-image_name=%v", args.ImageName),
fmt.Sprintf("-client_id=%v", args.ClientID),
fmt.Sprintf("-client_version=%v", args.ClientVersion),
fmt.Sprintf("-os=%v", args.OS),
fmt.Sprintf("-source_file=%v", args.SourceFile),
fmt.Sprintf("-no_guest_environment=%v", args.NoGuestEnvironment),
fmt.Sprintf("-family=%v", args.Family),
fmt.Sprintf("-description=%v", args.Description),
fmt.Sprintf("-network=%v", args.Network),
fmt.Sprintf("-subnet=%v", args.Subnet),
fmt.Sprintf("-zone=%v", args.Zone),
fmt.Sprintf("-timeout=%v", args.Timeout),
fmt.Sprintf("-project=%v", *args.ProjectPtr),
fmt.Sprintf("-scratch_bucket_gcs_path=%v", args.ScratchBucketGcsPath),
fmt.Sprintf("-oauth=%v", args.Oauth),
fmt.Sprintf("-compute_endpoint_override=%v", args.ComputeEndpoint),
fmt.Sprintf("-compute_service_account=%v", args.ComputeServiceAccount),
fmt.Sprintf("-disable_gcs_logging=%v", args.GcsLogsDisabled),
fmt.Sprintf("-disable_cloud_logging=%v", args.CloudLogsDisabled),
fmt.Sprintf("-disable_stdout_logging=%v", args.StdoutLogsDisabled),
fmt.Sprintf("-no_external_ip=%v", args.NoExternalIP),
fmt.Sprintf("-enable_nested_virtualization=%v", args.NestedVirtualizationEnabled),
fmt.Sprintf("-labels=%v", flags.KeyValueString(args.Labels).String()),
fmt.Sprintf("-storage_location=%v", args.StorageLocation),
}
if args.WorkerMachineSeries != nil && len(args.WorkerMachineSeries) > 0 {
for _, wms := range args.WorkerMachineSeries {
imageImportArgs = append(imageImportArgs, fmt.Sprintf("-worker_machine_series=%v", wms))
}
}
err := runCmd(imageImportPath, imageImportArgs)
if err != nil {
return daisy.Errf("failed to import image: %v", err)
}
return nil
}