makit 0.0.139 → 0.0.140

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.
Files changed (151) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +41 -41
  3. data/exe/makit +5 -5
  4. data/lib/makit/apache.rb +28 -28
  5. data/lib/makit/auto.rb +48 -48
  6. data/lib/makit/cli/build_commands.rb +500 -500
  7. data/lib/makit/cli/generators/base_generator.rb +74 -74
  8. data/lib/makit/cli/generators/dotnet_generator.rb +50 -50
  9. data/lib/makit/cli/generators/generator_factory.rb +49 -49
  10. data/lib/makit/cli/generators/node_generator.rb +50 -50
  11. data/lib/makit/cli/generators/ruby_generator.rb +77 -77
  12. data/lib/makit/cli/generators/rust_generator.rb +50 -50
  13. data/lib/makit/cli/generators/templates/dotnet_templates.rb +167 -167
  14. data/lib/makit/cli/generators/templates/node_templates.rb +161 -161
  15. data/lib/makit/cli/generators/templates/ruby/gemfile.rb +26 -26
  16. data/lib/makit/cli/generators/templates/ruby/gemspec.rb +40 -40
  17. data/lib/makit/cli/generators/templates/ruby/main_lib.rb +33 -33
  18. data/lib/makit/cli/generators/templates/ruby/rakefile.rb +35 -35
  19. data/lib/makit/cli/generators/templates/ruby/readme.rb +63 -63
  20. data/lib/makit/cli/generators/templates/ruby/test.rb +39 -39
  21. data/lib/makit/cli/generators/templates/ruby/test_helper.rb +29 -29
  22. data/lib/makit/cli/generators/templates/ruby/version.rb +29 -29
  23. data/lib/makit/cli/generators/templates/rust_templates.rb +128 -128
  24. data/lib/makit/cli/main.rb +69 -67
  25. data/lib/makit/cli/project_commands.rb +868 -868
  26. data/lib/makit/cli/repository_commands.rb +661 -661
  27. data/lib/makit/cli/strategy_commands.rb +51 -0
  28. data/lib/makit/cli/utility_commands.rb +521 -521
  29. data/lib/makit/commands/factory.rb +359 -359
  30. data/lib/makit/commands/middleware/base.rb +73 -73
  31. data/lib/makit/commands/middleware/cache.rb +248 -248
  32. data/lib/makit/commands/middleware/command_logger.rb +312 -312
  33. data/lib/makit/commands/middleware/validator.rb +269 -269
  34. data/lib/makit/commands/request.rb +316 -316
  35. data/lib/makit/commands/result.rb +323 -323
  36. data/lib/makit/commands/runner.rb +385 -385
  37. data/lib/makit/commands/strategies/base.rb +171 -171
  38. data/lib/makit/commands/strategies/child_process.rb +1 -1
  39. data/lib/makit/commands/strategies/synchronous.rb +139 -139
  40. data/lib/makit/commands.rb +50 -50
  41. data/lib/makit/configuration/dotnet_project.rb +12 -12
  42. data/lib/makit/configuration/gitlab_helper.rb +58 -58
  43. data/lib/makit/configuration/project.rb +168 -168
  44. data/lib/makit/configuration/rakefile_helper.rb +43 -43
  45. data/lib/makit/configuration/step.rb +34 -34
  46. data/lib/makit/configuration/timeout.rb +74 -0
  47. data/lib/makit/configuration.rb +15 -14
  48. data/lib/makit/content/default_gitignore.rb +7 -7
  49. data/lib/makit/content/default_gitignore.txt +225 -225
  50. data/lib/makit/content/default_rakefile.rb +13 -13
  51. data/lib/makit/content/gem_rakefile.rb +16 -16
  52. data/lib/makit/context.rb +1 -1
  53. data/lib/makit/data.rb +49 -49
  54. data/lib/makit/directories.rb +140 -140
  55. data/lib/makit/directory.rb +262 -262
  56. data/lib/makit/docs/files.rb +89 -89
  57. data/lib/makit/docs/rake.rb +102 -102
  58. data/lib/makit/dotnet/cli.rb +69 -69
  59. data/lib/makit/dotnet/project.rb +217 -217
  60. data/lib/makit/dotnet/solution.rb +38 -38
  61. data/lib/makit/dotnet/solution_classlib.rb +239 -239
  62. data/lib/makit/dotnet/solution_console.rb +264 -264
  63. data/lib/makit/dotnet/solution_maui.rb +354 -354
  64. data/lib/makit/dotnet/solution_wasm.rb +275 -275
  65. data/lib/makit/dotnet/solution_wpf.rb +304 -304
  66. data/lib/makit/dotnet.rb +102 -102
  67. data/lib/makit/email.rb +90 -90
  68. data/lib/makit/environment.rb +142 -142
  69. data/lib/makit/examples/runner.rb +370 -370
  70. data/lib/makit/exceptions.rb +45 -45
  71. data/lib/makit/fileinfo.rb +24 -24
  72. data/lib/makit/files.rb +43 -43
  73. data/lib/makit/gems.rb +40 -40
  74. data/lib/makit/git/cli.rb +54 -54
  75. data/lib/makit/git/repository.rb +90 -90
  76. data/lib/makit/git.rb +98 -98
  77. data/lib/makit/gitlab_runner.rb +59 -59
  78. data/lib/makit/humanize.rb +137 -137
  79. data/lib/makit/indexer.rb +47 -47
  80. data/lib/makit/logging/configuration.rb +308 -308
  81. data/lib/makit/logging/format_registry.rb +84 -84
  82. data/lib/makit/logging/formatters/base.rb +39 -39
  83. data/lib/makit/logging/formatters/console_formatter.rb +140 -140
  84. data/lib/makit/logging/formatters/json_formatter.rb +65 -65
  85. data/lib/makit/logging/formatters/plain_text_formatter.rb +71 -71
  86. data/lib/makit/logging/formatters/text_formatter.rb +64 -64
  87. data/lib/makit/logging/log_request.rb +119 -119
  88. data/lib/makit/logging/logger.rb +199 -199
  89. data/lib/makit/logging/sinks/base.rb +91 -91
  90. data/lib/makit/logging/sinks/console.rb +72 -72
  91. data/lib/makit/logging/sinks/file_sink.rb +92 -92
  92. data/lib/makit/logging/sinks/structured.rb +123 -123
  93. data/lib/makit/logging/sinks/unified_file_sink.rb +296 -296
  94. data/lib/makit/logging.rb +565 -565
  95. data/lib/makit/markdown.rb +75 -75
  96. data/lib/makit/mp/basic_object_mp.rb +17 -17
  97. data/lib/makit/mp/command_mp.rb +13 -13
  98. data/lib/makit/mp/command_request.mp.rb +17 -17
  99. data/lib/makit/mp/project_mp.rb +199 -199
  100. data/lib/makit/mp/string_mp.rb +191 -191
  101. data/lib/makit/nuget.rb +74 -74
  102. data/lib/makit/port.rb +32 -32
  103. data/lib/makit/process.rb +163 -163
  104. data/lib/makit/protoc.rb +107 -107
  105. data/lib/makit/rake/cli.rb +196 -196
  106. data/lib/makit/rake.rb +80 -80
  107. data/lib/makit/ruby/cli.rb +185 -185
  108. data/lib/makit/ruby.rb +25 -25
  109. data/lib/makit/secrets.rb +51 -51
  110. data/lib/makit/serializer.rb +130 -130
  111. data/lib/makit/services/builder.rb +186 -186
  112. data/lib/makit/services/error_handler.rb +226 -226
  113. data/lib/makit/services/repository_manager.rb +231 -231
  114. data/lib/makit/services/validator.rb +112 -112
  115. data/lib/makit/setup/classlib.rb +101 -101
  116. data/lib/makit/setup/gem.rb +268 -268
  117. data/lib/makit/setup/razorclasslib.rb +101 -101
  118. data/lib/makit/setup/runner.rb +54 -54
  119. data/lib/makit/setup.rb +5 -5
  120. data/lib/makit/show.rb +110 -110
  121. data/lib/makit/storage.rb +126 -126
  122. data/lib/makit/symbols.rb +170 -170
  123. data/lib/makit/task_info.rb +130 -130
  124. data/lib/makit/tasks/at_exit.rb +15 -15
  125. data/lib/makit/tasks/build.rb +22 -22
  126. data/lib/makit/tasks/clean.rb +13 -13
  127. data/lib/makit/tasks/configure.rb +10 -10
  128. data/lib/makit/tasks/format.rb +10 -10
  129. data/lib/makit/tasks/hook_manager.rb +443 -443
  130. data/lib/makit/tasks/init.rb +49 -49
  131. data/lib/makit/tasks/integrate.rb +29 -29
  132. data/lib/makit/tasks/pull_incoming.rb +13 -13
  133. data/lib/makit/tasks/setup.rb +13 -13
  134. data/lib/makit/tasks/sync.rb +17 -17
  135. data/lib/makit/tasks/tag.rb +16 -16
  136. data/lib/makit/tasks/task_monkey_patch.rb +81 -81
  137. data/lib/makit/tasks/test.rb +22 -22
  138. data/lib/makit/tasks/update.rb +18 -18
  139. data/lib/makit/tasks.rb +20 -20
  140. data/lib/makit/test_cache.rb +239 -239
  141. data/lib/makit/tree.rb +37 -37
  142. data/lib/makit/v1/makit.v1_pb.rb +35 -35
  143. data/lib/makit/v1/makit.v1_services_pb.rb +27 -27
  144. data/lib/makit/version.rb +99 -99
  145. data/lib/makit/version_util.rb +21 -21
  146. data/lib/makit/wix.rb +95 -95
  147. data/lib/makit/yaml.rb +29 -29
  148. data/lib/makit/zip.rb +17 -17
  149. data/lib/makit copy.rb +44 -44
  150. data/lib/makit.rb +42 -42
  151. metadata +2 -1
@@ -1,161 +1,161 @@
1
- # frozen_string_literal: true
2
-
3
- module Makit
4
- module Cli
5
- module Generators
6
- module Templates
7
- # Node.js project template generators
8
- #
9
- # This module contains template classes for generating Node.js project files
10
- # including package.json, index.js, README.md, and .gitignore files.
11
- #
12
- # @example Generate a package.json file
13
- # package = Makit::Cli::Generators::Templates::Node::PackageJson.new("my-app")
14
- # content = package.render
15
- module Node
16
- # Template generator for Node.js package.json files
17
- #
18
- # Generates a standard package.json file with basic metadata,
19
- # MIT license, and placeholder test script. Sets up a Node.js
20
- # project ready for npm package management.
21
- #
22
- # @example
23
- # package = PackageJson.new("my-node-app")
24
- # json_content = package.render
25
- class PackageJson
26
- # Initialize a new package.json template generator
27
- #
28
- # @param project_name [String] the name of the Node.js project
29
- def initialize(project_name)
30
- @project_name = project_name
31
- end
32
-
33
- # Render the package.json content
34
- #
35
- # @return [String] the complete package.json content with project metadata
36
- def render
37
- <<~JSON
38
- {
39
- "name": "#{@project_name}",
40
- "version": "0.1.0",
41
- "description": "A Node.js project",
42
- "main": "index.js",
43
- "scripts": {
44
- "test": "echo \\"Error: no test specified\\" && exit 1"
45
- },
46
- "keywords": [],
47
- "author": "",
48
- "license": "MIT"
49
- }
50
- JSON
51
- end
52
- end
53
-
54
- # Template generator for Node.js index.js entry point files
55
- #
56
- # Generates a simple JavaScript file that outputs "Hello, World!"
57
- # to the console. Provides a basic starting point for Node.js
58
- # applications.
59
- #
60
- # @example
61
- # index = IndexJs.new("my-app")
62
- # js_content = index.render
63
- class IndexJs
64
- # Initialize a new index.js template generator
65
- #
66
- # @param project_name [String] the name of the Node.js project (unused but kept for consistency)
67
- def initialize(project_name)
68
- @project_name = project_name
69
- end
70
-
71
- # Render the index.js JavaScript content
72
- #
73
- # @return [String] the complete JavaScript code for the main entry point
74
- def render
75
- <<~JAVASCRIPT
76
- console.log("Hello, World!");
77
- JAVASCRIPT
78
- end
79
- end
80
-
81
- # Template generator for Node.js project README.md files
82
- #
83
- # Generates a standard README.md file with project name, description,
84
- # and common npm commands (install, run, test). Provides documentation
85
- # structure for Node.js projects.
86
- #
87
- # @example
88
- # readme = Readme.new("MyNodeApp")
89
- # markdown_content = readme.render
90
- class Readme
91
- # Initialize a new README.md template generator
92
- #
93
- # @param project_name [String] the name of the Node.js project
94
- def initialize(project_name)
95
- @project_name = project_name
96
- end
97
-
98
- # Render the README.md markdown content
99
- #
100
- # @return [String] the complete README.md content with npm instructions
101
- def render
102
- <<~README
103
- # #{@project_name}
104
-
105
- A Node.js project.
106
-
107
- ## Installation
108
-
109
- ```bash
110
- npm install
111
- ```
112
-
113
- ## Running
114
-
115
- ```bash
116
- node index.js
117
- ```
118
-
119
- ## Testing
120
-
121
- ```bash
122
- npm test
123
- ```
124
- README
125
- end
126
- end
127
-
128
- # Template generator for Node.js project .gitignore files
129
- #
130
- # Generates a .gitignore file with common Node.js artifacts and
131
- # log files that should not be committed to version control.
132
- # Includes node_modules/, npm debug logs, and yarn error logs.
133
- #
134
- # @example
135
- # gitignore = Gitignore.new("MyProject")
136
- # ignore_content = gitignore.render
137
- class Gitignore
138
- # Initialize a new .gitignore template generator
139
- #
140
- # @param project_name [String] the name of the Node.js project (unused but kept for consistency)
141
- def initialize(project_name)
142
- @project_name = project_name
143
- end
144
-
145
- # Render the .gitignore file content
146
- #
147
- # @return [String] the complete .gitignore content for Node.js projects
148
- def render
149
- <<~GITIGNORE
150
- node_modules/
151
- npm-debug.log*
152
- yarn-debug.log*
153
- yarn-error.log*
154
- GITIGNORE
155
- end
156
- end
157
- end
158
- end
159
- end
160
- end
161
- end
1
+ # frozen_string_literal: true
2
+
3
+ module Makit
4
+ module Cli
5
+ module Generators
6
+ module Templates
7
+ # Node.js project template generators
8
+ #
9
+ # This module contains template classes for generating Node.js project files
10
+ # including package.json, index.js, README.md, and .gitignore files.
11
+ #
12
+ # @example Generate a package.json file
13
+ # package = Makit::Cli::Generators::Templates::Node::PackageJson.new("my-app")
14
+ # content = package.render
15
+ module Node
16
+ # Template generator for Node.js package.json files
17
+ #
18
+ # Generates a standard package.json file with basic metadata,
19
+ # MIT license, and placeholder test script. Sets up a Node.js
20
+ # project ready for npm package management.
21
+ #
22
+ # @example
23
+ # package = PackageJson.new("my-node-app")
24
+ # json_content = package.render
25
+ class PackageJson
26
+ # Initialize a new package.json template generator
27
+ #
28
+ # @param project_name [String] the name of the Node.js project
29
+ def initialize(project_name)
30
+ @project_name = project_name
31
+ end
32
+
33
+ # Render the package.json content
34
+ #
35
+ # @return [String] the complete package.json content with project metadata
36
+ def render
37
+ <<~JSON
38
+ {
39
+ "name": "#{@project_name}",
40
+ "version": "0.1.0",
41
+ "description": "A Node.js project",
42
+ "main": "index.js",
43
+ "scripts": {
44
+ "test": "echo \\"Error: no test specified\\" && exit 1"
45
+ },
46
+ "keywords": [],
47
+ "author": "",
48
+ "license": "MIT"
49
+ }
50
+ JSON
51
+ end
52
+ end
53
+
54
+ # Template generator for Node.js index.js entry point files
55
+ #
56
+ # Generates a simple JavaScript file that outputs "Hello, World!"
57
+ # to the console. Provides a basic starting point for Node.js
58
+ # applications.
59
+ #
60
+ # @example
61
+ # index = IndexJs.new("my-app")
62
+ # js_content = index.render
63
+ class IndexJs
64
+ # Initialize a new index.js template generator
65
+ #
66
+ # @param project_name [String] the name of the Node.js project (unused but kept for consistency)
67
+ def initialize(project_name)
68
+ @project_name = project_name
69
+ end
70
+
71
+ # Render the index.js JavaScript content
72
+ #
73
+ # @return [String] the complete JavaScript code for the main entry point
74
+ def render
75
+ <<~JAVASCRIPT
76
+ console.log("Hello, World!");
77
+ JAVASCRIPT
78
+ end
79
+ end
80
+
81
+ # Template generator for Node.js project README.md files
82
+ #
83
+ # Generates a standard README.md file with project name, description,
84
+ # and common npm commands (install, run, test). Provides documentation
85
+ # structure for Node.js projects.
86
+ #
87
+ # @example
88
+ # readme = Readme.new("MyNodeApp")
89
+ # markdown_content = readme.render
90
+ class Readme
91
+ # Initialize a new README.md template generator
92
+ #
93
+ # @param project_name [String] the name of the Node.js project
94
+ def initialize(project_name)
95
+ @project_name = project_name
96
+ end
97
+
98
+ # Render the README.md markdown content
99
+ #
100
+ # @return [String] the complete README.md content with npm instructions
101
+ def render
102
+ <<~README
103
+ # #{@project_name}
104
+
105
+ A Node.js project.
106
+
107
+ ## Installation
108
+
109
+ ```bash
110
+ npm install
111
+ ```
112
+
113
+ ## Running
114
+
115
+ ```bash
116
+ node index.js
117
+ ```
118
+
119
+ ## Testing
120
+
121
+ ```bash
122
+ npm test
123
+ ```
124
+ README
125
+ end
126
+ end
127
+
128
+ # Template generator for Node.js project .gitignore files
129
+ #
130
+ # Generates a .gitignore file with common Node.js artifacts and
131
+ # log files that should not be committed to version control.
132
+ # Includes node_modules/, npm debug logs, and yarn error logs.
133
+ #
134
+ # @example
135
+ # gitignore = Gitignore.new("MyProject")
136
+ # ignore_content = gitignore.render
137
+ class Gitignore
138
+ # Initialize a new .gitignore template generator
139
+ #
140
+ # @param project_name [String] the name of the Node.js project (unused but kept for consistency)
141
+ def initialize(project_name)
142
+ @project_name = project_name
143
+ end
144
+
145
+ # Render the .gitignore file content
146
+ #
147
+ # @return [String] the complete .gitignore content for Node.js projects
148
+ def render
149
+ <<~GITIGNORE
150
+ node_modules/
151
+ npm-debug.log*
152
+ yarn-debug.log*
153
+ yarn-error.log*
154
+ GITIGNORE
155
+ end
156
+ end
157
+ end
158
+ end
159
+ end
160
+ end
161
+ end
@@ -1,26 +1,26 @@
1
- # frozen_string_literal: true
2
-
3
- module Makit
4
- module Cli
5
- module Generators
6
- module Templates
7
- module Ruby
8
- # Template for Ruby gem Gemfile
9
- class Gemfile
10
- def initialize(project_name)
11
- @project_name = project_name
12
- end
13
-
14
- def render
15
- <<~GEMFILE
16
- source "https://rubygems.org"
17
-
18
- gem "#{@project_name}"
19
- GEMFILE
20
- end
21
- end
22
- end
23
- end
24
- end
25
- end
26
- end
1
+ # frozen_string_literal: true
2
+
3
+ module Makit
4
+ module Cli
5
+ module Generators
6
+ module Templates
7
+ module Ruby
8
+ # Template for Ruby gem Gemfile
9
+ class Gemfile
10
+ def initialize(project_name)
11
+ @project_name = project_name
12
+ end
13
+
14
+ def render
15
+ <<~GEMFILE
16
+ source "https://rubygems.org"
17
+
18
+ gem "#{@project_name}"
19
+ GEMFILE
20
+ end
21
+ end
22
+ end
23
+ end
24
+ end
25
+ end
26
+ end
@@ -1,40 +1,40 @@
1
- # frozen_string_literal: true
2
-
3
- module Makit
4
- module Cli
5
- module Generators
6
- module Templates
7
- module Ruby
8
- # Template for Ruby gem gemspec file
9
- class Gemspec
10
- def initialize(project_name)
11
- @project_name = project_name
12
- end
13
-
14
- def render
15
- <<~GEMSPEC
16
- Gem::Specification.new do |spec|
17
- spec.name = "#{@project_name}"
18
- spec.version = "0.1.0"
19
- spec.authors = ["Author Name"]
20
- spec.email = ["author@example.com"]
21
- spec.summary = "A Ruby gem"
22
- spec.description = "A longer description of the gem"
23
- spec.homepage = "https://github.com/author/#{@project_name}"
24
- spec.license = "MIT"
25
- #{" "}
26
- spec.files = Dir["lib/**/*", "README.md"]
27
- spec.require_paths = ["lib"]
28
- #{" "}
29
- spec.add_development_dependency "bundler", "~> 2.0"
30
- spec.add_development_dependency "rake", "~> 13.0"
31
- spec.add_development_dependency "minitest", "~> 5.0"
32
- end
33
- GEMSPEC
34
- end
35
- end
36
- end
37
- end
38
- end
39
- end
40
- end
1
+ # frozen_string_literal: true
2
+
3
+ module Makit
4
+ module Cli
5
+ module Generators
6
+ module Templates
7
+ module Ruby
8
+ # Template for Ruby gem gemspec file
9
+ class Gemspec
10
+ def initialize(project_name)
11
+ @project_name = project_name
12
+ end
13
+
14
+ def render
15
+ <<~GEMSPEC
16
+ Gem::Specification.new do |spec|
17
+ spec.name = "#{@project_name}"
18
+ spec.version = "0.1.0"
19
+ spec.authors = ["Author Name"]
20
+ spec.email = ["author@example.com"]
21
+ spec.summary = "A Ruby gem"
22
+ spec.description = "A longer description of the gem"
23
+ spec.homepage = "https://github.com/author/#{@project_name}"
24
+ spec.license = "MIT"
25
+ #{" "}
26
+ spec.files = Dir["lib/**/*", "README.md"]
27
+ spec.require_paths = ["lib"]
28
+ #{" "}
29
+ spec.add_development_dependency "bundler", "~> 2.0"
30
+ spec.add_development_dependency "rake", "~> 13.0"
31
+ spec.add_development_dependency "minitest", "~> 5.0"
32
+ end
33
+ GEMSPEC
34
+ end
35
+ end
36
+ end
37
+ end
38
+ end
39
+ end
40
+ end
@@ -1,33 +1,33 @@
1
- # frozen_string_literal: true
2
-
3
- module Makit
4
- module Cli
5
- module Generators
6
- module Templates
7
- module Ruby
8
- # Template for main Ruby gem lib file
9
- class MainLib
10
- def initialize(project_name)
11
- @project_name = project_name
12
- @module_name = project_name.split(/[-_]/).map(&:capitalize).join
13
- end
14
-
15
- def render
16
- <<~RUBY
17
- # frozen_string_literal: true
18
-
19
- require_relative "#{@project_name}/version"
20
-
21
- module #{@module_name}
22
- class Error < StandardError; end
23
- #{" "}
24
- # Your code goes here...
25
- end
26
- RUBY
27
- end
28
- end
29
- end
30
- end
31
- end
32
- end
33
- end
1
+ # frozen_string_literal: true
2
+
3
+ module Makit
4
+ module Cli
5
+ module Generators
6
+ module Templates
7
+ module Ruby
8
+ # Template for main Ruby gem lib file
9
+ class MainLib
10
+ def initialize(project_name)
11
+ @project_name = project_name
12
+ @module_name = project_name.split(/[-_]/).map(&:capitalize).join
13
+ end
14
+
15
+ def render
16
+ <<~RUBY
17
+ # frozen_string_literal: true
18
+
19
+ require_relative "#{@project_name}/version"
20
+
21
+ module #{@module_name}
22
+ class Error < StandardError; end
23
+ #{" "}
24
+ # Your code goes here...
25
+ end
26
+ RUBY
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
@@ -1,35 +1,35 @@
1
- # frozen_string_literal: true
2
-
3
- module Makit
4
- module Cli
5
- module Generators
6
- module Templates
7
- module Ruby
8
- # Template for Ruby gem Rakefile
9
- class Rakefile
10
- def initialize(project_name)
11
- @project_name = project_name
12
- end
13
-
14
- def render
15
- <<~RAKEFILE
16
- # frozen_string_literal: true
17
-
18
- require "bundler/gem_tasks"
19
- require "rake/testtask"
20
-
21
- Rake::TestTask.new(:test) do |t|
22
- t.libs << "test"
23
- t.libs << "lib"
24
- t.test_files = FileList["test/**/*_test.rb"]
25
- end
26
-
27
- task default: :test
28
- RAKEFILE
29
- end
30
- end
31
- end
32
- end
33
- end
34
- end
35
- end
1
+ # frozen_string_literal: true
2
+
3
+ module Makit
4
+ module Cli
5
+ module Generators
6
+ module Templates
7
+ module Ruby
8
+ # Template for Ruby gem Rakefile
9
+ class Rakefile
10
+ def initialize(project_name)
11
+ @project_name = project_name
12
+ end
13
+
14
+ def render
15
+ <<~RAKEFILE
16
+ # frozen_string_literal: true
17
+
18
+ require "bundler/gem_tasks"
19
+ require "rake/testtask"
20
+
21
+ Rake::TestTask.new(:test) do |t|
22
+ t.libs << "test"
23
+ t.libs << "lib"
24
+ t.test_files = FileList["test/**/*_test.rb"]
25
+ end
26
+
27
+ task default: :test
28
+ RAKEFILE
29
+ end
30
+ end
31
+ end
32
+ end
33
+ end
34
+ end
35
+ end