Sha256: 51f7652e2be9d95cd0daea3d3e02a95eb4acf22e118663e13438bca7a8f487e9

Contents?: true

Size: 1.35 KB

Versions: 13

Compression:

Stored size: 1.35 KB

Contents

module PDK::CLI
  @module_generate_cmd = @module_cmd.define_command do
    name 'generate'
    usage _('generate [options] <module_name>')
    summary _('This command is now \'pdk new module\'.')

    PDK::CLI.template_url_option(self)
    PDK::CLI.template_ref_option(self)
    PDK::CLI.skip_interview_option(self)

    run do |opts, args, _cmd|
      require 'pdk/generate/module'
      require 'tty/prompt'

      module_name = args[0]

      if module_name.nil? || module_name.empty?
        puts command.help
        exit 1
      end

      PDK::CLI::Util.validate_template_opts(opts)

      PDK.logger.info(_("New modules are created using the 'pdk new module' command."))
      prompt = TTY::Prompt.new(help_color: :cyan)
      redirect = PDK::CLI::Util::CommandRedirector.new(prompt)
      redirect.target_command('pdk new module')
      answer = redirect.run

      if answer
        module_name_parts = module_name.split('-', 2)
        if module_name_parts.size > 1
          opts[:username] = module_name_parts[0]
          opts[:module_name] = module_name_parts[1]
        else
          opts[:module_name] = module_name
        end
        opts[:target_dir] = opts[:module_name]

        PDK.logger.info(_('Creating new module: %{modname}') % { modname: module_name })
        PDK::Generate::Module.invoke(opts)
      else
        exit 1
      end
    end
  end
end

Version data entries

13 entries across 13 versions & 1 rubygems

Version Path
pdk-2.6.1 lib/pdk/cli/module/generate.rb
pdk-2.6.0 lib/pdk/cli/module/generate.rb
pdk-2.5.0 lib/pdk/cli/module/generate.rb
pdk-2.3.0 lib/pdk/cli/module/generate.rb
pdk-2.2.0 lib/pdk/cli/module/generate.rb
pdk-2.1.1 lib/pdk/cli/module/generate.rb
pdk-2.1.0 lib/pdk/cli/module/generate.rb
pdk-2.0.0 lib/pdk/cli/module/generate.rb
pdk-1.18.1 lib/pdk/cli/module/generate.rb
pdk-1.18.0 lib/pdk/cli/module/generate.rb
pdk-1.17.0 lib/pdk/cli/module/generate.rb
pdk-1.16.0 lib/pdk/cli/module/generate.rb
pdk-1.15.0 lib/pdk/cli/module/generate.rb