makit 0.0.140 → 0.0.141
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/README.md +41 -41
- data/exe/makit +5 -5
- data/lib/makit/apache.rb +28 -28
- data/lib/makit/auto.rb +48 -48
- data/lib/makit/cli/build_commands.rb +500 -500
- data/lib/makit/cli/generators/base_generator.rb +74 -74
- data/lib/makit/cli/generators/dotnet_generator.rb +50 -50
- data/lib/makit/cli/generators/generator_factory.rb +49 -49
- data/lib/makit/cli/generators/node_generator.rb +50 -50
- data/lib/makit/cli/generators/ruby_generator.rb +77 -77
- data/lib/makit/cli/generators/rust_generator.rb +50 -50
- data/lib/makit/cli/generators/templates/dotnet_templates.rb +167 -167
- data/lib/makit/cli/generators/templates/node_templates.rb +161 -161
- data/lib/makit/cli/generators/templates/ruby/gemfile.rb +26 -26
- data/lib/makit/cli/generators/templates/ruby/gemspec.rb +40 -40
- data/lib/makit/cli/generators/templates/ruby/main_lib.rb +33 -33
- data/lib/makit/cli/generators/templates/ruby/rakefile.rb +35 -35
- data/lib/makit/cli/generators/templates/ruby/readme.rb +63 -63
- data/lib/makit/cli/generators/templates/ruby/test.rb +39 -39
- data/lib/makit/cli/generators/templates/ruby/test_helper.rb +29 -29
- data/lib/makit/cli/generators/templates/ruby/version.rb +29 -29
- data/lib/makit/cli/generators/templates/rust_templates.rb +128 -128
- data/lib/makit/cli/main.rb +69 -69
- data/lib/makit/cli/project_commands.rb +868 -868
- data/lib/makit/cli/repository_commands.rb +661 -661
- data/lib/makit/cli/strategy_commands.rb +203 -203
- data/lib/makit/cli/utility_commands.rb +521 -521
- data/lib/makit/commands/factory.rb +359 -359
- data/lib/makit/commands/middleware/base.rb +73 -73
- data/lib/makit/commands/middleware/cache.rb +248 -248
- data/lib/makit/commands/middleware/command_logger.rb +312 -312
- data/lib/makit/commands/middleware/validator.rb +269 -269
- data/lib/makit/commands/request.rb +316 -316
- data/lib/makit/commands/result.rb +323 -323
- data/lib/makit/commands/runner.rb +388 -385
- data/lib/makit/commands/strategies/base.rb +171 -171
- data/lib/makit/commands/strategies/child_process.rb +165 -165
- data/lib/makit/commands/strategies/factory.rb +136 -136
- data/lib/makit/commands/strategies/synchronous.rb +139 -139
- data/lib/makit/commands.rb +50 -50
- data/lib/makit/configuration/dotnet_project.rb +12 -12
- data/lib/makit/configuration/gitlab_helper.rb +58 -58
- data/lib/makit/configuration/project.rb +168 -168
- data/lib/makit/configuration/rakefile_helper.rb +43 -43
- data/lib/makit/configuration/step.rb +34 -34
- data/lib/makit/configuration/timeout.rb +74 -74
- data/lib/makit/configuration.rb +15 -15
- data/lib/makit/content/default_gitignore.rb +7 -7
- data/lib/makit/content/default_gitignore.txt +225 -225
- data/lib/makit/content/default_rakefile.rb +13 -13
- data/lib/makit/content/gem_rakefile.rb +16 -16
- data/lib/makit/context.rb +1 -1
- data/lib/makit/data.rb +49 -49
- data/lib/makit/directories.rb +140 -140
- data/lib/makit/directory.rb +262 -262
- data/lib/makit/docs/files.rb +89 -89
- data/lib/makit/docs/rake.rb +102 -102
- data/lib/makit/dotnet/cli.rb +69 -69
- data/lib/makit/dotnet/project.rb +217 -217
- data/lib/makit/dotnet/solution.rb +38 -38
- data/lib/makit/dotnet/solution_classlib.rb +239 -239
- data/lib/makit/dotnet/solution_console.rb +264 -264
- data/lib/makit/dotnet/solution_maui.rb +354 -354
- data/lib/makit/dotnet/solution_wasm.rb +275 -275
- data/lib/makit/dotnet/solution_wpf.rb +304 -304
- data/lib/makit/dotnet.rb +102 -102
- data/lib/makit/email.rb +90 -90
- data/lib/makit/environment.rb +142 -142
- data/lib/makit/examples/runner.rb +370 -370
- data/lib/makit/exceptions.rb +45 -45
- data/lib/makit/fileinfo.rb +24 -24
- data/lib/makit/files.rb +43 -43
- data/lib/makit/gems.rb +40 -40
- data/lib/makit/git/cli.rb +54 -54
- data/lib/makit/git/repository.rb +90 -90
- data/lib/makit/git.rb +98 -98
- data/lib/makit/gitlab_runner.rb +59 -59
- data/lib/makit/humanize.rb +137 -137
- data/lib/makit/indexer.rb +47 -47
- data/lib/makit/logging/configuration.rb +308 -308
- data/lib/makit/logging/format_registry.rb +84 -84
- data/lib/makit/logging/formatters/base.rb +39 -39
- data/lib/makit/logging/formatters/console_formatter.rb +140 -140
- data/lib/makit/logging/formatters/json_formatter.rb +65 -65
- data/lib/makit/logging/formatters/plain_text_formatter.rb +71 -71
- data/lib/makit/logging/formatters/text_formatter.rb +64 -64
- data/lib/makit/logging/log_request.rb +119 -119
- data/lib/makit/logging/logger.rb +199 -199
- data/lib/makit/logging/sinks/base.rb +91 -91
- data/lib/makit/logging/sinks/console.rb +72 -72
- data/lib/makit/logging/sinks/file_sink.rb +92 -92
- data/lib/makit/logging/sinks/structured.rb +123 -123
- data/lib/makit/logging/sinks/unified_file_sink.rb +296 -296
- data/lib/makit/logging.rb +565 -565
- data/lib/makit/markdown.rb +75 -75
- data/lib/makit/mp/basic_object_mp.rb +17 -17
- data/lib/makit/mp/command_mp.rb +13 -13
- data/lib/makit/mp/command_request.mp.rb +17 -17
- data/lib/makit/mp/project_mp.rb +199 -199
- data/lib/makit/mp/string_mp.rb +199 -191
- data/lib/makit/nuget.rb +74 -74
- data/lib/makit/port.rb +32 -32
- data/lib/makit/process.rb +163 -163
- data/lib/makit/protoc.rb +107 -107
- data/lib/makit/rake/cli.rb +196 -196
- data/lib/makit/rake/trace_controller.rb +173 -173
- data/lib/makit/rake.rb +80 -80
- data/lib/makit/ruby/cli.rb +185 -185
- data/lib/makit/ruby.rb +25 -25
- data/lib/makit/secrets.rb +51 -51
- data/lib/makit/serializer.rb +130 -130
- data/lib/makit/services/builder.rb +186 -186
- data/lib/makit/services/error_handler.rb +226 -226
- data/lib/makit/services/repository_manager.rb +231 -231
- data/lib/makit/services/validator.rb +112 -112
- data/lib/makit/setup/classlib.rb +101 -101
- data/lib/makit/setup/gem.rb +268 -268
- data/lib/makit/setup/razorclasslib.rb +101 -101
- data/lib/makit/setup/runner.rb +54 -54
- data/lib/makit/setup.rb +5 -5
- data/lib/makit/show.rb +110 -110
- data/lib/makit/storage.rb +126 -126
- data/lib/makit/symbols.rb +170 -170
- data/lib/makit/task_info.rb +130 -130
- data/lib/makit/tasks/at_exit.rb +15 -15
- data/lib/makit/tasks/build.rb +22 -22
- data/lib/makit/tasks/clean.rb +13 -13
- data/lib/makit/tasks/configure.rb +10 -10
- data/lib/makit/tasks/format.rb +10 -10
- data/lib/makit/tasks/hook_manager.rb +443 -443
- data/lib/makit/tasks/init.rb +49 -49
- data/lib/makit/tasks/integrate.rb +29 -29
- data/lib/makit/tasks/pull_incoming.rb +13 -13
- data/lib/makit/tasks/setup.rb +13 -13
- data/lib/makit/tasks/sync.rb +17 -17
- data/lib/makit/tasks/tag.rb +16 -16
- data/lib/makit/tasks/task_monkey_patch.rb +81 -81
- data/lib/makit/tasks/test.rb +22 -22
- data/lib/makit/tasks/update.rb +18 -18
- data/lib/makit/tasks.rb +20 -20
- data/lib/makit/test_cache.rb +239 -239
- data/lib/makit/tree.rb +37 -37
- data/lib/makit/v1/makit.v1_pb.rb +35 -35
- data/lib/makit/v1/makit.v1_services_pb.rb +27 -27
- data/lib/makit/version.rb +99 -99
- data/lib/makit/version_util.rb +21 -21
- data/lib/makit/wix.rb +95 -95
- data/lib/makit/yaml.rb +29 -29
- data/lib/makit/zip.rb +17 -17
- data/lib/makit copy.rb +44 -44
- data/lib/makit.rb +42 -42
- metadata +2 -2
@@ -1,74 +1,74 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require "fileutils"
|
4
|
-
|
5
|
-
module Makit
|
6
|
-
module Cli
|
7
|
-
module Generators
|
8
|
-
# Base class for all project generators providing common functionality
|
9
|
-
class BaseGenerator
|
10
|
-
attr_reader :name, :options
|
11
|
-
|
12
|
-
def initialize(name, options = {})
|
13
|
-
@name = name
|
14
|
-
@options = options
|
15
|
-
end
|
16
|
-
|
17
|
-
# Main generation method - creates the complete project structure
|
18
|
-
def generate(project_dir)
|
19
|
-
create_directory_structure(project_dir)
|
20
|
-
create_files(project_dir)
|
21
|
-
display_success_message(project_dir)
|
22
|
-
end
|
23
|
-
|
24
|
-
protected
|
25
|
-
|
26
|
-
# Create the basic directory structure
|
27
|
-
def create_directory_structure(project_dir)
|
28
|
-
FileUtils.mkdir_p(project_dir)
|
29
|
-
end
|
30
|
-
|
31
|
-
# Create all files defined by the generator
|
32
|
-
def create_files(project_dir)
|
33
|
-
file_definitions.each do |file_path, template_method|
|
34
|
-
content = send(template_method)
|
35
|
-
create_file(File.join(project_dir, file_path), content)
|
36
|
-
end
|
37
|
-
end
|
38
|
-
|
39
|
-
# Create a single file with given content
|
40
|
-
def create_file(path, content)
|
41
|
-
FileUtils.mkdir_p(File.dirname(path))
|
42
|
-
File.write(path, content)
|
43
|
-
end
|
44
|
-
|
45
|
-
# Display success message and next steps
|
46
|
-
def display_success_message(project_dir)
|
47
|
-
puts "#{project_type} '#{name}' created successfully!"
|
48
|
-
puts "Next steps:"
|
49
|
-
puts " cd #{project_dir}"
|
50
|
-
display_custom_next_steps
|
51
|
-
end
|
52
|
-
|
53
|
-
# Display project-specific next steps
|
54
|
-
def display_custom_next_steps
|
55
|
-
puts " git init"
|
56
|
-
puts " git add ."
|
57
|
-
puts " git commit -m 'Initial commit'"
|
58
|
-
end
|
59
|
-
|
60
|
-
# Template methods to be implemented by subclasses
|
61
|
-
|
62
|
-
# Returns a hash mapping file paths to template method names
|
63
|
-
def file_definitions
|
64
|
-
raise NotImplementedError, "Subclasses must implement file_definitions"
|
65
|
-
end
|
66
|
-
|
67
|
-
# Returns a human-readable description of the project type
|
68
|
-
def project_type
|
69
|
-
raise NotImplementedError, "Subclasses must implement project_type"
|
70
|
-
end
|
71
|
-
end
|
72
|
-
end
|
73
|
-
end
|
74
|
-
end
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "fileutils"
|
4
|
+
|
5
|
+
module Makit
|
6
|
+
module Cli
|
7
|
+
module Generators
|
8
|
+
# Base class for all project generators providing common functionality
|
9
|
+
class BaseGenerator
|
10
|
+
attr_reader :name, :options
|
11
|
+
|
12
|
+
def initialize(name, options = {})
|
13
|
+
@name = name
|
14
|
+
@options = options
|
15
|
+
end
|
16
|
+
|
17
|
+
# Main generation method - creates the complete project structure
|
18
|
+
def generate(project_dir)
|
19
|
+
create_directory_structure(project_dir)
|
20
|
+
create_files(project_dir)
|
21
|
+
display_success_message(project_dir)
|
22
|
+
end
|
23
|
+
|
24
|
+
protected
|
25
|
+
|
26
|
+
# Create the basic directory structure
|
27
|
+
def create_directory_structure(project_dir)
|
28
|
+
FileUtils.mkdir_p(project_dir)
|
29
|
+
end
|
30
|
+
|
31
|
+
# Create all files defined by the generator
|
32
|
+
def create_files(project_dir)
|
33
|
+
file_definitions.each do |file_path, template_method|
|
34
|
+
content = send(template_method)
|
35
|
+
create_file(File.join(project_dir, file_path), content)
|
36
|
+
end
|
37
|
+
end
|
38
|
+
|
39
|
+
# Create a single file with given content
|
40
|
+
def create_file(path, content)
|
41
|
+
FileUtils.mkdir_p(File.dirname(path))
|
42
|
+
File.write(path, content)
|
43
|
+
end
|
44
|
+
|
45
|
+
# Display success message and next steps
|
46
|
+
def display_success_message(project_dir)
|
47
|
+
puts "#{project_type} '#{name}' created successfully!"
|
48
|
+
puts "Next steps:"
|
49
|
+
puts " cd #{project_dir}"
|
50
|
+
display_custom_next_steps
|
51
|
+
end
|
52
|
+
|
53
|
+
# Display project-specific next steps
|
54
|
+
def display_custom_next_steps
|
55
|
+
puts " git init"
|
56
|
+
puts " git add ."
|
57
|
+
puts " git commit -m 'Initial commit'"
|
58
|
+
end
|
59
|
+
|
60
|
+
# Template methods to be implemented by subclasses
|
61
|
+
|
62
|
+
# Returns a hash mapping file paths to template method names
|
63
|
+
def file_definitions
|
64
|
+
raise NotImplementedError, "Subclasses must implement file_definitions"
|
65
|
+
end
|
66
|
+
|
67
|
+
# Returns a human-readable description of the project type
|
68
|
+
def project_type
|
69
|
+
raise NotImplementedError, "Subclasses must implement project_type"
|
70
|
+
end
|
71
|
+
end
|
72
|
+
end
|
73
|
+
end
|
74
|
+
end
|
@@ -1,50 +1,50 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require_relative "base_generator"
|
4
|
-
require_relative "templates/dotnet_templates"
|
5
|
-
|
6
|
-
module Makit
|
7
|
-
module Cli
|
8
|
-
module Generators
|
9
|
-
# Generator for .NET projects
|
10
|
-
class DotnetGenerator < BaseGenerator
|
11
|
-
def file_definitions
|
12
|
-
{
|
13
|
-
"#{name}.csproj" => :csproj_content,
|
14
|
-
"Program.cs" => :program_cs_content,
|
15
|
-
"README.md" => :readme_content,
|
16
|
-
".gitignore" => :gitignore_content,
|
17
|
-
}
|
18
|
-
end
|
19
|
-
|
20
|
-
def project_type
|
21
|
-
".NET project"
|
22
|
-
end
|
23
|
-
|
24
|
-
def display_custom_next_steps
|
25
|
-
puts " dotnet build"
|
26
|
-
puts " dotnet run"
|
27
|
-
super
|
28
|
-
end
|
29
|
-
|
30
|
-
private
|
31
|
-
|
32
|
-
def csproj_content
|
33
|
-
Templates::Dotnet::Csproj.new(name).render
|
34
|
-
end
|
35
|
-
|
36
|
-
def program_cs_content
|
37
|
-
Templates::Dotnet::ProgramCs.new(name).render
|
38
|
-
end
|
39
|
-
|
40
|
-
def readme_content
|
41
|
-
Templates::Dotnet::Readme.new(name).render
|
42
|
-
end
|
43
|
-
|
44
|
-
def gitignore_content
|
45
|
-
Templates::Dotnet::Gitignore.new(name).render
|
46
|
-
end
|
47
|
-
end
|
48
|
-
end
|
49
|
-
end
|
50
|
-
end
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "base_generator"
|
4
|
+
require_relative "templates/dotnet_templates"
|
5
|
+
|
6
|
+
module Makit
|
7
|
+
module Cli
|
8
|
+
module Generators
|
9
|
+
# Generator for .NET projects
|
10
|
+
class DotnetGenerator < BaseGenerator
|
11
|
+
def file_definitions
|
12
|
+
{
|
13
|
+
"#{name}.csproj" => :csproj_content,
|
14
|
+
"Program.cs" => :program_cs_content,
|
15
|
+
"README.md" => :readme_content,
|
16
|
+
".gitignore" => :gitignore_content,
|
17
|
+
}
|
18
|
+
end
|
19
|
+
|
20
|
+
def project_type
|
21
|
+
".NET project"
|
22
|
+
end
|
23
|
+
|
24
|
+
def display_custom_next_steps
|
25
|
+
puts " dotnet build"
|
26
|
+
puts " dotnet run"
|
27
|
+
super
|
28
|
+
end
|
29
|
+
|
30
|
+
private
|
31
|
+
|
32
|
+
def csproj_content
|
33
|
+
Templates::Dotnet::Csproj.new(name).render
|
34
|
+
end
|
35
|
+
|
36
|
+
def program_cs_content
|
37
|
+
Templates::Dotnet::ProgramCs.new(name).render
|
38
|
+
end
|
39
|
+
|
40
|
+
def readme_content
|
41
|
+
Templates::Dotnet::Readme.new(name).render
|
42
|
+
end
|
43
|
+
|
44
|
+
def gitignore_content
|
45
|
+
Templates::Dotnet::Gitignore.new(name).render
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
@@ -1,49 +1,49 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require_relative "ruby_generator"
|
4
|
-
require_relative "rust_generator"
|
5
|
-
require_relative "dotnet_generator"
|
6
|
-
require_relative "node_generator"
|
7
|
-
|
8
|
-
module Makit
|
9
|
-
module Cli
|
10
|
-
module Generators
|
11
|
-
# Factory class for creating appropriate generator instances based on project type
|
12
|
-
class GeneratorFactory
|
13
|
-
# Mapping of project types to their corresponding generator classes
|
14
|
-
GENERATORS = {
|
15
|
-
"gem" => RubyGenerator,
|
16
|
-
"crate" => RustGenerator,
|
17
|
-
"nuget" => DotnetGenerator,
|
18
|
-
"dotnet" => DotnetGenerator,
|
19
|
-
"node" => NodeGenerator,
|
20
|
-
}.freeze
|
21
|
-
|
22
|
-
# Create a generator instance for the specified project type
|
23
|
-
#
|
24
|
-
# @param type [String] the project type (gem, crate, nuget, dotnet, node)
|
25
|
-
# @param name [String] the project name
|
26
|
-
# @param options [Hash] additional options for the generator
|
27
|
-
# @return [BaseGenerator] an instance of the appropriate generator
|
28
|
-
# @raise [ArgumentError] if the project type is not supported
|
29
|
-
def self.create(type, name, options = {})
|
30
|
-
generator_class = GENERATORS[type.downcase]
|
31
|
-
|
32
|
-
unless generator_class
|
33
|
-
available_types = GENERATORS.keys.join(", ")
|
34
|
-
raise ArgumentError, "Unknown project type '#{type}'. Available types: #{available_types}"
|
35
|
-
end
|
36
|
-
|
37
|
-
generator_class.new(name, options)
|
38
|
-
end
|
39
|
-
|
40
|
-
# Get list of available project types
|
41
|
-
#
|
42
|
-
# @return [Array<String>] list of supported project types
|
43
|
-
def self.available_types
|
44
|
-
GENERATORS.keys
|
45
|
-
end
|
46
|
-
end
|
47
|
-
end
|
48
|
-
end
|
49
|
-
end
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "ruby_generator"
|
4
|
+
require_relative "rust_generator"
|
5
|
+
require_relative "dotnet_generator"
|
6
|
+
require_relative "node_generator"
|
7
|
+
|
8
|
+
module Makit
|
9
|
+
module Cli
|
10
|
+
module Generators
|
11
|
+
# Factory class for creating appropriate generator instances based on project type
|
12
|
+
class GeneratorFactory
|
13
|
+
# Mapping of project types to their corresponding generator classes
|
14
|
+
GENERATORS = {
|
15
|
+
"gem" => RubyGenerator,
|
16
|
+
"crate" => RustGenerator,
|
17
|
+
"nuget" => DotnetGenerator,
|
18
|
+
"dotnet" => DotnetGenerator,
|
19
|
+
"node" => NodeGenerator,
|
20
|
+
}.freeze
|
21
|
+
|
22
|
+
# Create a generator instance for the specified project type
|
23
|
+
#
|
24
|
+
# @param type [String] the project type (gem, crate, nuget, dotnet, node)
|
25
|
+
# @param name [String] the project name
|
26
|
+
# @param options [Hash] additional options for the generator
|
27
|
+
# @return [BaseGenerator] an instance of the appropriate generator
|
28
|
+
# @raise [ArgumentError] if the project type is not supported
|
29
|
+
def self.create(type, name, options = {})
|
30
|
+
generator_class = GENERATORS[type.downcase]
|
31
|
+
|
32
|
+
unless generator_class
|
33
|
+
available_types = GENERATORS.keys.join(", ")
|
34
|
+
raise ArgumentError, "Unknown project type '#{type}'. Available types: #{available_types}"
|
35
|
+
end
|
36
|
+
|
37
|
+
generator_class.new(name, options)
|
38
|
+
end
|
39
|
+
|
40
|
+
# Get list of available project types
|
41
|
+
#
|
42
|
+
# @return [Array<String>] list of supported project types
|
43
|
+
def self.available_types
|
44
|
+
GENERATORS.keys
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
@@ -1,50 +1,50 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require_relative "base_generator"
|
4
|
-
require_relative "templates/node_templates"
|
5
|
-
|
6
|
-
module Makit
|
7
|
-
module Cli
|
8
|
-
module Generators
|
9
|
-
# Generator for Node.js projects
|
10
|
-
class NodeGenerator < BaseGenerator
|
11
|
-
def file_definitions
|
12
|
-
{
|
13
|
-
"package.json" => :package_json_content,
|
14
|
-
"index.js" => :index_js_content,
|
15
|
-
"README.md" => :readme_content,
|
16
|
-
".gitignore" => :gitignore_content,
|
17
|
-
}
|
18
|
-
end
|
19
|
-
|
20
|
-
def project_type
|
21
|
-
"Node.js project"
|
22
|
-
end
|
23
|
-
|
24
|
-
def display_custom_next_steps
|
25
|
-
puts " npm install"
|
26
|
-
puts " node index.js"
|
27
|
-
super
|
28
|
-
end
|
29
|
-
|
30
|
-
private
|
31
|
-
|
32
|
-
def package_json_content
|
33
|
-
Templates::Node::PackageJson.new(name).render
|
34
|
-
end
|
35
|
-
|
36
|
-
def index_js_content
|
37
|
-
Templates::Node::IndexJs.new(name).render
|
38
|
-
end
|
39
|
-
|
40
|
-
def readme_content
|
41
|
-
Templates::Node::Readme.new(name).render
|
42
|
-
end
|
43
|
-
|
44
|
-
def gitignore_content
|
45
|
-
Templates::Node::Gitignore.new(name).render
|
46
|
-
end
|
47
|
-
end
|
48
|
-
end
|
49
|
-
end
|
50
|
-
end
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "base_generator"
|
4
|
+
require_relative "templates/node_templates"
|
5
|
+
|
6
|
+
module Makit
|
7
|
+
module Cli
|
8
|
+
module Generators
|
9
|
+
# Generator for Node.js projects
|
10
|
+
class NodeGenerator < BaseGenerator
|
11
|
+
def file_definitions
|
12
|
+
{
|
13
|
+
"package.json" => :package_json_content,
|
14
|
+
"index.js" => :index_js_content,
|
15
|
+
"README.md" => :readme_content,
|
16
|
+
".gitignore" => :gitignore_content,
|
17
|
+
}
|
18
|
+
end
|
19
|
+
|
20
|
+
def project_type
|
21
|
+
"Node.js project"
|
22
|
+
end
|
23
|
+
|
24
|
+
def display_custom_next_steps
|
25
|
+
puts " npm install"
|
26
|
+
puts " node index.js"
|
27
|
+
super
|
28
|
+
end
|
29
|
+
|
30
|
+
private
|
31
|
+
|
32
|
+
def package_json_content
|
33
|
+
Templates::Node::PackageJson.new(name).render
|
34
|
+
end
|
35
|
+
|
36
|
+
def index_js_content
|
37
|
+
Templates::Node::IndexJs.new(name).render
|
38
|
+
end
|
39
|
+
|
40
|
+
def readme_content
|
41
|
+
Templates::Node::Readme.new(name).render
|
42
|
+
end
|
43
|
+
|
44
|
+
def gitignore_content
|
45
|
+
Templates::Node::Gitignore.new(name).render
|
46
|
+
end
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
end
|
@@ -1,77 +1,77 @@
|
|
1
|
-
# frozen_string_literal: true
|
2
|
-
|
3
|
-
require_relative "base_generator"
|
4
|
-
require_relative "templates/ruby/gemfile"
|
5
|
-
require_relative "templates/ruby/gemspec"
|
6
|
-
require_relative "templates/ruby/main_lib"
|
7
|
-
require_relative "templates/ruby/version"
|
8
|
-
require_relative "templates/ruby/rakefile"
|
9
|
-
require_relative "templates/ruby/readme"
|
10
|
-
require_relative "templates/ruby/test_helper"
|
11
|
-
require_relative "templates/ruby/test"
|
12
|
-
|
13
|
-
module Makit
|
14
|
-
module Cli
|
15
|
-
module Generators
|
16
|
-
# Generator for Ruby gem projects
|
17
|
-
class RubyGenerator < BaseGenerator
|
18
|
-
def file_definitions
|
19
|
-
{
|
20
|
-
"Gemfile" => :gemfile_content,
|
21
|
-
"#{name}.gemspec" => :gemspec_content,
|
22
|
-
"lib/#{name}.rb" => :main_lib_content,
|
23
|
-
"lib/#{name}/version.rb" => :version_content,
|
24
|
-
"Rakefile" => :rakefile_content,
|
25
|
-
"README.md" => :readme_content,
|
26
|
-
"test/test_helper.rb" => :test_helper_content,
|
27
|
-
"test/#{name}_test.rb" => :test_content,
|
28
|
-
}
|
29
|
-
end
|
30
|
-
|
31
|
-
def project_type
|
32
|
-
"Ruby gem"
|
33
|
-
end
|
34
|
-
|
35
|
-
def display_custom_next_steps
|
36
|
-
puts " bundle install"
|
37
|
-
puts " bundle exec rake test"
|
38
|
-
super
|
39
|
-
end
|
40
|
-
|
41
|
-
private
|
42
|
-
|
43
|
-
def gemfile_content
|
44
|
-
Templates::Ruby::Gemfile.new(name).render
|
45
|
-
end
|
46
|
-
|
47
|
-
def gemspec_content
|
48
|
-
Templates::Ruby::Gemspec.new(name).render
|
49
|
-
end
|
50
|
-
|
51
|
-
def main_lib_content
|
52
|
-
Templates::Ruby::MainLib.new(name).render
|
53
|
-
end
|
54
|
-
|
55
|
-
def version_content
|
56
|
-
Templates::Ruby::Version.new(name).render
|
57
|
-
end
|
58
|
-
|
59
|
-
def rakefile_content
|
60
|
-
Templates::Ruby::Rakefile.new(name).render
|
61
|
-
end
|
62
|
-
|
63
|
-
def readme_content
|
64
|
-
Templates::Ruby::Readme.new(name).render
|
65
|
-
end
|
66
|
-
|
67
|
-
def test_helper_content
|
68
|
-
Templates::Ruby::TestHelper.new(name).render
|
69
|
-
end
|
70
|
-
|
71
|
-
def test_content
|
72
|
-
Templates::Ruby::Test.new(name).render
|
73
|
-
end
|
74
|
-
end
|
75
|
-
end
|
76
|
-
end
|
77
|
-
end
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require_relative "base_generator"
|
4
|
+
require_relative "templates/ruby/gemfile"
|
5
|
+
require_relative "templates/ruby/gemspec"
|
6
|
+
require_relative "templates/ruby/main_lib"
|
7
|
+
require_relative "templates/ruby/version"
|
8
|
+
require_relative "templates/ruby/rakefile"
|
9
|
+
require_relative "templates/ruby/readme"
|
10
|
+
require_relative "templates/ruby/test_helper"
|
11
|
+
require_relative "templates/ruby/test"
|
12
|
+
|
13
|
+
module Makit
|
14
|
+
module Cli
|
15
|
+
module Generators
|
16
|
+
# Generator for Ruby gem projects
|
17
|
+
class RubyGenerator < BaseGenerator
|
18
|
+
def file_definitions
|
19
|
+
{
|
20
|
+
"Gemfile" => :gemfile_content,
|
21
|
+
"#{name}.gemspec" => :gemspec_content,
|
22
|
+
"lib/#{name}.rb" => :main_lib_content,
|
23
|
+
"lib/#{name}/version.rb" => :version_content,
|
24
|
+
"Rakefile" => :rakefile_content,
|
25
|
+
"README.md" => :readme_content,
|
26
|
+
"test/test_helper.rb" => :test_helper_content,
|
27
|
+
"test/#{name}_test.rb" => :test_content,
|
28
|
+
}
|
29
|
+
end
|
30
|
+
|
31
|
+
def project_type
|
32
|
+
"Ruby gem"
|
33
|
+
end
|
34
|
+
|
35
|
+
def display_custom_next_steps
|
36
|
+
puts " bundle install"
|
37
|
+
puts " bundle exec rake test"
|
38
|
+
super
|
39
|
+
end
|
40
|
+
|
41
|
+
private
|
42
|
+
|
43
|
+
def gemfile_content
|
44
|
+
Templates::Ruby::Gemfile.new(name).render
|
45
|
+
end
|
46
|
+
|
47
|
+
def gemspec_content
|
48
|
+
Templates::Ruby::Gemspec.new(name).render
|
49
|
+
end
|
50
|
+
|
51
|
+
def main_lib_content
|
52
|
+
Templates::Ruby::MainLib.new(name).render
|
53
|
+
end
|
54
|
+
|
55
|
+
def version_content
|
56
|
+
Templates::Ruby::Version.new(name).render
|
57
|
+
end
|
58
|
+
|
59
|
+
def rakefile_content
|
60
|
+
Templates::Ruby::Rakefile.new(name).render
|
61
|
+
end
|
62
|
+
|
63
|
+
def readme_content
|
64
|
+
Templates::Ruby::Readme.new(name).render
|
65
|
+
end
|
66
|
+
|
67
|
+
def test_helper_content
|
68
|
+
Templates::Ruby::TestHelper.new(name).render
|
69
|
+
end
|
70
|
+
|
71
|
+
def test_content
|
72
|
+
Templates::Ruby::Test.new(name).render
|
73
|
+
end
|
74
|
+
end
|
75
|
+
end
|
76
|
+
end
|
77
|
+
end
|