    # File lib/chef/knife/cookbook_create.rb, line 58
          def run
            self.config = Chef::Config.merge!(config)
            if @name_args.length < 1
              show_usage
              ui.fatal("You must specify a cookbook name")
              exit 1
            end

            if default_cookbook_path_empty? && parameter_empty?(config[:cookbook_path])
              raise ArgumentError, "Default cookbook_path is not specified in the knife.rb config file, and a value to -o is not provided. Nowhere to write the new cookbook to."
            end

            cookbook_path = File.expand_path(Array(config[:cookbook_path]).first)
            cookbook_name = @name_args.first
            copyright = config[:cookbook_copyright] || "YOUR_COMPANY_NAME"
            email = config[:cookbook_email] || "YOUR_EMAIL"
            license = ((config[:cookbook_license] != "false") && config[:cookbook_license]) || "none"
            readme_format = ((config[:readme_format] != "false") && config[:readme_format]) || "md"
            create_cookbook(cookbook_path,cookbook_name, copyright, license)
            create_readme(cookbook_path,cookbook_name,readme_format)
            create_metadata(cookbook_path,cookbook_name, copyright, email, license,readme_format)
          end