bld 0.1.6 → 0.1.7

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.
Files changed (5) hide show
  1. checksums.yaml +4 -4
  2. data/bin/bld +1 -1
  3. data/bin/build +1 -1
  4. data/lib/commands.rb +44 -5
  5. metadata +65 -9
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 23ca92095150f9e2e36d9a2b64946ab21047349387aa7a6eebefc10e7f8227d3
4
- data.tar.gz: f46aba8b557a61ee3ac3b41c366a1be1ea3c608e82e8cbf5ef8d1851fca7022d
3
+ metadata.gz: 0a83ec4051e6559929aaf5a9bd63b4942e720a38e1646585b45dd92118dd9c64
4
+ data.tar.gz: 4830cfc9f99c939fe2d6d5cf5cb51d8f1944006d9cd100398def42bb9f2b53f5
5
5
  SHA512:
6
- metadata.gz: 5ca6e41446dbceea06b380d9e47b57e5b5b585f3b6a238c8c50d8a24c4bd6b613619771aa13d538cc7fe5c9f0c2cf63024a78a88a5d46f61048b05969fd089b7
7
- data.tar.gz: d5a535ce8825b02b2d91f4df6fea86f71ccd3f58b285708cd3b21ecff065d8f58be849d973838f208a6cba5f7c79756f3227cfce9cae885acdeb06aad0206856
6
+ metadata.gz: 3f46dbef1d40982c49622fae11a1ac9c3122e0e6c976daad1140e1d2c560edafbdd65a0dd9419ba54b03e732502e6235e32158ce6ea574a1e7eb18d073867128
7
+ data.tar.gz: d731e18fecd9c703d9bc992ffbcaf467d877ad5dd9601f9f42b774cb576268eb67c56b451d02231df21510d1cccb8390fdb990a31da70a21ad4f4fac540588de
data/bin/bld CHANGED
@@ -20,7 +20,7 @@ class BuildCLI
20
20
 
21
21
  def run
22
22
  program :name, 'Build CLI'
23
- program :version, '0.1.6'
23
+ program :version, '0.1.7'
24
24
  program :description, "Build's Command Line Interface"
25
25
  program :int_block, -> { exit }
26
26
  default_command :help
data/bin/build CHANGED
@@ -20,7 +20,7 @@ class BuildCLI
20
20
 
21
21
  def run
22
22
  program :name, 'Build CLI'
23
- program :version, '0.1.6'
23
+ program :version, '0.1.7'
24
24
  program :description, "Build's Command Line Interface"
25
25
  program :int_block, -> { exit }
26
26
  default_command :help
data/lib/commands.rb CHANGED
@@ -2,6 +2,41 @@
2
2
  class BuildCLICommands
3
3
  def self.index
4
4
  return {
5
+ "ps:restart": {
6
+ cli_details: { :syntax => "build ps:restart -a <app>", :description => "Restart all the processes of an app",
7
+ :options => [["-a", "--app=<value>", String, "(required) app to run command against"]] },
8
+ cli_perform: Proc.new { |args, options|
9
+ app_name = options.app
10
+ if app_name.nil? || app_name.strip == ""
11
+ puts(CLI::UI.fmt("{{red:›}} Error: The following error occurred:"))
12
+ puts(CLI::UI.fmt("{{red:›}} {{gray:Missing required flag app}}"))
13
+ puts(CLI::UI.fmt("{{red:›}} See more help with --help"))
14
+ exit(1)
15
+ end
16
+ user_netrc = Netrc.read
17
+ user_token = user_netrc.[]("build.io")&.password
18
+ if user_token.nil?
19
+ puts(CLI::UI.fmt("{{red:›}} Error: not logged in"))
20
+ exit(1)
21
+ end
22
+ auth = "Bearer #{user_token}"
23
+ query_params = {}
24
+ query_params.[]=(:app, app_name)
25
+ query_string = URI.encode_www_form(query_params)
26
+ res = HTTParty.get("#{ANTIMONY_HOST}/api/cli/command/ps/restart?#{query_string}",
27
+ { headers: { "Authorization" => auth } })
28
+ if res.code != 200
29
+ if res.body.[]("error")
30
+ puts(CLI::UI.fmt("{{red:›}} Error: #{res.body.[]("error")}"))
31
+ exit(1)
32
+ else
33
+ puts(CLI::UI.fmt("{{red:›}} Error: An unknown error occurred"))
34
+ exit(1)
35
+ end
36
+ end
37
+ puts(CLI::UI.fmt("{{v}} Restarted all processes for app {{cyan:#{app_name}}}"))
38
+ },
39
+ },
5
40
  "config": {
6
41
  cli_details: { :syntax => "build config -a <app>", :description => "Get the config variables for an app",
7
42
  :options => [["-a", "--app=<value>", String, "(required) app to run command against"]] },
@@ -28,11 +63,10 @@ class BuildCLICommands
28
63
  if res.code != 200
29
64
  if res.body.[]("error")
30
65
  puts(CLI::UI.fmt("{{red:›}} Error: #{res.body.[]("error")}"))
31
- exit(1)
32
66
  else
33
67
  puts(CLI::UI.fmt("{{red:›}} Error: An unknown error occurred"))
34
- exit(1)
35
68
  end
69
+ exit(1)
36
70
  end
37
71
  JSON.parse(res.body).each { |key, value|
38
72
  puts("#{key}=#{value}")
@@ -214,9 +248,10 @@ class BuildCLICommands
214
248
  exit
215
249
  end
216
250
  (user_token, user_email) = nil
251
+ client_secret = SecureRandom.uuid
252
+ oauth_url = "#{ANTIMONY_HOST}/cli_auth/authorize/#{client_secret}"
253
+ puts(CLI::UI.fmt("Opening browser to {{underline:#{oauth_url}}}"))
217
254
  CLI::UI::Spinner.spin("Waiting for login") { |spinner,|
218
- client_secret = SecureRandom.uuid
219
- oauth_url = "#{ANTIMONY_HOST}/cli_auth/authorize/#{client_secret}"
220
255
  Launchy.open(oauth_url)
221
256
  poll_interval = 1
222
257
  timeout = (5 * 60)
@@ -331,7 +366,11 @@ class BuildCLICommands
331
366
  exit(1)
332
367
  end
333
368
  user_netrc = Netrc.read
334
- user_token = user_netrc.[]("build.io").[](1)
369
+ user_token = user_netrc.[]("build.io")&.password
370
+ if user_token.nil?
371
+ puts(CLI::UI.fmt("{{red:›}} Error: not logged in"))
372
+ exit(1)
373
+ end
335
374
  auth = "Bearer #{user_token}"
336
375
  query_params = {}
337
376
  if options.app
metadata CHANGED
@@ -1,15 +1,71 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: bld
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.6
4
+ version: 0.1.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - usiegl00
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-02-01 00:00:00.000000000 Z
11
+ date: 2024-02-05 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: abbrev
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: base64
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: bigdecimal
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: csv
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
13
69
  - !ruby/object:Gem::Dependency
14
70
  name: public_suffix
15
71
  requirement: !ruby/object:Gem::Requirement
@@ -124,22 +180,22 @@ dependencies:
124
180
  name: net-ssh
125
181
  requirement: !ruby/object:Gem::Requirement
126
182
  requirements:
127
- - - "~>"
128
- - !ruby/object:Gem::Version
129
- version: '6.1'
130
183
  - - ">="
131
184
  - !ruby/object:Gem::Version
132
185
  version: 6.1.0
186
+ - - "<="
187
+ - !ruby/object:Gem::Version
188
+ version: 7.2.1
133
189
  type: :runtime
134
190
  prerelease: false
135
191
  version_requirements: !ruby/object:Gem::Requirement
136
192
  requirements:
137
- - - "~>"
138
- - !ruby/object:Gem::Version
139
- version: '6.1'
140
193
  - - ">="
141
194
  - !ruby/object:Gem::Version
142
195
  version: 6.1.0
196
+ - - "<="
197
+ - !ruby/object:Gem::Version
198
+ version: 7.2.1
143
199
  description: CLI for build.io
144
200
  email: 50933431+usiegl00@users.noreply.github.com
145
201
  executables:
@@ -181,7 +237,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
181
237
  - !ruby/object:Gem::Version
182
238
  version: '0'
183
239
  requirements: []
184
- rubygems_version: 3.4.21
240
+ rubygems_version: 3.5.3
185
241
  signing_key:
186
242
  specification_version: 4
187
243
  summary: build cli