func()

in cli_tools/gce_onestep_image_import/onestep_importer/aws_args.go [115:139]


func (args *awsImportArguments) validate() error {
	if err := validation.ValidateStringFlagNotEmpty(args.accessKeyID, awsAccessKeyIDFlag); err != nil {
		return err
	}
	if err := validation.ValidateStringFlagNotEmpty(args.secretAccessKey, awsSecretAccessKeyFlag); err != nil {
		return err
	}
	if err := validation.ValidateStringFlagNotEmpty(args.region, awsRegionFlag); err != nil {
		return err
	}
	if err := validation.ValidateStringFlagNotEmpty(args.sessionToken, awsSessionTokenFlag); err != nil {
		return err
	}

	needsExport := args.amiID != "" && args.exportLocation != "" && args.sourceFilePath == ""
	isResumeExported := args.amiID == "" && args.exportLocation == "" && args.sourceFilePath != ""

	if !(needsExport || isResumeExported) {
		return daisy.Errf("specify -%v to import from "+
			"exported image file, or both -%v and -%v to "+
			"import from AMI", awsSourceAMIFilePathFlag, awsAMIIDFlag, awsAMIExportLocationFlag)
	}

	return nil
}