class GeoEngineer::Resources::AwsApiGatewayDeployment
AwsCloudTrail is the api_gateway_deployment
terrform resource,
{www.terraform.io/docs/providers/aws/r/api_gateway_deployment.html}
Public Class Methods
_fetch_deployments(provider, rr)
click to toggle source
# File lib/geoengineer/resources/aws_api_gateway_deployment.rb, line 40 def self._fetch_deployments(provider, rr) _client(provider).get_deployments({ rest_api_id: rr[:_terraform_id] })['items'].map(&:to_h) end
_fetch_remote_resources(provider)
click to toggle source
# File lib/geoengineer/resources/aws_api_gateway_deployment.rb, line 53 def self._fetch_remote_resources(provider) _fetch_remote_rest_apis(provider).map do |rr| _fetch_deployments(provider, rr) .map do |deployment| stage_name = _fetch_stage_name(provider, rr, deployment) next unless stage_name deployment[:_terraform_id] = deployment[:id] deployment[:_geo_id] = "#{rr[:_geo_id]}::#{stage_name}" deployment[:stage_name] = stage_name deployment end end.flatten.compact end
_fetch_stage_name(provider, rr, deployment)
click to toggle source
# File lib/geoengineer/resources/aws_api_gateway_deployment.rb, line 46 def self._fetch_stage_name(provider, rr, deployment) _client(provider).get_stages({ rest_api_id: rr[:_terraform_id], deployment_id: deployment[:id] }).item.first&.stage_name end
Public Instance Methods
to_terraform_state()
click to toggle source
Calls superclass method
GeoEngineer::Resource#to_terraform_state
# File lib/geoengineer/resources/aws_api_gateway_deployment.rb, line 27 def to_terraform_state tfstate = super tfstate[:primary][:attributes] = { "rest_api_id" => _rest_api._terraform_id, "stage_name" => stage_name } tfstate end