Module: NeetoDeploy::CLI::Session
- Included in:
- Activity::List, Addon::Info, Addon::List, Addon::ScheduledExportsSettings, Apps::Base, AutoscalingConfig::List, Buildpacks::List, Certificates::List, Deploy::Base, Env::List, Env::Set, Env::Unset, Exec::Base, Logs::Base, Maintenance::Base, Pg::Console, Processes::List, Processes::Scale, Processes::SetResources, Redis::Console, Redis::Get, Redis::ResetStats, Redis::Set, Restart::Base
- Defined in:
- lib/neeto_deploy/cli/session.rb
Defined Under Namespace
Classes: Error
Constant Summary collapse
- CONSOLE_EXECUTABLE =
{ mac: "console-linux-arm64", linux: "console-linux-amd64" }.freeze
Class Method Summary collapse
Instance Method Summary collapse
- #auth_headers ⇒ Object
- #console_executable_name ⇒ Object
- #json_auth_headers ⇒ Object
- #os ⇒ Object
- #send_delete_request(url, body) ⇒ Object
- #send_get_request(url, body) ⇒ Object
- #send_patch_request(url, body) ⇒ Object
- #send_post_request(url, body) ⇒ Object
Class Method Details
.require_app_option ⇒ Object
17 18 19 |
# File 'lib/neeto_deploy/cli/session.rb', line 17 def self.require_app_option option :app, type: :string, aliases: "-a", required: true, desc: "App slug" end |
Instance Method Details
#auth_headers ⇒ Object
37 38 39 40 41 42 |
# File 'lib/neeto_deploy/cli/session.rb', line 37 def auth_headers session_info = JSON.parse(File.read(CLI_SESSION_STORE_FILE_PATH)) { "Session-Token" => session_info["session_token"] } rescue raise Error.new("Unable to retrieve session info. Try logging in again.") end |
#console_executable_name ⇒ Object
62 63 64 |
# File 'lib/neeto_deploy/cli/session.rb', line 62 def console_executable_name CONSOLE_EXECUTABLE[os] end |
#json_auth_headers ⇒ Object
44 45 46 |
# File 'lib/neeto_deploy/cli/session.rb', line 44 def json_auth_headers auth_headers.merge("Content-Type" => "application/json") end |
#os ⇒ Object
48 49 50 51 52 53 54 55 56 57 58 59 60 |
# File 'lib/neeto_deploy/cli/session.rb', line 48 def os @os ||= ( host_os = RbConfig::CONFIG["host_os"] case host_os when /darwin|mac os/ :mac when /linux/ :linux else raise Error, "unsupported os: #{host_os.inspect}" end ) end |
#send_delete_request(url, body) ⇒ Object
33 34 35 |
# File 'lib/neeto_deploy/cli/session.rb', line 33 def send_delete_request(url, body) HTTParty.delete(url, { body: body.to_json, headers: json_auth_headers, format: :json }) end |
#send_get_request(url, body) ⇒ Object
21 22 23 |
# File 'lib/neeto_deploy/cli/session.rb', line 21 def send_get_request(url, body) HTTParty.get(url, { query: body, headers: auth_headers, format: :json }) end |
#send_patch_request(url, body) ⇒ Object
29 30 31 |
# File 'lib/neeto_deploy/cli/session.rb', line 29 def send_patch_request(url, body) HTTParty.patch(url, { body: body.to_json, headers: json_auth_headers, format: :json }) end |
#send_post_request(url, body) ⇒ Object
25 26 27 |
# File 'lib/neeto_deploy/cli/session.rb', line 25 def send_post_request(url, body) HTTParty.post(url, { body: body.to_json, headers: json_auth_headers, format: :json }) end |