rexer 0.15.0 → 0.16.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/README.md +12 -12
- data/lib/rexer/cli.rb +6 -6
- data/lib/rexer/commands/update.rb +15 -7
- data/lib/rexer/version.rb +1 -1
- metadata +3 -3
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 61d1b3b0172a3db2da03ac1f428f447a5296df8430fabaf21f4ce1cb1f96ce41
|
4
|
+
data.tar.gz: 8dc2852d1ef7f6052d2c8d09cba035276fd7b039bc109be732d0599142a27059
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 72c9335b6be10bb6a7220d3b632ce2d0c20719165b5e93d17244e5f8c4412ea8fad0b36e805ae1cba51ef652d77afce8dd98676bfe1dcfb0b14e24249cf4fa8d
|
7
|
+
data.tar.gz: b708a563d706ba42aad33a1daa40a5d7a7c4365c481be516d423a2a05176f8b4c0f6ef68afae27ca571ba55a99f03b3dbf51e10de497f91f672f781ff87a762a
|
data/README.md
CHANGED
@@ -79,23 +79,23 @@ This command uninstalls the extensions and deletes the `.extensions.lock`.
|
|
79
79
|
```
|
80
80
|
$ rex
|
81
81
|
Commands:
|
82
|
-
rex envs
|
83
|
-
rex help [COMMAND]
|
84
|
-
rex init
|
85
|
-
rex install [
|
86
|
-
rex reinstall [
|
87
|
-
rex state
|
88
|
-
rex switch [
|
89
|
-
rex uninstall
|
90
|
-
rex update
|
91
|
-
rex version
|
82
|
+
rex envs # Show the list of environments and their extensions defined in .extensions.rb
|
83
|
+
rex help [COMMAND] # Describe available commands or one specific command
|
84
|
+
rex init # Create a new .extensions.rb file
|
85
|
+
rex install [env] # Install the definitions in .extensions.rb for the specified environment
|
86
|
+
rex reinstall [extension] # Uninstall extensions for the currently installed environment and install them again
|
87
|
+
rex state # Show the current state of the installed extensions
|
88
|
+
rex switch [env] # Uninstall extensions for the currently installed environment and install extensions for the specified environment
|
89
|
+
rex uninstall # Uninstall extensions for the currently installed environment based on the state in .extensions.lock and remove the lock file
|
90
|
+
rex update [extensions...] # Update extensions for the currently installed environment to the latest version if extensions are updateable. If no extensions are specified, all extensions are updated
|
91
|
+
rex version # Show Rexer version
|
92
92
|
|
93
93
|
Options:
|
94
94
|
-v, [--verbose], [--no-verbose], [--skip-verbose] # Detailed output
|
95
95
|
-q, [--quiet], [--no-quiet], [--skip-quiet] # Minimal output
|
96
96
|
```
|
97
97
|
|
98
|
-
### rex install [
|
98
|
+
### rex install [env]
|
99
99
|
|
100
100
|
Installs extensions in the specified ENV environment and makes them available for use. Specifically, it does the following:
|
101
101
|
|
@@ -106,7 +106,7 @@ If the specified ENV is currently installed, it compares the current `.extension
|
|
106
106
|
* Uninstalls deleted extensions (the `uninstalled` hook is executed).
|
107
107
|
* Reload extensions whose source settings has changed (for example, the `branch` or `tag` has changed) and runs the database migration if necessary.
|
108
108
|
|
109
|
-
### rex update
|
109
|
+
### rex update [extensions...]
|
110
110
|
|
111
111
|
Loads `.extensions.lock` and updates the currently installed extensions to the latest version. `.extensions.rb` is NOT referenced in this command.
|
112
112
|
|
data/lib/rexer/cli.rb
CHANGED
@@ -15,7 +15,7 @@ module Rexer
|
|
15
15
|
Commands::Init.new.call
|
16
16
|
end
|
17
17
|
|
18
|
-
desc "install [
|
18
|
+
desc "install [env]", "Install the definitions in .extensions.rb for the specified environment"
|
19
19
|
def install(env = "default")
|
20
20
|
Commands::Install.new.call(env&.to_sym)
|
21
21
|
end
|
@@ -25,19 +25,19 @@ module Rexer
|
|
25
25
|
Commands::Uninstall.new.call
|
26
26
|
end
|
27
27
|
|
28
|
-
desc "reinstall [
|
28
|
+
desc "reinstall [extension]", "Uninstall extensions for the currently installed environment and install them again"
|
29
29
|
def reinstall(extension_name)
|
30
30
|
Commands::Reinstall.new.call(extension_name)
|
31
31
|
end
|
32
32
|
|
33
|
-
desc "switch [
|
33
|
+
desc "switch [env]", "Uninstall extensions for the currently installed environment and install extensions for the specified environment"
|
34
34
|
def switch(env = "default")
|
35
35
|
Commands::Switch.new.call(env&.to_sym)
|
36
36
|
end
|
37
37
|
|
38
|
-
desc "update", "Update extensions for the currently installed environment to the latest version if extensions are updateable"
|
39
|
-
def update
|
40
|
-
Commands::Update.new.call
|
38
|
+
desc "update [extensions...]", "Update extensions for the currently installed environment to the latest version if extensions are updateable. If no extensions are specified, all extensions are updated"
|
39
|
+
def update(*extension_names)
|
40
|
+
Commands::Update.new.call(extension_names)
|
41
41
|
end
|
42
42
|
|
43
43
|
desc "state", "Show the current state of the installed extensions"
|
@@ -7,29 +7,37 @@ module Rexer
|
|
7
7
|
@lock_definition = Definition::Lock.load_data
|
8
8
|
end
|
9
9
|
|
10
|
-
def call
|
10
|
+
def call(extension_names)
|
11
11
|
return if no_lock_file_found
|
12
12
|
|
13
|
-
|
14
|
-
|
13
|
+
extension_names ||= []
|
14
|
+
extension_names.map!(&:to_sym)
|
15
|
+
|
16
|
+
update_themes(extension_names)
|
17
|
+
update_plugins(extension_names)
|
15
18
|
end
|
16
19
|
|
17
20
|
private
|
18
21
|
|
19
22
|
attr_reader :lock_definition
|
20
23
|
|
21
|
-
def update_plugins
|
22
|
-
lock_definition.plugins.each do
|
24
|
+
def update_plugins(extension_names)
|
25
|
+
filter_by_name(lock_definition.plugins, extension_names).each do
|
23
26
|
call_action Extension::Plugin::Update, _1
|
24
27
|
end
|
25
28
|
end
|
26
29
|
|
27
|
-
def update_themes
|
28
|
-
lock_definition.themes.each do
|
30
|
+
def update_themes(extension_names)
|
31
|
+
filter_by_name(lock_definition.themes, extension_names).each do
|
29
32
|
call_action Extension::Theme::Update, _1
|
30
33
|
end
|
31
34
|
end
|
32
35
|
|
36
|
+
def filter_by_name(extensions, extension_names)
|
37
|
+
return extensions unless extension_names.any?
|
38
|
+
extensions.select { extension_names.include?(_1.name) }
|
39
|
+
end
|
40
|
+
|
33
41
|
def no_lock_file_found
|
34
42
|
lock_definition.nil?.tap { |result|
|
35
43
|
puts "No lock file found" if result
|
data/lib/rexer/version.rb
CHANGED
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rexer
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 0.16.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Katsuya Hidaka
|
8
8
|
autorequire:
|
9
9
|
bindir: exe
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2025-01-01 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
@@ -168,7 +168,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
168
168
|
requirements:
|
169
169
|
- - ">="
|
170
170
|
- !ruby/object:Gem::Version
|
171
|
-
version: 3.
|
171
|
+
version: 3.1.0
|
172
172
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
173
173
|
requirements:
|
174
174
|
- - ">="
|