monorepo 0.2.0 → 0.2.1

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA256:
3
- metadata.gz: 2e38fc26186e81555cb7bfd02fbc29465686215904a739fe515115c63d61bc8c
4
- data.tar.gz: c8ca018fb6e1bcb9a83d3d129afd0676a7371ab8f93d488f1fb945126f69ce3a
2
+ SHA1:
3
+ metadata.gz: 334e5e67426609fc762c2b86ae367065d3b3986b
4
+ data.tar.gz: 0aa5aa993684f7cb290b69e3ebe56a725788a6e8
5
5
  SHA512:
6
- metadata.gz: 1a0297a8193fe091be2be55ac5f2f0c51bb4aa8b87cd2d68ffdcb85800a30f8eb36c05b90f3936a55b54ff7ef689b4b27fab0e85b356a9f4edbe42b3c889e3d5
7
- data.tar.gz: 30fe9513dc58b6e79c60d1f9db9512e301e39ec8668ed23b5e514bfbbc0dc5b41d47a6bd0582f258cc912caa353500ca4881f92ec9df6e2d111ba9d15b243073
6
+ metadata.gz: c262a41c4276652c254abe74e0dc1733dcdaa0832c45bdf728f4d6d7d8768646f63954b6a58cb8a5111254a9d47b80761454afae4828d5371c1e844f11631037
7
+ data.tar.gz: 04a6a830527f8594c4065eaa4f7282ac0034d60999887afc7c5530e0168f7a501db4f654fca71cf88093635e281e2a7e5eb9b5ff0840a0c05656dbc5bde51d1a
data/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
  [![Gem Version](https://badge.fury.io/rb/monorepo.svg)](https://badge.fury.io/rb/monorepo)
4
4
  [![Build Status](https://travis-ci.org/kamataryo/monorepo.svg?branch=master)](https://travis-ci.org/kamataryo/monorepo)
5
5
 
6
- [under-development] Ruby based simple monorepo management tool like [Lerna](https://lernajs.io/).
6
+ Ruby based simple monorepo management tool like [Lerna](https://lernajs.io/).
7
7
  Monorepo is a single repository which hosts multiple libraries.
8
8
  You can arrange and integrate lint, test, release and other workflows with monorepo.
9
9
  [Babel](https://babeljs.io/), [ESLint](https://eslint.org/) and other projects likely has plugin ecosystem take monorepo strategy.
@@ -12,20 +12,37 @@ You can arrange and integrate lint, test, release and other workflows with monor
12
12
 
13
13
  Install it yourself as:
14
14
 
15
- $ gem install monorepo
15
+ ```
16
+ $ gem install monorepo
17
+ ```
16
18
 
17
- ## Usage
19
+ ## CLI reference
18
20
 
19
- ## `monorepo init`
21
+ ### `monorepo init`
20
22
 
21
- Initialize Monorepo root repo.
23
+ Initialize your project for `monorepo`.
22
24
 
23
25
  ```shell
26
+ $ mkdir project_name
27
+ $ cd project_name
24
28
  $ monorepo init
25
- $ monorepo init --config_filename ./Monorepofile
26
- $ monorepo init -c ./Monorepofile
27
- $ monorepo init --gems specified_gem_folder
28
- $ monorepo init -g specified_gem_folder
29
+ ```
30
+
31
+ Or you can specify some options.
32
+
33
+ ```shell
34
+ # Specify config file name
35
+ $ monorepo init --config_filename ./your_monorepo_config_file
36
+ $ monorepo init -c ./your_monorepo_config_file
37
+
38
+ # Specify gems directory name
39
+ $ monorepo init --gems specified_gem_dir
40
+ $ monorepo init -g specified_gem_dir
41
+
42
+ # Specify bundler option to use `bundle exec` or not.
43
+ # with `yes`, `y` or `true`, `bundle exec` are always attached with subcommand execution.
44
+ $ monorepo init -b YES
45
+ $ monorepo init --bundler YES
29
46
  ```
30
47
 
31
48
  ```shell
@@ -36,7 +53,7 @@ $ tree .
36
53
  └── gems
37
54
  ```
38
55
 
39
- You can add and arrange any numbers of child gems inside `./gems` folder.
56
+ You can add and arrange any numbers of child gems inside `./gems` directory.
40
57
 
41
58
  ```shell
42
59
  $ tree .
@@ -47,13 +64,12 @@ $ tree .
47
64
  └── gem-b
48
65
  ```
49
66
 
50
- ## `monorepo exec`
67
+ ### `monorepo exec`
51
68
 
52
69
  Exec commands in each child gems.
53
70
 
54
71
  ```shell
55
72
  $ monorepo exec [COMMAND]
56
- $ monorepo exec [COMMAND] -c ./Monorepofile
57
73
  ```
58
74
 
59
75
  An example:
@@ -70,13 +86,30 @@ $ tree .
70
86
  └── Gemfile
71
87
  ```
72
88
 
73
- ## `monorepo rake`
89
+ ```shell
90
+ # use bundler option
91
+ $ .monorepo exec -b ls
92
+ executing `bundle exec ls` at gems/gem-a...
93
+ /path/to/monorepo/root/gems/gem-a
94
+ Gemfile Gemfile.lock
95
+ executing `bundle exec ls` at gems/gem-b...
96
+ /path/to/monorepo/root/gems/gem-b
97
+ Gemfile Gemfile.lock
98
+ ```
99
+
100
+ ### `monorepo rake`
74
101
 
75
102
  Run rake task in each child gems.
76
103
 
77
104
  ```shell
78
- $ monorepo rake
79
- $ monorepo rake [TASK]
105
+ $ monorepo rake # with default rake task
106
+ $ monorepo rake [TASK] # with specified rake task
107
+ ```
108
+
109
+ ## Usage
110
+
111
+ ```
112
+ $ monorepo rake spec
80
113
  ```
81
114
 
82
115
  ## Development
@@ -0,0 +1,9 @@
1
+ # Release Note
2
+
3
+ ## 0.2.1
4
+
5
+ - update docs
6
+
7
+ ## 0.2.0
8
+
9
+ - Non zero exit status if Non-zero subcommand exit
@@ -1,5 +1,5 @@
1
1
  class MonorepoCLI
2
- desc 'bootstrap', 'bootstrap each repo'
2
+ desc 'bootstrap', 'Bootstrap each child repository'
3
3
  method_option :config_filename, aliases: '-c'
4
4
 
5
5
  def bootstrap(*args)
@@ -1,7 +1,7 @@
1
1
  class MonorepoCLI
2
2
  EXIT_STATUS_ZERO = 0
3
3
 
4
- desc 'exec [COMMAND]', 'exec commands at all the monorepo repo'
4
+ desc 'exec [COMMAND]', 'Execute a command for each child repository'
5
5
  method_option :config_filename, aliases: '-c'
6
6
  method_option :bundler, aliases: '-b'
7
7
 
@@ -1,7 +1,7 @@
1
1
  require 'yaml'
2
2
 
3
3
  class MonorepoCLI
4
- desc 'init', 'init monorepo repo'
4
+ desc 'init', 'Initialize current working directory for monorepo'
5
5
  method_option :gems, aliases: '-g'
6
6
  method_option :config_filename, aliases: '-c'
7
7
  method_option :bundler, aliases: '-b'
@@ -1,5 +1,5 @@
1
1
  class MonorepoCLI
2
- desc 'ls', 'list all repo'
2
+ desc 'ls', 'List all child repositories'
3
3
  method_option :config_filename, aliases: '-c'
4
4
 
5
5
  def ls
@@ -26,4 +26,11 @@ class MonorepoCLI
26
26
 
27
27
  puts subdirs.join("\n")
28
28
  end
29
+
30
+ desc 'list', 'List all child repositories'
31
+ method_option :config_filename, aliases: '-c'
32
+
33
+ def list
34
+ self.ls
35
+ end
29
36
  end
@@ -1,5 +1,5 @@
1
1
  class MonorepoCLI
2
- desc 'rake [command]', 'exec rake task at all the monorepo repo'
2
+ desc 'rake [command]', 'Execute `rake` for each child repository'
3
3
  method_option :config_filename, aliases: '-c'
4
4
  method_option :bundler, aliases: '-b'
5
5
 
@@ -1,5 +1,5 @@
1
1
  class MonorepoCLI
2
- desc 'version', 'monorepo version info'
2
+ desc 'version', 'Display monorepo version information'
3
3
  def version
4
4
  STDOUT.write "#{VERSION}\n"
5
5
  end
@@ -1 +1 @@
1
- MONOREPO_VERSION = '0.2.0'.freeze
1
+ MONOREPO_VERSION = '0.2.1'.freeze
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: monorepo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - kamataryo
@@ -98,6 +98,7 @@ files:
98
98
  - Gemfile
99
99
  - LICENSE.txt
100
100
  - README.md
101
+ - RELEASE_NOTE.md
101
102
  - Rakefile
102
103
  - bin/console
103
104
  - bin/setup
@@ -131,7 +132,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
131
132
  version: '0'
132
133
  requirements: []
133
134
  rubyforge_project:
134
- rubygems_version: 2.7.3
135
+ rubygems_version: 2.6.11
135
136
  signing_key:
136
137
  specification_version: 4
137
138
  summary: Monorepo management tool