souls 0.24.7 → 0.24.8
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/exe/souls +23 -6
- data/lib/souls.rb +61 -13
- data/lib/souls/version.rb +1 -1
- data/lib/souls/versions/.souls_api_version +1 -0
- data/lib/souls/versions/.souls_version +1 -0
- data/lib/souls/versions/.souls_worker_version +1 -0
- metadata +18 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 5e1ce66f5d9dc4581e6283e4585ebaaa91dcbbf6595f9c723f1110ecefaf9683
|
|
4
|
+
data.tar.gz: c6b20a59319f44a24beea293c5ea4c5948d121230d2220cfe6292fa789cfbfdf
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 301c64176cb961f8e88532e06761c97d894c3c878674773e950275ecf7e83fad4ccd5d8a8985ab9178306d647716679dfcca391081ce59bf838a070e18510888
|
|
7
|
+
data.tar.gz: 4df80954681e798712153e297c6662d3faf9d8c6241bcb7ac8dc8094b65b204a336f6eeff375743de5fe3715b5045cf07d1daf45a2a2ef3f4a69e52a7fe847ee
|
data/exe/souls
CHANGED
|
@@ -95,17 +95,33 @@ begin
|
|
|
95
95
|
Souls.update_gemfile
|
|
96
96
|
Whirly.status = "Done!"
|
|
97
97
|
end
|
|
98
|
-
when "
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
98
|
+
when "release"
|
|
99
|
+
current_souls_ver = Souls::VERSION.strip.split(".").map(&:to_i)
|
|
100
|
+
prompt = TTY::Prompt.new
|
|
101
|
+
choices = [
|
|
102
|
+
"1. Patch(#{Souls.version_detector(current_ver: current_souls_ver, update_kind: 'patch')})",
|
|
103
|
+
"2. Minor(#{Souls.version_detector(current_ver: current_souls_ver, update_kind: 'minor')})",
|
|
104
|
+
"3. Major(#{Souls.version_detector(current_ver: current_souls_ver, update_kind: 'major')})"
|
|
105
|
+
]
|
|
106
|
+
choice_num = prompt.select("Select Version: ", choices)[0].to_i
|
|
107
|
+
update_kinds = %w[patch minor major]
|
|
108
|
+
update_kind = update_kinds[choice_num - 1]
|
|
109
|
+
souls_new_ver = Souls.version_detector(current_ver: current_souls_ver, update_kind: update_kind)
|
|
102
110
|
|
|
103
111
|
status = Paint["Saving Repo...", :yellow]
|
|
104
112
|
Whirly.start(spinner: "clock", interval: 420, stop: "🎉") do
|
|
105
113
|
Whirly.status = status
|
|
106
|
-
|
|
107
|
-
|
|
114
|
+
%w[api worker].each do |s_name|
|
|
115
|
+
result = Paint[Souls.update_repo(service_name: s_name, update_kind: update_kind), :green]
|
|
116
|
+
Whirly.status = result
|
|
117
|
+
end
|
|
118
|
+
Souls.overwrite_version(new_version: souls_new_ver)
|
|
119
|
+
system("rake build")
|
|
120
|
+
system("rake release")
|
|
121
|
+
Whirly.status = Paint["soul-v#{souls_new_ver} successfully updated!"]
|
|
108
122
|
end
|
|
123
|
+
when "update"
|
|
124
|
+
puts(Paint["Coming soon..", :cyan])
|
|
109
125
|
when "add"
|
|
110
126
|
graphql_class = ARGV[1]
|
|
111
127
|
case graphql_class
|
|
@@ -234,4 +250,5 @@ begin
|
|
|
234
250
|
end
|
|
235
251
|
rescue StandardError => e
|
|
236
252
|
puts(Paint[e, :red])
|
|
253
|
+
puts(e.backtrace)
|
|
237
254
|
end
|
data/lib/souls.rb
CHANGED
|
@@ -10,6 +10,7 @@ require "net/http"
|
|
|
10
10
|
require "paint"
|
|
11
11
|
require "whirly"
|
|
12
12
|
require "google/cloud/firestore"
|
|
13
|
+
require "tty-prompt"
|
|
13
14
|
|
|
14
15
|
module Souls
|
|
15
16
|
SOULS_METHODS = %w[
|
|
@@ -167,20 +168,20 @@ module Souls
|
|
|
167
168
|
end
|
|
168
169
|
end
|
|
169
170
|
|
|
170
|
-
def update_repo(service_name: "api")
|
|
171
|
+
def update_repo(service_name: "api", update_kind: "patch")
|
|
171
172
|
current_dir_name = FileUtils.pwd.to_s.match(%r{/([^/]+)/?$})[1]
|
|
172
|
-
|
|
173
|
-
new_ver =
|
|
173
|
+
current_ver = get_latest_version_txt(service_name: service_name)
|
|
174
|
+
new_ver = version_detector(current_ver: current_ver, update_kind: update_kind)
|
|
174
175
|
bucket_url = "gs://souls-bucket/boilerplates"
|
|
175
176
|
file_name = "#{service_name}-v#{new_ver}.tgz"
|
|
176
177
|
release_name = "#{service_name}-latest.tgz"
|
|
177
178
|
|
|
178
179
|
case current_dir_name
|
|
179
180
|
when "souls"
|
|
180
|
-
system("echo 'v#{new_ver}' >
|
|
181
|
+
system("echo 'v#{new_ver}' > lib/souls/versions/.souls_#{service_name}_version")
|
|
181
182
|
system("cd apps/ && tar -czf ../#{service_name}.tgz #{service_name}/ && cd ..")
|
|
182
183
|
when "api", "worker", "console", "admin", "media"
|
|
183
|
-
system("echo 'v#{new_ver}' >
|
|
184
|
+
system("echo 'v#{new_ver}' > lib/souls/versions/.souls_#{service_name}_version")
|
|
184
185
|
system("cd .. && tar -czf ../#{service_name}.tgz #{service_name}/ && cd #{service_name}")
|
|
185
186
|
else
|
|
186
187
|
raise(StandardError, "You are at wrong directory!")
|
|
@@ -188,18 +189,52 @@ module Souls
|
|
|
188
189
|
|
|
189
190
|
system("gsutil cp #{service_name}.tgz #{bucket_url}/#{service_name.pluralize}/#{file_name}")
|
|
190
191
|
system("gsutil cp #{service_name}.tgz #{bucket_url}/#{service_name.pluralize}/#{release_name}")
|
|
191
|
-
file_url = "https://storage.googleapis.com/souls-bucket/boilerplates/#{service_name.pluralize}/#{file_name}"
|
|
192
|
-
version_log(service_name: service_name, version_counter: new_ver, file_url: file_url)
|
|
193
192
|
FileUtils.rm("#{service_name}.tgz")
|
|
194
193
|
"#{service_name}-v#{new_ver} Succefully Stored to GCS! "
|
|
195
194
|
end
|
|
196
195
|
|
|
197
|
-
def
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
196
|
+
def version_detector(current_ver: [0, 0, 1], update_kind: "patch")
|
|
197
|
+
case update_kind
|
|
198
|
+
when "patch"
|
|
199
|
+
"#{current_ver[0]}.#{current_ver[1]}.#{current_ver[2] + 1}"
|
|
200
|
+
when "minor"
|
|
201
|
+
"#{current_ver[0]}.#{current_ver[1] + 1}.0"
|
|
202
|
+
when "major"
|
|
203
|
+
"#{current_ver[0] + 1}.0.0"
|
|
204
|
+
else
|
|
205
|
+
raise(StandardError, "Wrong version!")
|
|
206
|
+
end
|
|
207
|
+
end
|
|
208
|
+
|
|
209
|
+
def overwrite_version(new_version: "0.1.1")
|
|
210
|
+
FileUtils.rm("./lib/souls/version.rb")
|
|
211
|
+
file_path = "./lib/souls/version.rb"
|
|
212
|
+
File.open(file_path, "w") do |f|
|
|
213
|
+
f.write(<<~TEXT)
|
|
214
|
+
module Souls
|
|
215
|
+
VERSION = "#{new_version}".freeze
|
|
216
|
+
public_constant :VERSION
|
|
217
|
+
end
|
|
218
|
+
TEXT
|
|
219
|
+
end
|
|
220
|
+
true
|
|
221
|
+
rescue StandardError, e
|
|
222
|
+
raise(StandardError, e)
|
|
223
|
+
end
|
|
224
|
+
|
|
225
|
+
def get_latest_version_txt(service_name: "api")
|
|
226
|
+
current_dir_name = FileUtils.pwd.to_s.match(%r{/([^/]+)/?$})[1]
|
|
227
|
+
case current_dir_name
|
|
228
|
+
when "souls"
|
|
229
|
+
file_path = "./lib/souls/versions/.souls_version"
|
|
230
|
+
when "api", "worker", "console", "admin", "media"
|
|
231
|
+
file_path = ".../lib/souls/versions/.souls_#{service_name}_version"
|
|
232
|
+
else
|
|
233
|
+
raise(StandardError, "You are at wrong directory!")
|
|
234
|
+
end
|
|
235
|
+
File.open(file_path, "r") do |f|
|
|
236
|
+
f.readlines[0].strip.split(".").map(&:to_i)
|
|
237
|
+
end
|
|
203
238
|
end
|
|
204
239
|
|
|
205
240
|
def get_latest_version(service_name: "api")
|
|
@@ -221,6 +256,19 @@ module Souls
|
|
|
221
256
|
end
|
|
222
257
|
end
|
|
223
258
|
|
|
259
|
+
def detect_change
|
|
260
|
+
git_status = `git status`
|
|
261
|
+
result =
|
|
262
|
+
%w[api worker].map do |service_name|
|
|
263
|
+
if git_status.include?("apps/#{service_name}/")
|
|
264
|
+
service_name
|
|
265
|
+
else
|
|
266
|
+
next
|
|
267
|
+
end
|
|
268
|
+
end
|
|
269
|
+
result.compact
|
|
270
|
+
end
|
|
271
|
+
|
|
224
272
|
def configure
|
|
225
273
|
self.configuration ||= Configuration.new
|
|
226
274
|
yield(configuration)
|
data/lib/souls/version.rb
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
v0.24.8
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
0.24.7
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
v0.24.8
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: souls
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.24.
|
|
4
|
+
version: 0.24.8
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- POPPIN-FUMI
|
|
@@ -40,6 +40,20 @@ dependencies:
|
|
|
40
40
|
- - '='
|
|
41
41
|
- !ruby/object:Gem::Version
|
|
42
42
|
version: 2.2.1
|
|
43
|
+
- !ruby/object:Gem::Dependency
|
|
44
|
+
name: tty-prompt
|
|
45
|
+
requirement: !ruby/object:Gem::Requirement
|
|
46
|
+
requirements:
|
|
47
|
+
- - '='
|
|
48
|
+
- !ruby/object:Gem::Version
|
|
49
|
+
version: 0.23.1
|
|
50
|
+
type: :runtime
|
|
51
|
+
prerelease: false
|
|
52
|
+
version_requirements: !ruby/object:Gem::Requirement
|
|
53
|
+
requirements:
|
|
54
|
+
- - '='
|
|
55
|
+
- !ruby/object:Gem::Version
|
|
56
|
+
version: 0.23.1
|
|
43
57
|
- !ruby/object:Gem::Dependency
|
|
44
58
|
name: whirly
|
|
45
59
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -94,6 +108,9 @@ files:
|
|
|
94
108
|
- lib/souls/generate/type.rb
|
|
95
109
|
- lib/souls/init.rb
|
|
96
110
|
- lib/souls/version.rb
|
|
111
|
+
- lib/souls/versions/.souls_api_version
|
|
112
|
+
- lib/souls/versions/.souls_version
|
|
113
|
+
- lib/souls/versions/.souls_worker_version
|
|
97
114
|
homepage: https://souls.elsoul.nl
|
|
98
115
|
licenses:
|
|
99
116
|
- Apache-2.0
|