Class: CpOraclecloud::JavaInstance
- Inherits:
-
CloudInstance
- Object
- CloudInstance
- CpOraclecloud::JavaInstance
- Includes:
- JavaMixin
- Defined in:
- app/models/cp_oraclecloud/java_instance.rb
Instance Method Summary collapse
- #attr_get(attribute) ⇒ Object
- #calc_cost(start_date, end_date) ⇒ Object
- #cloud_type ⇒ Object
- #connection ⇒ Object
- #fog ⇒ Object
- #month_cost ⇒ Object
- #provider ⇒ Object
- #provision ⇒ Object
- #wait ⇒ Object
Methods included from JavaMixin
Instance Method Details
#attr_get(attribute) ⇒ Object
26 27 28 29 30 31 32 33 |
# File 'app/models/cp_oraclecloud/java_instance.rb', line 26 def attr_get(attribute) begin @instance ||= connection.instances.get(name) @instance.attributes[attribute.to_sym] rescue Fog::OracleCloud::Database::NotFound "Error" end end |
#calc_cost(start_date, end_date) ⇒ Object
40 41 42 43 44 |
# File 'app/models/cp_oraclecloud/java_instance.rb', line 40 def calc_cost(start_date, end_date) cost = 0 cost = (end_date - start_date) * (month_cost / 30) cost end |
#cloud_type ⇒ Object
17 18 19 |
# File 'app/models/cp_oraclecloud/java_instance.rb', line 17 def cloud_type "Java" end |
#connection ⇒ Object
46 47 48 49 50 51 52 53 |
# File 'app/models/cp_oraclecloud/java_instance.rb', line 46 def connection @connection ||= Fog::OracleCloud::Java.new( :oracle_username => CpOraclecloud.username, :oracle_password => CpOraclecloud.password, :oracle_domain => CpOraclecloud.domain, :oracle_region => CpOraclecloud.region ) end |
#fog ⇒ Object
21 22 23 24 |
# File 'app/models/cp_oraclecloud/java_instance.rb', line 21 def fog @instance ||= connection.instances.get(name) @instance end |
#month_cost ⇒ Object
35 36 37 38 |
# File 'app/models/cp_oraclecloud/java_instance.rb', line 35 def month_cost cost = calculate_monthly_cost(init_config) cost end |
#provider ⇒ Object
13 14 15 |
# File 'app/models/cp_oraclecloud/java_instance.rb', line 13 def provider "OracleCloud" end |
#provision ⇒ Object
5 6 7 |
# File 'app/models/cp_oraclecloud/java_instance.rb', line 5 def provision connection.instances.create(init_config) end |
#wait ⇒ Object
9 10 11 |
# File 'app/models/cp_oraclecloud/java_instance.rb', line 9 def wait fog.wait_for { ready? } end |