Module oci_fastconnect

Adapater module to configure fastconnect services on oracle cloud

  • License: Inmanta EULA

  • Version: 0.1.1

Typedefs

typedef oci_fastconnect::lifecycle_state
  • Base type string

  • Type constraint (self in ['PENDING_PROVIDER', 'VERIFYING', 'PROVISIONING', 'PROVISIONED', 'FAILED', 'INACTIVE', 'TERMINATING', 'TERMINATED'])

typedef oci_fastconnect::virtual_circuit_provider_state_t
  • Base type string

  • Type constraint (self in ['ACTIVE', 'INACTIVE'])

typedef oci_fastconnect::virtual_circuit_type_t
  • Base type string

  • Type constraint (self in ['PUBLIC', 'PRIVATE'])

Entities

entity oci_fastconnect::VirtualCircuit

Parents: std::PurgeableResource

A virtual circuit in a compartment. The virtual circuit can be created using a customer account and updated using a customer or provider account. Given that oci doesn’t provide any identification mechanism based on the natural attributes of the circuit, we created one ourself: name. Name is only used to identify the resource from withing the model. To query the circuit using the oci api, we first use the id, if it is specified, then the display_name, if it is specified. If the query didn’t provide any result, we consider the service to be purged and we create it.

cf. https://docs.oracle.com/en-us/iaas/api/#/en/iaas/20160918/datatypes/CreateVirtualCircuitDetails cf. https://docs.oracle.com/en-us/iaas/api/#/en/iaas/20160918/datatypes/UpdateVirtualCircuitDetails

attribute string name

The internal, human-friendly identifier for this resource.

attribute string id

The oci identifier for an existing virtual circuit.

attribute string? reference_comment=null

Provider-supplied reference information about this virtual circuit.

attribute oci_fastconnect::virtual_circuit_provider_state_t? provider_state=null

The provider state for this circuit, attribute which can only be managed from a provider account.

relation oci_fastconnect::virtual_circuit::CrossConnectMapping cross_connect_mappings [0:*]

other end: oci_fastconnect::virtual_circuit::CrossConnectMapping.virtual_circuit [1]

relation oci_fastconnect::base::Api api [1]

A set of mappings between this circuit and cross connects of a provider. This list is comanaged, elements can be marked as purged if they should absent from the circuit, in total, the configured circuit can not have more than two mappings.

The following implements statements select implementations for this entity:

entity oci_fastconnect::VirtualCircuitStateCheck

Parents: std::PurgeableResource

Monitors the status of the created VirtualCircuit

VirtualCircuit Creation : … -> PROVISIONING -> PENDING_PROVIDER VirtualCircuit activation : PENDING_PROVIDER -> PROVISIONING -> PROVISIONED VirtualCircuit deactivation : PROVISIONED -> PROVISIONING -> PROVISIONED

Rel virtual_circuit_id:

The id of the virtualcircuit to manage

attribute string virtual_circuit_id
attribute oci_fastconnect::lifecycle_state[] desired=List()

List with desired states (states that report SUCCESS by the handler)

attribute oci_fastconnect::lifecycle_state[] failed=List()

List with failed states (states that report FAILURE by the handler)

attribute oci_fastconnect::lifecycle_state[] skipped=List()

List with skipped states (states that report SKIPPED by the handler)

relation oci_fastconnect::base::Api api [1]

The following implements statements select implementations for this entity:

entity oci_fastconnect::base::Api

Parents: std::Entity

Entity representing the oci api, as seen by a specific user.

attribute string name

The name of the agent to use to deploy all resources related to this compartment. This name is only used when auto_agent is true.

attribute string config_file='~/.oci/config'

A path to a configuration file holding the profile that should be used to authenticate to the api.

attribute string profile_name='DEFAULT'

The name of the profile, in the config file, to use to authenticate to the api.

attribute bool auto_agent=true

Whether to automatically start the agent for this compartment’s resources.

relation std::AgentConfig agent_config [1]

Relation to the agent config, required to resolve the agent name of the resources part of this compartment.

The following implementations are defined for this entity:

The following implements statements select implementations for this entity:

entity oci_fastconnect::virtual_circuit::CrossConnectMapping

Parents: std::Entity

The mapping between a circuit and a cross connect, on which we can manage different attributes. This entity can only be used by a provider to attach a circuit to one of its physical connections.

cf. https://docs.oracle.com/en-us/iaas/api/#/en/iaas/20160918/datatypes/CrossConnectMapping

attribute string? cross_connect_or_cross_connect_group_id=null

The id of the cross connect (or group) that the circuit should be attached to.

attribute int? vlan=null

The vlan that the circuit should use withing this cross connect.

relation oci_fastconnect::VirtualCircuit virtual_circuit [1]

other end: oci_fastconnect::VirtualCircuit.cross_connect_mappings [0:*]

The following implements statements select implementations for this entity:

Implementations

implementation oci_fastconnect::base::agent_config

Configure the agent_config for this compartment, if auto_agent is true.

Resources

class oci_fastconnect.virtual_circuit.VirtualCircuitResource
class oci_fastconnect.virtual_circuit.VirtualCircuitStateCheckResource

Handlers

class oci_fastconnect.virtual_circuit.VirtualCircuitHandler
class oci_fastconnect.virtual_circuit.VirtualCircuitStateCheckHandler