souls 0.24.7 → 0.24.11
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/README.md +1 -3
- data/exe/souls +31 -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_worker_version +1 -0
- metadata +17 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: '08ded47eabab02b392e0032917f4209d1fa6c33e799df1490313e6e7d7458da2'
|
4
|
+
data.tar.gz: 83ef4754681c0e077ebce313e6ee23882a84ad69deaa9d5536d2011dbf7d0dc5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 4bf499775966a57709d93f1094f2fd03a06439b524ab3d3c00a385b46d8caaeb628a3b58f59caa93bf0828672670035772ccb524ee9937db2f2a21c23274634e
|
7
|
+
data.tar.gz: a7ed6ebf27577490cb63f1c3eb64b9c5573c3714491e3c664029488aa26e0fb03a384478b84449304026e382b55ac7857e622ed0aa0d1b0abd37690d6be43e8d
|
data/README.md
CHANGED
@@ -102,9 +102,7 @@ souls gem:update
|
|
102
102
|
Souls.configure do |config|
|
103
103
|
config.app = "souls-api"
|
104
104
|
config.project_id = "souls-api"
|
105
|
-
config.strain = "
|
106
|
-
config.api_repo = "elsoul/souls_api"
|
107
|
-
config.worker_repo = "elsoul/souls_worker"
|
105
|
+
config.strain = "api"
|
108
106
|
config.worker_endpoint = "https://worker.com"
|
109
107
|
config.fixed_gems = ["selenium-webdriver", "pg"]
|
110
108
|
end
|
data/exe/souls
CHANGED
@@ -95,17 +95,41 @@ 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
|
+
sleep(5)
|
120
|
+
puts("before add")
|
121
|
+
system("git add .")
|
122
|
+
sleep(2)
|
123
|
+
puts("before commit")
|
124
|
+
system("git commit -m 'souls update v#{souls_new_ver}'")
|
125
|
+
sleep(2)
|
126
|
+
puts("before build")
|
127
|
+
system("rake build")
|
128
|
+
system("rake release")
|
129
|
+
Whirly.status = Paint["soul-v#{souls_new_ver} successfully updated!"]
|
108
130
|
end
|
131
|
+
when "update"
|
132
|
+
puts(Paint["Coming soon..", :cyan])
|
109
133
|
when "add"
|
110
134
|
graphql_class = ARGV[1]
|
111
135
|
case graphql_class
|
@@ -234,4 +258,5 @@ begin
|
|
234
258
|
end
|
235
259
|
rescue StandardError => e
|
236
260
|
puts(Paint[e, :red])
|
261
|
+
puts(e.backtrace)
|
237
262
|
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
|
+
return Souls::VERSION.split(".").map(&:to_i)
|
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.11
|
@@ -0,0 +1 @@
|
|
1
|
+
v0.24.11
|
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.11
|
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,8 @@ 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_worker_version
|
97
113
|
homepage: https://souls.elsoul.nl
|
98
114
|
licenses:
|
99
115
|
- Apache-2.0
|