class GeoEngineer::Resources::AwsKinesisStream
AwsKinesisStream
is the aws_kinesis_stream
terrform resource,
{www.terraform.io/docs/providers/aws/r/aws_kinesis_stream.html Terraform Docs}
Public Class Methods
_all_streams(provider)
click to toggle source
# File lib/geoengineer/resources/aws_kinesis_stream.rb, line 29 def self._all_streams(provider) AwsClients.kinesis(provider) .list_streams[:stream_names] .map { |s| self._stream_description(s) } end
_fetch_remote_resources(provider)
click to toggle source
# File lib/geoengineer/resources/aws_kinesis_stream.rb, line 35 def self._fetch_remote_resources(provider) self._all_streams(provider).map do |stream| stream.merge({ _terraform_id: stream[:stream_arn], _geo_id: stream[:stream_name] }) end end
_stream_description(stream_name)
click to toggle source
# File lib/geoengineer/resources/aws_kinesis_stream.rb, line 22 def self._stream_description(stream_name) AwsClients.kinesis .describe_stream({ stream_name: stream_name }) .stream_description .to_h end
Public Instance Methods
to_terraform_state()
click to toggle source
Calls superclass method
GeoEngineer::Resource#to_terraform_state
# File lib/geoengineer/resources/aws_kinesis_stream.rb, line 13 def to_terraform_state tfstate = super tfstate[:primary][:attributes] = { 'name' => self.name, 'shard_count' => self.shard_count.to_s } tfstate end