code: func NewCmdCreateRole(f cmdutil.Factory, ioStreams genericclioptions.IOStreams) *cobra.Command {
  	o := NewCreateRoleOptions(ioStreams)
  
  	cmd := &cobra.Command{
  		Use:                   "role NAME --verb=verb --resource=resource.group/subresource [--resource-name=resourcename] [--dry-run]",
  		DisableFlagsInUseLine: true,
  		Short:                 roleLong,
  		Long:                  roleLong,
  		Example:               roleExample,
  		Run: func(cmd *cobra.Command, args []string) {
  			cmdutil.CheckErr(o.Complete(f, cmd, args))
  			cmdutil.CheckErr(o.Validate())
  			cmdutil.CheckErr(o.RunCreateRole())
  		},
  	}
  
  	o.PrintFlags.AddFlags(cmd)
  
  	cmdutil.AddApplyAnnotationFlags(cmd)
  	cmdutil.AddValidateFlags(cmd)
  	cmdutil.AddDryRunFlag(cmd)
  	cmd.Flags().StringSliceVar(&o.Verbs, "verb", o.Verbs, "Verb that applies to the resources contained in the rule")
  	cmd.Flags().StringSlice("resource", []string{}, "Resource that the rule applies to")
  	cmd.Flags().StringArrayVar(&o.ResourceNames, "resource-name", o.ResourceNames, "Resource in the white list that the rule applies to, repeat this flag for multiple items")
  
  	return cmd
  }
docs: // NewCmdCreateRole returnns an initialized Command instance for 'create role' sub command