rubysmith 4.9.0 → 5.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +0 -0
- data/README.adoc +91 -117
- data/lib/rubysmith/builders/core.rb +0 -1
- data/lib/rubysmith/cli/actions/amazing_print.rb +25 -0
- data/lib/rubysmith/cli/actions/caliber.rb +25 -0
- data/lib/rubysmith/cli/actions/circle_ci.rb +25 -0
- data/lib/rubysmith/cli/actions/citation.rb +25 -0
- data/lib/rubysmith/cli/actions/community.rb +25 -0
- data/lib/rubysmith/cli/actions/conduct.rb +25 -0
- data/lib/rubysmith/cli/actions/console.rb +25 -0
- data/lib/rubysmith/cli/actions/contributions.rb +25 -0
- data/lib/rubysmith/cli/actions/debug.rb +25 -0
- data/lib/rubysmith/cli/actions/funding.rb +25 -0
- data/lib/rubysmith/cli/actions/git.rb +25 -0
- data/lib/rubysmith/cli/actions/git_hub.rb +25 -0
- data/lib/rubysmith/cli/actions/git_hub_ci.rb +25 -0
- data/lib/rubysmith/cli/actions/git_lint.rb +25 -0
- data/lib/rubysmith/cli/actions/guard.rb +25 -0
- data/lib/rubysmith/cli/actions/license.rb +25 -0
- data/lib/rubysmith/cli/actions/maximum.rb +25 -0
- data/lib/rubysmith/cli/actions/minimum.rb +25 -0
- data/lib/rubysmith/cli/actions/name.rb +23 -0
- data/lib/rubysmith/cli/actions/publish.rb +16 -4
- data/lib/rubysmith/cli/actions/rake.rb +25 -0
- data/lib/rubysmith/cli/actions/readme.rb +25 -0
- data/lib/rubysmith/cli/actions/reek.rb +25 -0
- data/lib/rubysmith/cli/actions/refinements.rb +25 -0
- data/lib/rubysmith/cli/actions/rspec.rb +25 -0
- data/lib/rubysmith/cli/actions/security.rb +25 -0
- data/lib/rubysmith/cli/actions/setup.rb +25 -0
- data/lib/rubysmith/cli/actions/simple_cov.rb +25 -0
- data/lib/rubysmith/cli/actions/versions.rb +25 -0
- data/lib/rubysmith/cli/actions/yard.rb +25 -0
- data/lib/rubysmith/cli/actions/zeitwerk.rb +25 -0
- data/lib/rubysmith/cli/{actions → commands}/build.rb +45 -7
- data/lib/rubysmith/cli/shell.rb +20 -18
- data/lib/rubysmith/configuration/contract.rb +78 -0
- data/lib/rubysmith/configuration/defaults.yml +52 -73
- data/lib/rubysmith/configuration/{content.rb → model.rb} +8 -22
- data/lib/rubysmith/configuration/transformers/current_time.rb +18 -0
- data/lib/rubysmith/configuration/transformers/git_email.rb +21 -0
- data/lib/rubysmith/configuration/transformers/git_hub_user.rb +21 -0
- data/lib/rubysmith/configuration/transformers/git_user.rb +24 -0
- data/lib/rubysmith/configuration/transformers/target_root.rb +18 -0
- data/lib/rubysmith/configuration/transformers/template_root.rb +32 -0
- data/lib/rubysmith/container.rb +23 -3
- data/lib/rubysmith/extensions/milestoner.rb +1 -1
- data/lib/rubysmith/extensions/pragmater.rb +8 -8
- data/lib/rubysmith/extensions/tocer.rb +8 -8
- data/lib/rubysmith/pathway.rb +1 -0
- data/lib/rubysmith/templates/%project_name%/Gemfile.erb +4 -4
- data/rubysmith.gemspec +16 -13
- data.tar.gz.sig +0 -0
- metadata +112 -46
- metadata.gz.sig +0 -0
- data/lib/rubysmith/cli/actions/config.rb +0 -33
- data/lib/rubysmith/cli/actions/container.rb +0 -20
- data/lib/rubysmith/cli/actions/import.rb +0 -11
- data/lib/rubysmith/cli/parser.rb +0 -35
- data/lib/rubysmith/cli/parsers/build.rb +0 -307
- data/lib/rubysmith/cli/parsers/core.rb +0 -72
- data/lib/rubysmith/configuration/enhancers/container.rb +0 -20
- data/lib/rubysmith/configuration/enhancers/current_time.rb +0 -14
- data/lib/rubysmith/configuration/enhancers/git_email.rb +0 -21
- data/lib/rubysmith/configuration/enhancers/git_hub_user.rb +0 -21
- data/lib/rubysmith/configuration/enhancers/git_user.rb +0 -25
- data/lib/rubysmith/configuration/enhancers/template_root.rb +0 -12
- data/lib/rubysmith/configuration/loader.rb +0 -44
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 4bf7aff137172ca7f7959152c9a6550f1453ae79c9f0947048b3f829ae118b5c
|
4
|
+
data.tar.gz: 97a5b9c2fcf8204aa77b84bd159888f93808aa0dcc7693547d0aa3104cb226b2
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: cfbbafd5a69876cd04a2d6d980c3ffccf95efe7a70d595983953bf62efcd557e49433f34dc954069b135e90372f601837c9b9f7ee50534fb0c0b61c2b73c86b9
|
7
|
+
data.tar.gz: 520c7dccfd4bde72ceb2678fbc6e7ceb1d5a246c17261858d22577b92965463998968dbf3cf50e44847c64484aff1fee4795d220364ceeef749fb4bee967450e
|
checksums.yaml.gz.sig
CHANGED
Binary file
|
data/README.adoc
CHANGED
@@ -77,43 +77,19 @@ gem install rubysmith
|
|
77
77
|
From the command line, type: `rubysmith --help`
|
78
78
|
|
79
79
|
....
|
80
|
-
USAGE
|
81
|
-
|
82
|
-
|
83
|
-
|
84
|
-
|
85
|
-
-
|
86
|
-
|
87
|
-
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
--[no-]conduct Add code of conduct documentation. Default: true.
|
94
|
-
--[no-]console Add console script. Default: true.
|
95
|
-
--[no-]contributions Add contributions documentation. Default: true.
|
96
|
-
--[no-]debug Add Debug gem. Default: true.
|
97
|
-
--[no-]funding Add GitHub funding configuration. Default: false.
|
98
|
-
--[no-]git Add Git. Default: true.
|
99
|
-
--[no-]git_hub Add GitHub templates. Default: false.
|
100
|
-
--[no-]git_hub_ci Add GitHub templates. Default: false.
|
101
|
-
--[no-]git-lint Add Git Lint gem. Default: true.
|
102
|
-
--[no-]guard Add Guard gem. Default: true.
|
103
|
-
--[no-]license Add license documentation. Default: true.
|
104
|
-
--max Use maximum/enabled options. Default: false.
|
105
|
-
--min Use minimum/disabled options. Default: false.
|
106
|
-
--[no-]rake Add Rake gem. Default: true.
|
107
|
-
--[no-]readme Add readme documentation. Default: true.
|
108
|
-
--[no-]reek Add Reek gem. Default: true.
|
109
|
-
--[no-]refinements Add Refinements gem. Default: true.
|
110
|
-
--[no-]rspec Add RSpec gem. Default: true.
|
111
|
-
--[no-]security Add security. Default: true.
|
112
|
-
--[no-]setup Add setup script. Default: true.
|
113
|
-
--[no-]simple_cov Add SimpleCov gem. Default: true.
|
114
|
-
--[no-]versions Add version history. Default: true.
|
115
|
-
--[no-]yard Add Yard gem. Default: false.
|
116
|
-
--[no-]zeitwerk Add Zeitwerk gem. Default: true.
|
80
|
+
USAGE
|
81
|
+
rubysmith [OPTIONS]
|
82
|
+
rubysmith COMMAND [OPTIONS]
|
83
|
+
|
84
|
+
OPTIONS
|
85
|
+
-p, --publish VERSION Publish project.
|
86
|
+
-v, --version Show version.
|
87
|
+
-h, --help [COMMAND] Show this message.
|
88
|
+
|
89
|
+
COMMANDS
|
90
|
+
config Manage configuration.
|
91
|
+
Path is dynamic per current directory.
|
92
|
+
build Build new project.
|
117
93
|
....
|
118
94
|
|
119
95
|
==== Build
|
@@ -124,7 +100,7 @@ Most build options are enabled by default. Example:
|
|
124
100
|
|
125
101
|
[source,bash]
|
126
102
|
----
|
127
|
-
rubysmith
|
103
|
+
rubysmith build --name demo
|
128
104
|
----
|
129
105
|
|
130
106
|
Running the above will generate a new `demo` Ruby project. Should you wish to disable specific
|
@@ -132,7 +108,7 @@ options, you can use `--no-*` prefixes. Example:
|
|
132
108
|
|
133
109
|
[source,bash]
|
134
110
|
----
|
135
|
-
rubysmith
|
111
|
+
rubysmith build --name demo --no-debug --no-guard
|
136
112
|
----
|
137
113
|
|
138
114
|
With the above example, both Debug and Guard support would have been disabled when building the
|
@@ -141,7 +117,7 @@ project with bare minimum of options. Example:
|
|
141
117
|
|
142
118
|
[source,bash]
|
143
119
|
----
|
144
|
-
rubysmith
|
120
|
+
rubysmith build --name demo --min
|
145
121
|
----
|
146
122
|
|
147
123
|
The above is essentially the same as building with _all_ options disabled. This is handy in situations where you need to quickly script something up for sharing with others yet still want to avoid using a {bundler_inline_link} script so gem dependencies are not installed each time the code is run.
|
@@ -151,8 +127,8 @@ example, where both minimum and maximum options are used in conjunction with oth
|
|
151
127
|
|
152
128
|
[source,bash]
|
153
129
|
----
|
154
|
-
rubysmith
|
155
|
-
rubysmith
|
130
|
+
rubysmith build --name demo --min --zeitwerk
|
131
|
+
rubysmith build --name demo --max --no-debug
|
156
132
|
----
|
157
133
|
|
158
134
|
With the above examples, the first line will _disable_ all options except Zeitwerk while the second
|
@@ -344,60 +320,61 @@ variables. The default configuration is as follows:
|
|
344
320
|
[source,yaml]
|
345
321
|
----
|
346
322
|
:author:
|
347
|
-
|
348
|
-
|
349
|
-
|
350
|
-
|
351
|
-
|
352
|
-
|
353
|
-
|
354
|
-
|
355
|
-
|
356
|
-
|
357
|
-
|
358
|
-
|
359
|
-
|
360
|
-
|
361
|
-
|
362
|
-
|
363
|
-
|
364
|
-
|
365
|
-
:
|
366
|
-
:
|
367
|
-
:
|
368
|
-
:
|
369
|
-
:
|
370
|
-
:
|
371
|
-
:
|
372
|
-
:
|
373
|
-
:
|
374
|
-
:
|
375
|
-
:
|
376
|
-
:
|
377
|
-
:
|
378
|
-
:
|
379
|
-
:
|
380
|
-
:
|
381
|
-
:
|
382
|
-
|
383
|
-
:
|
384
|
-
:
|
385
|
-
:
|
386
|
-
|
387
|
-
:
|
388
|
-
|
389
|
-
|
390
|
-
|
391
|
-
|
323
|
+
email:
|
324
|
+
family_name:
|
325
|
+
given_name:
|
326
|
+
url:
|
327
|
+
build:
|
328
|
+
amazing_print: true
|
329
|
+
caliber: true
|
330
|
+
circle_ci: false
|
331
|
+
citation: true
|
332
|
+
cli: false
|
333
|
+
community: false
|
334
|
+
conduct: true
|
335
|
+
console: true
|
336
|
+
contributions: true
|
337
|
+
debug: true
|
338
|
+
funding: false
|
339
|
+
git: true
|
340
|
+
git_hub: false
|
341
|
+
git_hub_ci: false
|
342
|
+
git_lint: true
|
343
|
+
guard: true
|
344
|
+
license: true
|
345
|
+
maximum: false
|
346
|
+
minimum: false
|
347
|
+
rake: true
|
348
|
+
readme: true
|
349
|
+
reek: true
|
350
|
+
refinements: true
|
351
|
+
rspec: true
|
352
|
+
security: true
|
353
|
+
setup: true
|
354
|
+
simple_cov: true
|
355
|
+
versions: true
|
356
|
+
yard: false
|
357
|
+
zeitwerk: true
|
358
|
+
citation:
|
359
|
+
affiliation:
|
360
|
+
message: Please use the following metadata when citing this project in your work.
|
361
|
+
orcid:
|
362
|
+
documentation:
|
363
|
+
format: "adoc"
|
364
|
+
extensions:
|
365
|
+
milestoner:
|
366
|
+
documentation:
|
367
|
+
format: "adoc"
|
368
|
+
prefixes:
|
392
369
|
- Fixed
|
393
370
|
- Added
|
394
371
|
- Updated
|
395
372
|
- Removed
|
396
373
|
- Refactored
|
397
|
-
|
398
|
-
|
374
|
+
pragmater:
|
375
|
+
comments:
|
399
376
|
- "# frozen_string_literal: true"
|
400
|
-
:
|
377
|
+
patterns:
|
401
378
|
- "**/*.rake"
|
402
379
|
- "**/*.rb"
|
403
380
|
- "*.gemspec"
|
@@ -409,35 +386,32 @@ variables. The default configuration is as follows:
|
|
409
386
|
- Gemfile
|
410
387
|
- Guardfile
|
411
388
|
- Rakefile
|
412
|
-
|
413
|
-
:
|
389
|
+
tocer:
|
390
|
+
label: "## Table of Contents"
|
391
|
+
patterns:
|
414
392
|
- "README.md"
|
415
|
-
|
416
|
-
:
|
417
|
-
|
418
|
-
:
|
419
|
-
:
|
420
|
-
:
|
421
|
-
|
422
|
-
:
|
423
|
-
|
424
|
-
:
|
425
|
-
:
|
426
|
-
:
|
427
|
-
:
|
428
|
-
:
|
429
|
-
:
|
430
|
-
:
|
431
|
-
:
|
432
|
-
:
|
433
|
-
:
|
434
|
-
|
435
|
-
:version: 0.0.0
|
393
|
+
git_hub:
|
394
|
+
user:
|
395
|
+
license:
|
396
|
+
label: Hippocratic
|
397
|
+
name: hippocratic
|
398
|
+
version: "2.1"
|
399
|
+
project:
|
400
|
+
url:
|
401
|
+
community:
|
402
|
+
conduct:
|
403
|
+
contributions:
|
404
|
+
download:
|
405
|
+
funding:
|
406
|
+
home:
|
407
|
+
issues:
|
408
|
+
license:
|
409
|
+
security:
|
410
|
+
source:
|
411
|
+
versions:
|
412
|
+
version: 0.0.0
|
436
413
|
----
|
437
414
|
|
438
|
-
Feel free to take this default configuration, modify, and save as your own custom
|
439
|
-
`configuration.yml`.
|
440
|
-
|
441
415
|
By customizing your configuration, you can change Rubysmith's default behavior when building
|
442
416
|
projects. This is a great way to define your own specialized settings other than what is provide for
|
443
417
|
you by default. This is also a handy way to provide additional information needed for some of the
|
@@ -523,7 +497,7 @@ place holder is replaced with your project name when generating a new project. E
|
|
523
497
|
https://www.example.com/%project_name%
|
524
498
|
|
525
499
|
# Command
|
526
|
-
rubysmith
|
500
|
+
rubysmith build --name demo
|
527
501
|
|
528
502
|
# Actual (computed result)
|
529
503
|
https://www.example.com/demo
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "refinements/structs"
|
4
|
+
require "sod"
|
5
|
+
|
6
|
+
module Rubysmith
|
7
|
+
module CLI
|
8
|
+
module Actions
|
9
|
+
# Stores Amazing Print flag.
|
10
|
+
class AmazingPrint < Sod::Action
|
11
|
+
include Import[:input]
|
12
|
+
|
13
|
+
using ::Refinements::Structs
|
14
|
+
|
15
|
+
description "Add Amazing Print gem."
|
16
|
+
|
17
|
+
on "--[no-]amazing_print"
|
18
|
+
|
19
|
+
default { Container[:configuration].build_amazing_print }
|
20
|
+
|
21
|
+
def call(value = default) = input.merge!(build_amazing_print: value)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "refinements/structs"
|
4
|
+
require "sod"
|
5
|
+
|
6
|
+
module Rubysmith
|
7
|
+
module CLI
|
8
|
+
module Actions
|
9
|
+
# Stores Caliber flag.
|
10
|
+
class Caliber < Sod::Action
|
11
|
+
include Import[:input]
|
12
|
+
|
13
|
+
using ::Refinements::Structs
|
14
|
+
|
15
|
+
description "Add Caliber gem."
|
16
|
+
|
17
|
+
on "--[no-]caliber"
|
18
|
+
|
19
|
+
default { Container[:configuration].build_caliber }
|
20
|
+
|
21
|
+
def call(value = default) = input.merge!(build_caliber: value)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "refinements/structs"
|
4
|
+
require "sod"
|
5
|
+
|
6
|
+
module Rubysmith
|
7
|
+
module CLI
|
8
|
+
module Actions
|
9
|
+
# Stores Circle CI flag.
|
10
|
+
class CircleCI < Sod::Action
|
11
|
+
include Import[:input]
|
12
|
+
|
13
|
+
using ::Refinements::Structs
|
14
|
+
|
15
|
+
description "Add Circle CI configuration."
|
16
|
+
|
17
|
+
on "--[no-]circle_ci"
|
18
|
+
|
19
|
+
default { Container[:configuration].build_circle_ci }
|
20
|
+
|
21
|
+
def call(value = default) = input.merge!(build_circle_ci: value)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "refinements/structs"
|
4
|
+
require "sod"
|
5
|
+
|
6
|
+
module Rubysmith
|
7
|
+
module CLI
|
8
|
+
module Actions
|
9
|
+
# Stores citation flag.
|
10
|
+
class Citation < Sod::Action
|
11
|
+
include Import[:input]
|
12
|
+
|
13
|
+
using ::Refinements::Structs
|
14
|
+
|
15
|
+
description "Add citation documentation."
|
16
|
+
|
17
|
+
on "--[no-]citation"
|
18
|
+
|
19
|
+
default { Container[:configuration].build_citation }
|
20
|
+
|
21
|
+
def call(value = default) = input.merge!(build_citation: value)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "refinements/structs"
|
4
|
+
require "sod"
|
5
|
+
|
6
|
+
module Rubysmith
|
7
|
+
module CLI
|
8
|
+
module Actions
|
9
|
+
# Stores community flag.
|
10
|
+
class Community < Sod::Action
|
11
|
+
include Import[:input]
|
12
|
+
|
13
|
+
using ::Refinements::Structs
|
14
|
+
|
15
|
+
description "Add community documentation."
|
16
|
+
|
17
|
+
on "--[no-]community"
|
18
|
+
|
19
|
+
default { Container[:configuration].build_community }
|
20
|
+
|
21
|
+
def call(value = default) = input.merge!(build_community: value)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "refinements/structs"
|
4
|
+
require "sod"
|
5
|
+
|
6
|
+
module Rubysmith
|
7
|
+
module CLI
|
8
|
+
module Actions
|
9
|
+
# Stores conduct flag.
|
10
|
+
class Conduct < Sod::Action
|
11
|
+
include Import[:input]
|
12
|
+
|
13
|
+
using ::Refinements::Structs
|
14
|
+
|
15
|
+
description "Add code of conduct documentation."
|
16
|
+
|
17
|
+
on "--[no-]conduct"
|
18
|
+
|
19
|
+
default { Container[:configuration].build_conduct }
|
20
|
+
|
21
|
+
def call(value = default) = input.merge!(build_conduct: value)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "refinements/structs"
|
4
|
+
require "sod"
|
5
|
+
|
6
|
+
module Rubysmith
|
7
|
+
module CLI
|
8
|
+
module Actions
|
9
|
+
# Stores console flag.
|
10
|
+
class Console < Sod::Action
|
11
|
+
include Import[:input]
|
12
|
+
|
13
|
+
using ::Refinements::Structs
|
14
|
+
|
15
|
+
description "Add console script."
|
16
|
+
|
17
|
+
on "--[no-]console"
|
18
|
+
|
19
|
+
default { Container[:configuration].build_console }
|
20
|
+
|
21
|
+
def call(value = default) = input.merge!(build_console: value)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "refinements/structs"
|
4
|
+
require "sod"
|
5
|
+
|
6
|
+
module Rubysmith
|
7
|
+
module CLI
|
8
|
+
module Actions
|
9
|
+
# Stores contributions flag.
|
10
|
+
class Contributions < Sod::Action
|
11
|
+
include Import[:input]
|
12
|
+
|
13
|
+
using ::Refinements::Structs
|
14
|
+
|
15
|
+
description "Add contributions documentation."
|
16
|
+
|
17
|
+
on "--[no-]contributions"
|
18
|
+
|
19
|
+
default { Container[:configuration].build_contributions }
|
20
|
+
|
21
|
+
def call(value = default) = input.merge!(build_contributions: value)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "refinements/structs"
|
4
|
+
require "sod"
|
5
|
+
|
6
|
+
module Rubysmith
|
7
|
+
module CLI
|
8
|
+
module Actions
|
9
|
+
# Stores Debug flag.
|
10
|
+
class Debug < Sod::Action
|
11
|
+
include Import[:input]
|
12
|
+
|
13
|
+
using ::Refinements::Structs
|
14
|
+
|
15
|
+
description "Add Debug gem."
|
16
|
+
|
17
|
+
on "--[no-]debug"
|
18
|
+
|
19
|
+
default { Container[:configuration].build_debug }
|
20
|
+
|
21
|
+
def call(value = default) = input.merge!(build_debug: value)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "refinements/structs"
|
4
|
+
require "sod"
|
5
|
+
|
6
|
+
module Rubysmith
|
7
|
+
module CLI
|
8
|
+
module Actions
|
9
|
+
# Stores funding flag.
|
10
|
+
class Funding < Sod::Action
|
11
|
+
include Import[:input]
|
12
|
+
|
13
|
+
using ::Refinements::Structs
|
14
|
+
|
15
|
+
description "Add GitHub funding configuration."
|
16
|
+
|
17
|
+
on "--[no-]funding"
|
18
|
+
|
19
|
+
default { Container[:configuration].build_funding }
|
20
|
+
|
21
|
+
def call(value = default) = input.merge!(build_funding: value)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "refinements/structs"
|
4
|
+
require "sod"
|
5
|
+
|
6
|
+
module Rubysmith
|
7
|
+
module CLI
|
8
|
+
module Actions
|
9
|
+
# Stores Git flag.
|
10
|
+
class Git < Sod::Action
|
11
|
+
include Import[:input]
|
12
|
+
|
13
|
+
using ::Refinements::Structs
|
14
|
+
|
15
|
+
description "Add Git repository."
|
16
|
+
|
17
|
+
on "--[no-]git"
|
18
|
+
|
19
|
+
default { Container[:configuration].build_git }
|
20
|
+
|
21
|
+
def call(value = default) = input.merge!(build_git: value)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "refinements/structs"
|
4
|
+
require "sod"
|
5
|
+
|
6
|
+
module Rubysmith
|
7
|
+
module CLI
|
8
|
+
module Actions
|
9
|
+
# Stores GitHub flag.
|
10
|
+
class GitHub < Sod::Action
|
11
|
+
include Import[:input]
|
12
|
+
|
13
|
+
using ::Refinements::Structs
|
14
|
+
|
15
|
+
description "Add GitHub templates."
|
16
|
+
|
17
|
+
on "--[no-]git_hub"
|
18
|
+
|
19
|
+
default { Container[:configuration].build_git_hub }
|
20
|
+
|
21
|
+
def call(value = default) = input.merge!(build_git_hub: value)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "refinements/structs"
|
4
|
+
require "sod"
|
5
|
+
|
6
|
+
module Rubysmith
|
7
|
+
module CLI
|
8
|
+
module Actions
|
9
|
+
# Stores GitHub CI flag.
|
10
|
+
class GitHubCI < Sod::Action
|
11
|
+
include Import[:input]
|
12
|
+
|
13
|
+
using ::Refinements::Structs
|
14
|
+
|
15
|
+
description "Add GitHub continuous integration."
|
16
|
+
|
17
|
+
on "--[no-]git_hub_ci"
|
18
|
+
|
19
|
+
default { Container[:configuration].build_git_hub_ci }
|
20
|
+
|
21
|
+
def call(value = default) = input.merge!(build_git_hub_ci: value)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|
@@ -0,0 +1,25 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
require "refinements/structs"
|
4
|
+
require "sod"
|
5
|
+
|
6
|
+
module Rubysmith
|
7
|
+
module CLI
|
8
|
+
module Actions
|
9
|
+
# Stores Git Lint flag.
|
10
|
+
class GitLint < Sod::Action
|
11
|
+
include Import[:input]
|
12
|
+
|
13
|
+
using ::Refinements::Structs
|
14
|
+
|
15
|
+
description "Add Git Lint gem."
|
16
|
+
|
17
|
+
on "--[no-]git-lint"
|
18
|
+
|
19
|
+
default { Container[:configuration].build_git_lint }
|
20
|
+
|
21
|
+
def call(value = default) = input.merge!(build_git_lint: value)
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
25
|
+
end
|