func workspacePreRun()

in cobra/controller/workspace.go [73:114]


func workspacePreRun(cmd *cobra.Command, args []string) error {
	if err := helper.ValidateCmdArgs(cmd, args, "workspace"); err != nil {
		return err
	}

	fArg := args[0]
	switch fArg {

	case "list":
		// skipping...
		return nil

	case "create",
		"read",
		"update",
		"delete",
		"find-by-name",
		"remove-vcs-connection":

		if err := helper.ValidateCmdArgAndFlag(cmd, args, "workspace", fArg, "name"); err != nil {
			return err
		}

	case "read-by-id",
		"update-by-id",
		"delete-by-id",
		"remove-vcs-connection-by-id",
		"lock",
		"unlock",
		"force-unlock",
		"assign-ssh-key",
		"unassign-ssh-key":
		if err := helper.ValidateCmdArgAndFlag(cmd, args, "workspace", fArg, "id"); err != nil {
			return err
		}

	default:
		return fmt.Errorf("unknown argument")
	}

	return nil
}