Files
gemini-settings/tmp/dalmatian/tool-outputs/session-cebedcb4-6673-4a0e-bf61-a131af573337/run_shell_command_1771603835683_0.txt
2026-02-24 18:03:22 +00:00

1769 lines
140 KiB
Plaintext

Output: ==> Linting YAML...
==> Linting shell scripts...
==> Checking Terraform for JSON errors...
- Checking ./terraform/policies/iam-read.json... Passed
- Checking ./terraform/policies/s3-rw-with-versioning.json... Passed
- Checking ./terraform/policies/codestar-connection-use.json... Passed
- Checking ./terraform/policies/iam-create-access-key.json... Passed
- Checking ./terraform/policies/codebuild.json... Passed
- Checking ./terraform/policies/kms-encrypt-decrypt.json... Passed
- Checking ./terraform/policies/iam-change-password.json... Passed
- Checking ./terraform/policies/administrator-access.json... Passed
- Checking ./terraform/policies/assume_roles/aws-backup.json... Passed
- Checking ./terraform/policies/assume_roles/autoscaling.json... Passed
- Checking ./terraform/policies/assume_roles/events.json... Passed
- Checking ./terraform/policies/assume_roles/ecs.json... Passed
- Checking ./terraform/policies/assume_roles/codepipeline.json... Passed
- Checking ./terraform/policies/iam-mfa.json... Passed
- Checking ./terraform/policies/route53-read.json... Passed
- Checking ./terraform/policies/s3-full-access.json... Passed
- Checking ./terraform/policies/parameter-store-read-decrypt.json... Passed
- Checking ./terraform/policies/s3-read.json... Passed
- Checking ./terraform/policies/parameter-store-RW-encrypt-decrypt.json... Passed
- Checking ./terraform/policies/all-read-with-billing.json... Passed
- Checking ./terraform/policies/codebuild-start-build.json... Passed
- Checking ./terraform/policies/all-read.json... Passed
==> Linting Terraform...
==> Running Ruby tests...
/Users/bob/.rbenv/versions/2.7.1/bin/ruby -I/Users/bob/.bundles/ruby/2.7.0/gems/rspec-core-3.12.2/lib:/Users/bob/.bundles/ruby/2.7.0/gems/rspec-support-3.12.1/lib /Users/bob/.bundles/ruby/2.7.0/gems/rspec-core-3.12.2/exe/rspec --pattern spec/\*\*\{,/\*/\*\*\}/\*_spec.rb
tests local configuration
use of "terraform apply"
passes the hosted zone config to "terraform apply" (FAILED - 1)
passes the s3 config to "terraform apply" (FAILED - 2)
passes the vpn customer gateway config to "terraform apply" (FAILED - 3)
passes the base config to "terraform apply" (FAILED - 4)
passes the waf config to "terraform apply" (FAILED - 5)
passes the rds config to "terraform apply" (FAILED - 6)
passes the aurora config to "terraform apply" (FAILED - 7)
passes the elasticache config to "terraform apply" (FAILED - 8)
passes the opensearch config to "terraform apply" (FAILED - 9)
passes the service config to "terraform apply" (FAILED - 10)
passes the loadbalancer config to "terraform apply" (FAILED - 11)
passes the cluster 2 config to "terraform apply" (FAILED - 12)
passes the cluster 3 config to "terraform apply" (FAILED - 13)
passes the cluster 4 config to "terraform apply" (FAILED - 14)
tests remote configuration
retrieves the remotely held full configuration
proceeds with deploying the infrastructure as per the cached full configuration
tests local configuration
debug Testing Aurora
invokes "terraform validate" with the expected cluster options (FAILED - 15)
debug Testing Aurora
invokes "terraform validate" with the expected source options (FAILED - 16)
use of "terraform plan"
debug Testing Aurora
passes the hosted zone config to "terraform plan" (FAILED - 17)
debug Testing Aurora
passes the s3 config to "terraform plan" (FAILED - 18)
debug Testing Aurora
passes the vpn customer gateway config to "terraform plan" (FAILED - 19)
debug Testing Aurora
passes the base config to "terraform plan" (FAILED - 20)
debug Testing Aurora
passes the waf config to "terraform plan" (FAILED - 21)
debug Testing Aurora
passes the rds config to "terraform plan" (FAILED - 22)
debug Testing Aurora
passes the aurora config to "terraform plan" (FAILED - 23)
debug Testing Aurora
passes the elasticache config to "terraform plan" (FAILED - 24)
debug Testing Aurora
passes the opensearch config to "terraform plan" (FAILED - 25)
debug Testing Aurora
passes the services config to "terraform plan" (FAILED - 26)
debug Testing Aurora
passes the loadbalancer config to "terraform plan" (FAILED - 27)
debug Testing Aurora
passes the cluster 2 config to "terraform plan" (FAILED - 28)
debug Testing Aurora
passes the cluster 3 config to "terraform plan" (FAILED - 29)
debug Testing Aurora
passes the cluster 4 config to "terraform plan" (FAILED - 30)
Dalmatian::Account
initialisation
gathering user input
asks the user for AWS credentials
asks the user for the AWS account id to use
asks the user for an account alias
#call
changes to the bootstrapping directory
runs terraform init with upgrade option
creates the new workspace using the given aws account id and alias
runs terraform apply with the user-supplied vars
Dalmatian::AuroraDeployment
#call
changes to aurora infrastructure directory
asks Terraform to ensure that the workspace is in place
when in _plan_ mode
invokes Terraform.plan with the _dalmatian-read_ role
when NOT in _plan_ mode
invokes Terraform.apply with the _dalmatian-admin_ role
when in _auto_approve_ mode
asks Terraform to use auto_approve mode
Dalmatian::Aurora
#identifier
uses aurora identifier
#in_use_by
uses aurora in_use_by list
#clusters_in_use
uses aurora clusters_in_use list
#minimum_size
uses aurora minimum_size
#maximum_size
uses aurora maximum_size
#engine
uses aurora engine
#engine_version
uses the aurora engine_version
#db_name
uses the aurora db_name
#port
uses the aurora port
#maintenance_window
uses the aurora maintenance_window
#backup_window
uses the aurora backup_window
#backup_retention_period
uses the aurora backup_retention_period
#force_ssl
uses the aurora force_ssl bool
#parameter_store_path_db_url_name
uses the aurora parameter_store_path_db_url_name
#sql_backup_scheduled_task_environment_variables
uses the aurora sql_backup_scheduled_task_environment_variables
#check_sql_backup_scheduled_task_environment_variables
uses the aurora check_sql_backup_scheduled_task_environment_variables
#sync_sql_backup_to_azure
will have offsite backups disabled by default
#replication_bucket_destination_arn
uses the aurora replication_bucket_destination_arn
#replication_kms_key_id
uses the aurora replication_kms_key_id
#to_params
provides a hash of attributes for use in deployment
Dalmatian::AuroraTest
#call
changes to the aurora infrastructure directory
logs our intention to run Terraform init
runs Terraform init, with upgrade option
ensures presence of workspace
logs our intention to run Terraform fmt
runs Terraform fmt with check and diff options
logs our intention to run Terraform validate
runs Terraform validate, with upgrade option
changes back to the app root directory
Dalmatian::CacheHandlerSelector
::new_for(remote_reference)
when the remote reference is for a git repo
asks for an instance of GitCacheHandler
when the remote reference is for an S3 bucket
asks for an instance of S3CacheHandler
when the remote reference is for a URL
asks for an instance of UrlCacheHandler
when the type is unknown
raises an error
CacheHandler
when a subclass class does not implement #cache_remote_configuration
raises a helpful error
Dalmatian::CI
CI::PATH
is a constant
#deploy
changes to the ci directory
runs terraform init with upgrade option
creates the new workspace using the given aws account id and alias
runs terraform apply with the user-supplied vars
#test
runs terraform plan with the user-supplied vars
Dalmatian::ClusterDeployment
#call
changes to the ecs directory
asks Terraform to ensure that the workspace is in place
when the environment includes a git reference as "track_revision"
does NOT attempt to check out that commit
when in _plan_ mode
invokes Terraform.plan using the _dalmatian-read_ role
when NOT in _plan_ mode
invokes Terraform.apply using the _dalmatian-admin_
when in _auto_approve_ mode
asks Terraform to use auto_approve mode
Dalmatian::Cluster
on initialisation
makes Hosted zones, S3, Sources, Services, Loadbalancers, WAF and Rds
#target_directory
is a standard _ecs_ path
#id
is the primary key of the cluster definition is used
#name
when the cluster has an explicitly provided _name_ property
that property is used
when the cluster does not have an explicitly provided _name_ property
the primary key of the cluster definition is used
#account_id
is the aws account key for deployment
#sources
represents any links to remote sources
#environments
represents the attributes of each environment's cluster section
#fetch
when the source is remotely held
logs the plan to clone the source into the infrastructure pth
deletes any existing source at the infrastructure location
clones each source into the infrastructure location
changes to the infrastructure directory for each source
runs rake terrafile
changes back to the APP_ROOT
when the source is a local file path
does not re-clone the source
does not run terrafile
when the specified local directory exists
logs the fact that the local source is in place
when the specificed local directory does not exist
logs an error that the local source is missing
#deploy
deploys source infrastructure for each source and each service in each environment
when a cluster should be created
deploys cluster infrastructure for each environment
when the _plan_ option IS invoked
creates Cluster Deployments with plan settings
when the _auto_approve_ option IS invoked
creates Cluster Deployments with auto_approve settings
handling of tests
when the _test_ option is NOT invoked
does not run cluster tests
does not run cluster tests
does not run cluster tests
does not run source tests
does not run waf tests
does not run rds tests
does not run service tests
does not run service tests
when the test option IS invoked
runs tests
when a cluster should NOT be created
does not deploy cluster infrastructure
when test option is invoked
tests sources and services for each environment
Dalmatian::ClusterTest
#call
changes to the ecs directory
logs our intention to run Terraform init
runs Terraform init, with upgrade option
ensures presence of workspace
logs our intention to run Terraform fmt
runs Terraform fmt with check and diff options
logs our intention to run Terraform validate
runs Terraform validate, with upgrade option
changes back to the app root directory
when the environment includes a git reference as "track_revision"
does NOT attempt to check out that commit
Dalmatian::ConfigurationReader
when a full configuration is provided in a local file
#call
has no need to use a cache handler
returns the loaded configuration
when a reference to a remote configuration is provided
and the reference is provided in a local file
uses the CacheHandlerSelector to provide the appropriate retrieval mechanism
calls on the selected cache handler
returns the configuration returned by the cache_handler
and the reference is provided using environment variables
passes the provided remote reference to the CacheHandlerSelector
and references are provided in both environment variables and config file
prefers the environment variable references over the config file
and no references are provided
raises an error
and the remote reference is missing its _type_
raises an error
#ci
when a parameter path prefix is given
overwrites the ci:variables config with those retrieved from the param store
leaves other ci:variables in place
when a parameter path prefix is NOT given
does NOT overwrite any ci:variables from the param store
Dalmatian::ElasticacheCluster
#identifier
uses elasticache identifier
#in_use_by
uses elasticache_cluster in_use_by list
#node_type
uses elasticache_cluster node_type
#node_count
uses elasticache_cluster node_count
#engine
uses elasticache_cluster engine
#engine_version
uses the elasticache_cluster engine_version
#parameters
uses the elasticache_cluster parameters list
#port
uses the elasticache_cluster port
#maintenance_window
uses the elasticache_cluster maintenance_window
#snapshot_window
uses the elasticache_cluster snapshot_window
#parameter_store_path_elasticache_cluster_url_name
uses the elasticache_cluster parameter_store_path_elasticache_cluster_url_name
#to_params
provides a hash of attributes for use in deployment
Dalmatian::ElasticacheClusterTest
#call
changes to the elasticache-cluster directory
logs our intention to run Terraform init
runs Terraform init, with upgrade option
ensures presence of workspace
logs our intention to run Terraform fmt
runs Terraform fmt with check and diff options
logs our intention to run Terraform validate
runs Terraform validate, with upgrade option
changes back to the app root directory
Dalmatian::GitCacheHandler
#call
deletes any old cache
uses git clone to save the remote config to a local cache
logs the cloning action
logs the path to the cached configuration
returns the cached full configuration to the caller (configuration reader)
reads the cached full configuration from the disk in order to return to caller
when no special cache path is given
uses the default cache path of ./.dalmatian_cache/remote_config
Dalmatian::Helper
::git_clone(source, destination)
when source and destination args are not provided
raises an error with usage info
when given source and destination args
passes the request to the git CLI
::git_checkout(revision)
checks out the given revision using run!
::get(source, destination)
when source and destination args are not provided
raises an error with usage info
when given source and destination args
opens the source url
opens a new file at the destination
writes the source resource into that file
reads the information from the fetched resource
::run!
passes given cmd to Kernel.system
when the call to Kernel.system returns _false_
raise a helpful error
::run_with_output!(cmd)
passes given cmd to Open3.capture3
when the system call returns a zero exit status
returns the systems output to STDOUT
when the system call returns a non-zero exit status
also returns STDOUT ignoring the exit code and STDERR
when the system call raises an ENOENT error
catches this and raises a helpful Error
::change_to(path)
passes the given path to Dir.chdir
::to_bool(str)
when given nil
returns false
when given an empty string
returns false
when given lower case string _true_
returns true
when given mixed case string _True_
returns true
when given the object true
returns true
when given the object false
returns false
::tflint
runs the tflint cmd
::terrafile
runs rake terrafile
::ask
delegates to HighLine#ask
::ask_in_confidence
delegates to HighLine#ask
passes a block to mask the answer
Dalmatian::HostedZoneDeployment
#call
changes to hosted-zone infrastructure directory
asks Terraform to ensure that the workspace is in place
when in _plan_ mode
invokes Terraform.plan with the _dalmatian-read_ role
when NOT in _plan_ mode
invokes Terraform.apply with the _dalmatian-admin_ role
when in _auto_approve_ mode
asks Terraform to use auto_approve mode
Dalmatian::HostedZone
#domain
uses hosted_zone domain
#ns_records
uses hosted_zone ns_records
#a_records
uses hosted_zone a_records
#alias_records
uses hosted_zone alias_records
#cname_records
uses hosted_zone cname_records
#mx_records
uses hosted_zone mx_records
#txt_records
uses hosted_zone txt_records
#srv_records
uses hosted_zone srv_records
#to_params
provides a hash of attributes for use in deployment
Dalmatian::HostedZoneTest
#call
changes to the hosted-zone directory
logs our intention to run Terraform init
runs Terraform init, with upgrade option
ensures presence of workspace
logs our intention to run Terraform fmt
runs Terraform fmt with check and diff options
logs our intention to run Terraform validate
runs Terraform validate, with upgrade option
changes back to the app root directory
Dalmatian::Infrastructure
Infrastructure::PATH
is a constant
Infrastructure::APP_ROOT
is a constant
initialisation
when configuration is not provided
builds one using the defaults
#clusters
creates one cluster for each cluster description provided
key operations on clusters
#fetch
asks all clusters to #fetch
#test
asks all clusters to #deploy with _plan_ and _test_ options
#deploy
when no parameters given
asks all clusters to #deploy with _plan_, _test_ and _auto-approve_ disabled
when parameters are given
asks all clusters to #deploy with the given options
when a particular infrastructure is named for deployment
asks only the named cluster to #deploy with the given options
Dalmatian::Logger
::error(msg)
raises an error with a red message
::info(msg)
puts the given given message in white
::success(msg)
puts the given given message in green
::warn(msg)
puts the given given message in yellow
Dalmatian::OpensearchCluster
#identifier
uses opensearch identifier
#in_use_by
uses opensearch_cluster in_use_by list
#version
uses opensearch_cluster version
#master_enabled
uses opensearch_cluster master_enabled bool
#master_count
uses opensearch_cluster master_count
#master_type
uses opensearch_cluster master_type
#instance_count
uses opensearch_cluster instance_count
#instance_type
uses opensearch_cluster instance_type
#warm_enabled
uses opensearch_cluster warm_enabled bool
#warm_count
uses opensearch_cluster warm_count
#warm_type
uses opensearch_cluster warm_type
#parameter_store_path_opensearch_cluster_url_name
uses opensearch_cluster parameter_store_path_opensearch_cluster_url_name
#volume_size
uses opensearch_cluster volume_size
#to_params
provides a hash of attributes for use in deployment
Dalmatian::OpensearchClusterTest
#call
changes to the opensearch-cluster directory
logs our intention to run Terraform init
runs Terraform init, with upgrade option
ensures presence of workspace
logs our intention to run Terraform fmt
runs Terraform fmt with check and diff options
logs our intention to run Terraform validate
runs Terraform validate, with upgrade option
changes back to the app root directory
Dalmatian::ParameterStore
::get_parameter(name: "", with_decryption: true)
when getting a single parameter from Parameter Store
runs aws ssm get-parameter
::get_parameters_by_path(path: "", with_decryption: true)
when getting parameters by path from Parameter Store
runs aws ssm get-parameter
Dalmatian::RdsDeployment
#call
changes to rds infrastructure directory
asks Terraform to ensure that the workspace is in place
when in _plan_ mode
invokes Terraform.plan with the _dalmatian-read_ role
when NOT in _plan_ mode
invokes Terraform.apply with the _dalmatian-admin_ role
when in _auto_approve_ mode
asks Terraform to use auto_approve mode
Dalmatian::Rds
#identifier
uses rds identifier
#in_use_by
uses rds in_use_by list
#clusters_in_use
uses rds clusters_in_use list
#instance_class
uses rds instance_class
#engine
uses rds engine
#engine_version
uses the rds engine_version
#allocated_storage
uses the rds allocated_storage
#storage_encrypted
uses the rds storage_encrypted bool
#storage_type
uses the rds storage_type gp3
#db_name
uses the rds db_name
#port
uses the rds port
#maintenance_window
uses the rds maintenance_window
#backup_window
uses the rds backup_window
#backup_retention_period
uses the rds backup_retention_period
#force_ssl
uses the rds force_ssl bool
#parameter_store_path_db_url_name
uses the rds parameter_store_path_db_url_name
#sql_backup_scheduled_task_environment_variables
uses the rds sql_backup_scheduled_task_environment_variables
#check_sql_backup_scheduled_task_environment_variables
uses the rds check_sql_backup_scheduled_task_environment_variables
#sync_sql_backup_to_azure
will have offsite backups disabled by default
#replication_bucket_destination_arn
uses the rds replication_bucket_destination_arn
#replication_kms_key_id
uses the rds replication_kms_key_id
#codebuild_access
uses the rds codebuild_access
#to_params
provides a hash of attributes for use in deployment
Dalmatian::RdsTest
#call
changes to the ecs-services directory
logs our intention to run Terraform init
runs Terraform init, with upgrade option
ensures presence of workspace
logs our intention to run Terraform fmt
runs Terraform fmt with check and diff options
logs our intention to run Terraform validate
runs Terraform validate, with upgrade option
changes back to the app root directory
Dalmatian::RemoteReferenceValues
when the reference is for a git repo
returns a git shaped configuration
if _filename_ is not present
supplies the default of _dalmatian.yml_
when the reference is for an S3 bucket
returns an S3 shaped configuration
if _key_ is not present
supplies the default of _dalmatian.yml_
when the reference is for a URL
returns a git shaped configuration
Dalmatian::S3CacheHandler
#call
deletes any old cache
uses the AWS S3 cmd to save the remote config to a local cache
logs the cloning action
logs the path to the cached configuration
returns the cached full configuration to the caller (configuration reader)
reads the cached full configuration from the disk in order to return to caller
Dalmatian::S3Deployment
#call
changes to s3 infrastructure directory
asks Terraform to ensure that the workspace is in place
when in _plan_ mode
invokes Terraform.plan with the _dalmatian-read_ role
when NOT in _plan_ mode
invokes Terraform.apply with the _dalmatian-admin_ role
when in _auto_approve_ mode
asks Terraform to use auto_approve mode
Dalmatian::S3
#name
uses s3 name
#enable_s3_versioning
uses enable_s3_versioning bool
#encrypted
uses s3 encrypted bool
#acl
uses s3 acl
#policy
uses s3 policy
#service_cloudfront_read_access
uses s3 service_cloudfront_read_access
#cloudfront
uses s3 cloudfront
#to_params
provides a hash of attributes for use in deployment
Dalmatian::S3Test
#call
changes to the s3 directory
logs our intention to run Terraform init
runs Terraform init, with upgrade option
ensures presence of workspace
logs our intention to run Terraform fmt
runs Terraform fmt with check and diff options
logs our intention to run Terraform validate
runs Terraform validate, with upgrade option
changes back to the app root directory
Dalmatian::ServiceDeployment
#call
changes to ecs-services infrastructure directory
asks Terraform to ensure that the workspace is in place
when in _plan_ mode
invokes Terraform.plan with the _dalmatian-read_ role
when NOT in _plan_ mode
invokes Terraform.apply with the _dalmatian-admin_ role
when in _auto_approve_ mode
asks Terraform to use auto_approve mode
Dalmatian::Service
#name
uses service name
#blue_green
uses the service blue_green map
#parameter_store_path
uses service parameter_store_path
#parameter_store_key
uses service parameter_store_key
#daemon
uses the service daemon bool
#monitoring
uses the service monitoring hash
#cloudfront
recasts the service config in environment groups
includes the appropriate "custom_origins" values in each environment
Uses an AWS cloudfront managed cache policy
Uses an AWS cloudfront managed origin policy
Uses an AWS cloudfront managed response headers policy
mirroring of elements into each environment group
includes the "create" value
includes the "tls_protocol_version" value
includes the "origin_keepalive_timeout" value
includes the "origin_read_timeout" value
includes the "basic_auth" value
includes the "basic_auth_users_extra" value
includes the "viewer_request_functions" values
includes the "offline_page_http_status" value
bypass_protection
uses the "bypass_protection" configuration
custom_behaviors
converts list of "path_patterns" to a single "path_pattern"
#shared_loadbalancer_name
returns shared loadbalancer name if the service is in use by a shared loadbalancer
returns empty string if the service is not in use by a shared loadbalancer
#s3_policy
uses the service s3_policy map
#lb_ip_whitelistt
uses the service lb_ip_whitelist list
#lb_idle_timeout
uses the service lb_idle_timeout
#global_accelerator
uses service global_accelerator value
#health_check_path
uses the service health_check_path
#health_check_grace_period
uses the service health_check_grace_period
#deregistration_delay
uses the service deregistration_delay
#serve_from_subdirectory
uses the service serve_from_subdirectory
#domain_names
groups the domain names from the service domain_list into environments
#proxy_configuration
groups the proxy configurations from the service proxy_configuration list into environments
#home_directory
uses the service home_directory
#lb_ssl_certificate
groups the certificate arns from the service lb_ssl_certificate list into environments
#lb_ssl_policy
sets the default ssl policy for each environment
#cloudfront_ssl_certificate
groups the certificate arns from the service cloudfront_ssl_certificate list into environments
#image_source
uses the service image source
#launch_on
uses the service 'launch_on' specification
#launch_on_cluster
uses the service 'launch_on_cluster' string
#cluster_min_servers
uses the service 'cluster_min_servers' string
#image_location
uses the service image location
#track_revision
uses the service track_revision string
#custom_codestar_connection_arn
uses the service custom_codestar_connection_arn
#codepipeline_use_github_v1
uses the service codepipeline_use_github_v1
#codepipeline_codebuild_run_in_vpc
uses the service codepipeline_codebuild_run_in_vpc
#codepipeline_codebuild_use_service_env
uses the service codepipeline_codebuild_use_service_env
#buildspec
uses the service buildspec
#container_port
uses the service container port
#container_command
uses the service container command
#container_volumes
uses the service container volumes
#container_extra_hosts
uses the service container extra hosts
#container_count
uses the service container_count
#enable_max_one_container_per_instance
uses the service enable_max_one_container_per_instance
#scheduled_tasks
uses the service scheduled tasks
#workers
uses the service workers
#cluster_name
delegates to the cluster
#cluster_id
delegates to the cluster
#account_id
delegates to the cluster
#to_params
provides a hash of attributes for use in deployment
Dalmatian::ServiceTest
#call
changes to the ecs-services directory
logs our intention to run Terraform init
runs Terraform init, with upgrade option
ensures presence of workspace
logs our intention to run Terraform fmt
runs Terraform fmt with check and diff options
logs our intention to run Terraform validate
runs Terraform validate, with upgrade option
changes back to the app root directory
Dalmatian::SharedLoadbalancerDeployment
#call
changes to shared-loadbalancer infrastructure directory
asks Terraform to ensure that the workspace is in place
when in _plan_ mode
invokes Terraform.plan with the _dalmatian-read_ role
when NOT in _plan_ mode
invokes Terraform.apply with the _dalmatian-admin_ role
when in _auto_approve_ mode
asks Terraform to use auto_approve mode
Dalmatian::SharedLoadbalancer
#name
uses shared_loadbalancer name
#in_use_by
uses shared_loadbalancer in_use_by list
#clusters_in_use
uses shared_loadbalancer clusters_in_use list
#subnets_name
uses shared_loadbalancer subnets_name value
#domain_names
uses shared_loadbalancer domain_names list provided by Services
#internal
uses shared_loadbalancer internal value
#ip_whitelist
uses shared_loadbalancer ip_whitelist list
#idle_timeout
uses shared_loadbalancer idle_timeout value
#global_accelerator
uses shared_loadbalancer global_accelerator value
#ssl_policy
has the default ssl policy defined
#to_params
provides a hash of attributes for use in deployment
Dalmatian::SharedLoadbalancerTest
#call
changes to the shared-loadbalancer directory
logs our intention to run Terraform init
runs Terraform init, with upgrade option
ensures presence of workspace
logs our intention to run Terraform fmt
runs Terraform fmt with check and diff options
logs our intention to run Terraform validate
runs Terraform validate, with upgrade option
changes back to the app root directory
Dalmatian::SourceDeployment
#call
changes to infrastructure config directory
asks Terraform to ensure that the workspace is in place
when the environment includes a git reference as "track_revision"
checks out that commit
passes the "track_revision" reference along to Terraform
when in _plan_ mode
invokes Terraform.plan with the _dalmatian-read_ role
when NOT in _plan_ mode
invokes Terraform.apply with the _dalmatian-admin_ role
when in _auto_approve_ mode
asks Terraform to use auto_approve mode
Dalmatian::Source
#name
uses the cluster name and its own position in the cluster's list of sources
#cluster_name
delegates to the cluster
#cluster_id
delegates to the cluster
#account_id
delegates to the cluster
Dalmatian::SourceTest
#call
changes to the ecs directory
logs our intention to run Terraform init
runs Terraform init, with upgrade option
ensures presence of workspace
logs our intention to run Terraform fmt
runs Terraform fmt with check and diff options
logs our intention to run Terraform validate
runs Terraform validate, with upgrade option
changes back to the app root directory
when the environment includes a git reference as "track_revision"
checks out that commit
passes the "track_revision" reference along to Terraform.validate
Dalmatian::Terraform
::init(upgrade: false)
when asked to upgrade
passes terraform init the upgrade flag
when not asked to upgrade
does not pass terraform init the upgrade flag
::fmt(args = nil)
when passed some additional arguments
passes terraform fmt the upgrade flag
when passed NO additional arguments
invokes terraform fmt with no arguments
::validate(tfvars)
passes the given _var-file_ to terraform
reformats the given tfvars and passes them to terraform as args
::ensure_presence_of_workspace(workspace_name)
logs our intention to create the workspace
asks Terraform to create the workspace
when the workspace already exists (and an error is rescued)
logs our intention to _select_ rather than _create_ the workspace
asks Terraform to select the existing workspace
::plan(tfvars)
passes the given _var-file_ to terraform
reformats the given tfvars and passes them to terraform as args
::apply(tfvars, auto_approve=false)
passes the given _var-file_ to terraform
reformats the given tfvars and passes them to terraform as args
when auto-approve is set to true
passes the _auto-approve_ flag to terraform apply
::destroy(tfvars)
passes the given _var-file_ to terraform
reformats the given tfvars and passes them to terraform as args
::list_workspaces
changes to the bootstrapping directory
runs the terraform cmd to list workspaces
Dalmatian::UrlCacheHandler
#call
deletes any old cache
uses the helper to GET a URI
logs the cloning action
logs the path to the cached configuration
returns the cached full configuration to the caller (configuration reader)
reads the cached full configuration from the disk in order to return to caller
Dalmatian::VpnCustomerGatewayDeployment
#call
changes to vpn-customer-gateway infrastructure directory
asks Terraform to ensure that the workspace is in place
when in _plan_ mode
invokes Terraform.plan with the _dalmatian-read_ role
when NOT in _plan_ mode
invokes Terraform.apply with the _dalmatian-admin_ role
when in _auto_approve_ mode
asks Terraform to use auto_approve mode
Dalmatian::VpnCustomerGateway
#name
uses vpn_customer_gateway name
#bgp_asn
uses vpn_customer_gateway bgp_asn
#ip_address
uses vpn_customer_gateway ip_address
#to_params
provides a hash of attributes for use in deployment
Dalmatian::VpnCustomerGatewayTest
#call
changes to the vpn-customer-gateway directory
logs our intention to run Terraform init
runs Terraform init, with upgrade option
ensures presence of workspace
logs our intention to run Terraform fmt
runs Terraform fmt with check and diff options
logs our intention to run Terraform validate
runs Terraform validate, with upgrade option
changes back to the app root directory
Dalmatian::WAFDeployment
#call
changes to waf infrastructure directory
asks Terraform to ensure that the workspace is in place
when in _plan_ mode
invokes Terraform.plan with the _dalmatian-read_ role
when NOT in _plan_ mode
invokes Terraform.apply with the _dalmatian-admin_ role
when in _auto_approve_ mode
asks Terraform to use auto_approve mode
Dalmatian::WAF
#name
uses waf name
#action
uses waf action
#ip_deny_list
has a list of IP addresses to block
#aws_managed_rules
uses waf aws_managed_rules list
#associations
uses waf associations list
#to_params
provides a hash of attributes for use in deployment
Dalmatian::WAFTest
#call
changes to the ecs-services directory
logs our intention to run Terraform init
runs Terraform init, with upgrade option
ensures presence of workspace
logs our intention to run Terraform fmt
runs Terraform fmt with check and diff options
logs our intention to run Terraform validate
runs Terraform validate, with upgrade option
changes back to the app root directory
Failures:
1) tests local configuration use of "terraform apply" passes the hosted zone config to "terraform apply"
Failure/Error: allow(Helper).to receive(:run!).with(cluster1_apply_cmd_staging_rds)
NameError:
undefined local variable or method `cluster1_apply_cmd_staging_rds' for #<RSpec::ExampleGroups::TestsLocalConfiguration::UseOfTerraformApply:0x0000000977f093c8>
Did you mean? cluster1_apply_cmd_staging
cluster1_apply_cmd_staging_waf
cluster2_apply_cmd_staging
cluster3_apply_cmd_staging
cluster1_apply_cmd_staging_service
cluster1_apply_cmd_staging_aurora
# ./spec/integration/deploys_local_configuration_spec.rb:1620:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
2) tests local configuration use of "terraform apply" passes the s3 config to "terraform apply"
Failure/Error: allow(Helper).to receive(:run!).with(cluster1_apply_cmd_staging_rds)
NameError:
undefined local variable or method `cluster1_apply_cmd_staging_rds' for #<RSpec::ExampleGroups::TestsLocalConfiguration::UseOfTerraformApply:0x000000097869f308>
Did you mean? cluster1_apply_cmd_staging
cluster1_apply_cmd_staging_waf
cluster2_apply_cmd_staging
cluster3_apply_cmd_staging
cluster1_apply_cmd_staging_service
cluster1_apply_cmd_staging_aurora
# ./spec/integration/deploys_local_configuration_spec.rb:1620:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
3) tests local configuration use of "terraform apply" passes the vpn customer gateway config to "terraform apply"
Failure/Error: allow(Helper).to receive(:run!).with(cluster1_apply_cmd_staging_rds)
NameError:
undefined local variable or method `cluster1_apply_cmd_staging_rds' for #<RSpec::ExampleGroups::TestsLocalConfiguration::UseOfTerraformApply:0x00000009786eb528>
Did you mean? cluster1_apply_cmd_staging
cluster1_apply_cmd_staging_waf
cluster2_apply_cmd_staging
cluster3_apply_cmd_staging
cluster1_apply_cmd_staging_service
cluster1_apply_cmd_staging_aurora
# ./spec/integration/deploys_local_configuration_spec.rb:1620:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
4) tests local configuration use of "terraform apply" passes the base config to "terraform apply"
Failure/Error: allow(Helper).to receive(:run!).with(cluster1_apply_cmd_staging_rds)
NameError:
undefined local variable or method `cluster1_apply_cmd_staging_rds' for #<RSpec::ExampleGroups::TestsLocalConfiguration::UseOfTerraformApply:0x0000000978747e40>
Did you mean? cluster1_apply_cmd_staging
cluster1_apply_cmd_staging_waf
cluster2_apply_cmd_staging
cluster3_apply_cmd_staging
cluster1_apply_cmd_staging_service
cluster1_apply_cmd_staging_aurora
# ./spec/integration/deploys_local_configuration_spec.rb:1620:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
5) tests local configuration use of "terraform apply" passes the waf config to "terraform apply"
Failure/Error: allow(Helper).to receive(:run!).with(cluster1_apply_cmd_staging_rds)
NameError:
undefined local variable or method `cluster1_apply_cmd_staging_rds' for #<RSpec::ExampleGroups::TestsLocalConfiguration::UseOfTerraformApply:0x000000097879ca08>
Did you mean? cluster1_apply_cmd_staging
cluster1_apply_cmd_staging_waf
cluster2_apply_cmd_staging
cluster3_apply_cmd_staging
cluster1_apply_cmd_staging_service
cluster1_apply_cmd_staging_aurora
# ./spec/integration/deploys_local_configuration_spec.rb:1620:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
6) tests local configuration use of "terraform apply" passes the rds config to "terraform apply"
Failure/Error: allow(Helper).to receive(:run!).with(cluster1_apply_cmd_staging_rds)
NameError:
undefined local variable or method `cluster1_apply_cmd_staging_rds' for #<RSpec::ExampleGroups::TestsLocalConfiguration::UseOfTerraformApply:0x000000097880ab98>
Did you mean? cluster1_apply_cmd_staging
cluster1_apply_cmd_staging_waf
cluster2_apply_cmd_staging
cluster3_apply_cmd_staging
cluster1_apply_cmd_staging_service
cluster1_apply_cmd_staging_aurora
# ./spec/integration/deploys_local_configuration_spec.rb:1620:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
7) tests local configuration use of "terraform apply" passes the aurora config to "terraform apply"
Failure/Error: allow(Helper).to receive(:run!).with(cluster1_apply_cmd_staging_rds)
NameError:
undefined local variable or method `cluster1_apply_cmd_staging_rds' for #<RSpec::ExampleGroups::TestsLocalConfiguration::UseOfTerraformApply:0x0000000978844078>
Did you mean? cluster1_apply_cmd_staging
cluster1_apply_cmd_staging_waf
cluster2_apply_cmd_staging
cluster3_apply_cmd_staging
cluster1_apply_cmd_staging_service
cluster1_apply_cmd_staging_aurora
# ./spec/integration/deploys_local_configuration_spec.rb:1620:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
8) tests local configuration use of "terraform apply" passes the elasticache config to "terraform apply"
Failure/Error: allow(Helper).to receive(:run!).with(cluster1_apply_cmd_staging_rds)
NameError:
undefined local variable or method `cluster1_apply_cmd_staging_rds' for #<RSpec::ExampleGroups::TestsLocalConfiguration::UseOfTerraformApply:0x000000097889aba8>
Did you mean? cluster1_apply_cmd_staging
cluster1_apply_cmd_staging_waf
cluster2_apply_cmd_staging
cluster3_apply_cmd_staging
cluster1_apply_cmd_staging_service
cluster1_apply_cmd_staging_aurora
# ./spec/integration/deploys_local_configuration_spec.rb:1620:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
9) tests local configuration use of "terraform apply" passes the opensearch config to "terraform apply"
Failure/Error: allow(Helper).to receive(:run!).with(cluster1_apply_cmd_staging_rds)
NameError:
undefined local variable or method `cluster1_apply_cmd_staging_rds' for #<RSpec::ExampleGroups::TestsLocalConfiguration::UseOfTerraformApply:0x00000009788e4b18>
Did you mean? cluster1_apply_cmd_staging
cluster1_apply_cmd_staging_waf
cluster2_apply_cmd_staging
cluster3_apply_cmd_staging
cluster1_apply_cmd_staging_service
cluster1_apply_cmd_staging_aurora
# ./spec/integration/deploys_local_configuration_spec.rb:1620:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
10) tests local configuration use of "terraform apply" passes the service config to "terraform apply"
Failure/Error: allow(Helper).to receive(:run!).with(cluster1_apply_cmd_staging_rds)
NameError:
undefined local variable or method `cluster1_apply_cmd_staging_rds' for #<RSpec::ExampleGroups::TestsLocalConfiguration::UseOfTerraformApply:0x0000000978939208>
Did you mean? cluster1_apply_cmd_staging
cluster1_apply_cmd_staging_waf
cluster2_apply_cmd_staging
cluster3_apply_cmd_staging
cluster1_apply_cmd_staging_service
cluster1_apply_cmd_staging_aurora
# ./spec/integration/deploys_local_configuration_spec.rb:1620:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
11) tests local configuration use of "terraform apply" passes the loadbalancer config to "terraform apply"
Failure/Error: allow(Helper).to receive(:run!).with(cluster1_apply_cmd_staging_rds)
NameError:
undefined local variable or method `cluster1_apply_cmd_staging_rds' for #<RSpec::ExampleGroups::TestsLocalConfiguration::UseOfTerraformApply:0x000000097898c890>
Did you mean? cluster1_apply_cmd_staging
cluster1_apply_cmd_staging_waf
cluster2_apply_cmd_staging
cluster3_apply_cmd_staging
cluster1_apply_cmd_staging_service
cluster1_apply_cmd_staging_aurora
# ./spec/integration/deploys_local_configuration_spec.rb:1620:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
12) tests local configuration use of "terraform apply" passes the cluster 2 config to "terraform apply"
Failure/Error: allow(Helper).to receive(:run!).with(cluster1_apply_cmd_staging_rds)
NameError:
undefined local variable or method `cluster1_apply_cmd_staging_rds' for #<RSpec::ExampleGroups::TestsLocalConfiguration::UseOfTerraformApply:0x00000009789a2190>
Did you mean? cluster1_apply_cmd_staging
cluster1_apply_cmd_staging_waf
cluster2_apply_cmd_staging
cluster3_apply_cmd_staging
cluster1_apply_cmd_staging_service
cluster1_apply_cmd_staging_aurora
# ./spec/integration/deploys_local_configuration_spec.rb:1620:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
13) tests local configuration use of "terraform apply" passes the cluster 3 config to "terraform apply"
Failure/Error: allow(Helper).to receive(:run!).with(cluster1_apply_cmd_staging_rds)
NameError:
undefined local variable or method `cluster1_apply_cmd_staging_rds' for #<RSpec::ExampleGroups::TestsLocalConfiguration::UseOfTerraformApply:0x0000000978948708>
Did you mean? cluster1_apply_cmd_staging
cluster1_apply_cmd_staging_waf
cluster2_apply_cmd_staging
cluster3_apply_cmd_staging
cluster1_apply_cmd_staging_service
cluster1_apply_cmd_staging_aurora
# ./spec/integration/deploys_local_configuration_spec.rb:1620:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
14) tests local configuration use of "terraform apply" passes the cluster 4 config to "terraform apply"
Failure/Error: allow(Helper).to receive(:run!).with(cluster1_apply_cmd_staging_rds)
NameError:
undefined local variable or method `cluster1_apply_cmd_staging_rds' for #<RSpec::ExampleGroups::TestsLocalConfiguration::UseOfTerraformApply:0x00000009788f32a8>
Did you mean? cluster1_apply_cmd_staging
cluster1_apply_cmd_staging_waf
cluster2_apply_cmd_staging
cluster3_apply_cmd_staging
cluster1_apply_cmd_staging_service
cluster1_apply_cmd_staging_aurora
# ./spec/integration/deploys_local_configuration_spec.rb:1620:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
15) tests local configuration invokes "terraform validate" with the expected cluster options
Failure/Error: Helper.run!(cmd)
#<Dalmatian::Helper (class)> received :run! with unexpected arguments
expected: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_example_var='bar' TF_VAR_environment='production' TF_VAR_cluster_name='shared-cluster-production' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='existing-shared-cluster-production' TF_VAR_dalmatian_role='dalmatian-read' terraform plan")
got: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='new-dedicated-cluster' TF_VAR_dalmatian_role='dalmatian-read' TF_VAR_environment='production' TF_VAR_aurora='{identifier =\"testaurora\",in_use_by =[\"test-service\"],clusters_in_use ={production =[\"test\"],staging =[\"test\"]},minimum_size ={production =2,staging =1},maximum_size ={production =2,staging =1},engine =\"aurora-postgresql\",engine_version =\"11.9\",db_name =\"testapp\",port =5432,force_ssl =true,maintenance_window =\"mon:19:00-mon:19:30\",backup_window =\"09:00-10:00\",backup_retention_period =31,parameter_store_path_db_url_name =\"DATABASE_URL\",sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],check_sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],sync_sql_backup_to_azure =false,replication_bucket_destination_arn =\"arn:aws:s3:::your-destination-bucket-name\",replication_kms_key_id =\"your-destination-kms-key-id\"}' terraform validate")
Please stub a default value first if message might be received with other args as well.
# ./lib/dalmatian/terraform.rb:17:in `validate'
# ./lib/dalmatian/testable.rb:25:in `terraform_validate'
# ./lib/dalmatian/testable.rb:9:in `call'
# ./lib/dalmatian/cluster.rb:358:in `test_aurora'
# ./lib/dalmatian/cluster.rb:273:in `deploy_aurora'
# ./lib/dalmatian/cluster.rb:75:in `block (2 levels) in deploy'
# ./lib/dalmatian/cluster.rb:73:in `each'
# ./lib/dalmatian/cluster.rb:73:in `block in deploy'
# ./lib/dalmatian/cluster.rb:59:in `each'
# ./lib/dalmatian/cluster.rb:59:in `deploy'
# ./lib/dalmatian/infrastructure.rb:24:in `block in deploy'
# ./lib/dalmatian/infrastructure.rb:22:in `each'
# ./lib/dalmatian/infrastructure.rb:22:in `deploy'
# ./lib/dalmatian/infrastructure.rb:18:in `test'
# ./spec/integration/tests_local_configuration_spec.rb:3397:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
16) tests local configuration invokes "terraform validate" with the expected source options
Failure/Error: Helper.run!(cmd)
#<Dalmatian::Helper (class)> received :run! with unexpected arguments
expected: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_example_var='bar' TF_VAR_environment='production' TF_VAR_cluster_name='shared-cluster-production' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='existing-shared-cluster-production' TF_VAR_dalmatian_role='dalmatian-read' terraform plan")
got: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='new-dedicated-cluster' TF_VAR_dalmatian_role='dalmatian-read' TF_VAR_environment='production' TF_VAR_aurora='{identifier =\"testaurora\",in_use_by =[\"test-service\"],clusters_in_use ={production =[\"test\"],staging =[\"test\"]},minimum_size ={production =2,staging =1},maximum_size ={production =2,staging =1},engine =\"aurora-postgresql\",engine_version =\"11.9\",db_name =\"testapp\",port =5432,force_ssl =true,maintenance_window =\"mon:19:00-mon:19:30\",backup_window =\"09:00-10:00\",backup_retention_period =31,parameter_store_path_db_url_name =\"DATABASE_URL\",sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],check_sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],sync_sql_backup_to_azure =false,replication_bucket_destination_arn =\"arn:aws:s3:::your-destination-bucket-name\",replication_kms_key_id =\"your-destination-kms-key-id\"}' terraform validate")
Please stub a default value first if message might be received with other args as well.
# ./lib/dalmatian/terraform.rb:17:in `validate'
# ./lib/dalmatian/testable.rb:25:in `terraform_validate'
# ./lib/dalmatian/testable.rb:9:in `call'
# ./lib/dalmatian/cluster.rb:358:in `test_aurora'
# ./lib/dalmatian/cluster.rb:273:in `deploy_aurora'
# ./lib/dalmatian/cluster.rb:75:in `block (2 levels) in deploy'
# ./lib/dalmatian/cluster.rb:73:in `each'
# ./lib/dalmatian/cluster.rb:73:in `block in deploy'
# ./lib/dalmatian/cluster.rb:59:in `each'
# ./lib/dalmatian/cluster.rb:59:in `deploy'
# ./lib/dalmatian/infrastructure.rb:24:in `block in deploy'
# ./lib/dalmatian/infrastructure.rb:22:in `each'
# ./lib/dalmatian/infrastructure.rb:22:in `deploy'
# ./lib/dalmatian/infrastructure.rb:18:in `test'
# ./spec/integration/tests_local_configuration_spec.rb:3397:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
17) tests local configuration use of "terraform plan" passes the hosted zone config to "terraform plan"
Failure/Error: Helper.run!(cmd)
#<Dalmatian::Helper (class)> received :run! with unexpected arguments
expected: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_example_var='bar' TF_VAR_environment='production' TF_VAR_cluster_name='shared-cluster-production' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='existing-shared-cluster-production' TF_VAR_dalmatian_role='dalmatian-read' terraform plan")
got: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='new-dedicated-cluster' TF_VAR_dalmatian_role='dalmatian-read' TF_VAR_environment='production' TF_VAR_aurora='{identifier =\"testaurora\",in_use_by =[\"test-service\"],clusters_in_use ={production =[\"test\"],staging =[\"test\"]},minimum_size ={production =2,staging =1},maximum_size ={production =2,staging =1},engine =\"aurora-postgresql\",engine_version =\"11.9\",db_name =\"testapp\",port =5432,force_ssl =true,maintenance_window =\"mon:19:00-mon:19:30\",backup_window =\"09:00-10:00\",backup_retention_period =31,parameter_store_path_db_url_name =\"DATABASE_URL\",sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],check_sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],sync_sql_backup_to_azure =false,replication_bucket_destination_arn =\"arn:aws:s3:::your-destination-bucket-name\",replication_kms_key_id =\"your-destination-kms-key-id\"}' terraform validate")
Please stub a default value first if message might be received with other args as well.
# ./lib/dalmatian/terraform.rb:17:in `validate'
# ./lib/dalmatian/testable.rb:25:in `terraform_validate'
# ./lib/dalmatian/testable.rb:9:in `call'
# ./lib/dalmatian/cluster.rb:358:in `test_aurora'
# ./lib/dalmatian/cluster.rb:273:in `deploy_aurora'
# ./lib/dalmatian/cluster.rb:75:in `block (2 levels) in deploy'
# ./lib/dalmatian/cluster.rb:73:in `each'
# ./lib/dalmatian/cluster.rb:73:in `block in deploy'
# ./lib/dalmatian/cluster.rb:59:in `each'
# ./lib/dalmatian/cluster.rb:59:in `deploy'
# ./lib/dalmatian/infrastructure.rb:24:in `block in deploy'
# ./lib/dalmatian/infrastructure.rb:22:in `each'
# ./lib/dalmatian/infrastructure.rb:22:in `deploy'
# ./lib/dalmatian/infrastructure.rb:18:in `test'
# ./spec/integration/tests_local_configuration_spec.rb:3397:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
18) tests local configuration use of "terraform plan" passes the s3 config to "terraform plan"
Failure/Error: Helper.run!(cmd)
#<Dalmatian::Helper (class)> received :run! with unexpected arguments
expected: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_example_var='bar' TF_VAR_environment='production' TF_VAR_cluster_name='shared-cluster-production' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='existing-shared-cluster-production' TF_VAR_dalmatian_role='dalmatian-read' terraform plan")
got: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='new-dedicated-cluster' TF_VAR_dalmatian_role='dalmatian-read' TF_VAR_environment='production' TF_VAR_aurora='{identifier =\"testaurora\",in_use_by =[\"test-service\"],clusters_in_use ={production =[\"test\"],staging =[\"test\"]},minimum_size ={production =2,staging =1},maximum_size ={production =2,staging =1},engine =\"aurora-postgresql\",engine_version =\"11.9\",db_name =\"testapp\",port =5432,force_ssl =true,maintenance_window =\"mon:19:00-mon:19:30\",backup_window =\"09:00-10:00\",backup_retention_period =31,parameter_store_path_db_url_name =\"DATABASE_URL\",sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],check_sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],sync_sql_backup_to_azure =false,replication_bucket_destination_arn =\"arn:aws:s3:::your-destination-bucket-name\",replication_kms_key_id =\"your-destination-kms-key-id\"}' terraform validate")
Please stub a default value first if message might be received with other args as well.
# ./lib/dalmatian/terraform.rb:17:in `validate'
# ./lib/dalmatian/testable.rb:25:in `terraform_validate'
# ./lib/dalmatian/testable.rb:9:in `call'
# ./lib/dalmatian/cluster.rb:358:in `test_aurora'
# ./lib/dalmatian/cluster.rb:273:in `deploy_aurora'
# ./lib/dalmatian/cluster.rb:75:in `block (2 levels) in deploy'
# ./lib/dalmatian/cluster.rb:73:in `each'
# ./lib/dalmatian/cluster.rb:73:in `block in deploy'
# ./lib/dalmatian/cluster.rb:59:in `each'
# ./lib/dalmatian/cluster.rb:59:in `deploy'
# ./lib/dalmatian/infrastructure.rb:24:in `block in deploy'
# ./lib/dalmatian/infrastructure.rb:22:in `each'
# ./lib/dalmatian/infrastructure.rb:22:in `deploy'
# ./lib/dalmatian/infrastructure.rb:18:in `test'
# ./spec/integration/tests_local_configuration_spec.rb:3397:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
19) tests local configuration use of "terraform plan" passes the vpn customer gateway config to "terraform plan"
Failure/Error: Helper.run!(cmd)
#<Dalmatian::Helper (class)> received :run! with unexpected arguments
expected: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_example_var='bar' TF_VAR_environment='production' TF_VAR_cluster_name='shared-cluster-production' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='existing-shared-cluster-production' TF_VAR_dalmatian_role='dalmatian-read' terraform plan")
got: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='new-dedicated-cluster' TF_VAR_dalmatian_role='dalmatian-read' TF_VAR_environment='production' TF_VAR_aurora='{identifier =\"testaurora\",in_use_by =[\"test-service\"],clusters_in_use ={production =[\"test\"],staging =[\"test\"]},minimum_size ={production =2,staging =1},maximum_size ={production =2,staging =1},engine =\"aurora-postgresql\",engine_version =\"11.9\",db_name =\"testapp\",port =5432,force_ssl =true,maintenance_window =\"mon:19:00-mon:19:30\",backup_window =\"09:00-10:00\",backup_retention_period =31,parameter_store_path_db_url_name =\"DATABASE_URL\",sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],check_sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],sync_sql_backup_to_azure =false,replication_bucket_destination_arn =\"arn:aws:s3:::your-destination-bucket-name\",replication_kms_key_id =\"your-destination-kms-key-id\"}' terraform validate")
Please stub a default value first if message might be received with other args as well.
# ./lib/dalmatian/terraform.rb:17:in `validate'
# ./lib/dalmatian/testable.rb:25:in `terraform_validate'
# ./lib/dalmatian/testable.rb:9:in `call'
# ./lib/dalmatian/cluster.rb:358:in `test_aurora'
# ./lib/dalmatian/cluster.rb:273:in `deploy_aurora'
# ./lib/dalmatian/cluster.rb:75:in `block (2 levels) in deploy'
# ./lib/dalmatian/cluster.rb:73:in `each'
# ./lib/dalmatian/cluster.rb:73:in `block in deploy'
# ./lib/dalmatian/cluster.rb:59:in `each'
# ./lib/dalmatian/cluster.rb:59:in `deploy'
# ./lib/dalmatian/infrastructure.rb:24:in `block in deploy'
# ./lib/dalmatian/infrastructure.rb:22:in `each'
# ./lib/dalmatian/infrastructure.rb:22:in `deploy'
# ./lib/dalmatian/infrastructure.rb:18:in `test'
# ./spec/integration/tests_local_configuration_spec.rb:3397:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
20) tests local configuration use of "terraform plan" passes the base config to "terraform plan"
Failure/Error: Helper.run!(cmd)
#<Dalmatian::Helper (class)> received :run! with unexpected arguments
expected: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_example_var='bar' TF_VAR_environment='production' TF_VAR_cluster_name='shared-cluster-production' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='existing-shared-cluster-production' TF_VAR_dalmatian_role='dalmatian-read' terraform plan")
got: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='new-dedicated-cluster' TF_VAR_dalmatian_role='dalmatian-read' TF_VAR_environment='production' TF_VAR_aurora='{identifier =\"testaurora\",in_use_by =[\"test-service\"],clusters_in_use ={production =[\"test\"],staging =[\"test\"]},minimum_size ={production =2,staging =1},maximum_size ={production =2,staging =1},engine =\"aurora-postgresql\",engine_version =\"11.9\",db_name =\"testapp\",port =5432,force_ssl =true,maintenance_window =\"mon:19:00-mon:19:30\",backup_window =\"09:00-10:00\",backup_retention_period =31,parameter_store_path_db_url_name =\"DATABASE_URL\",sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],check_sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],sync_sql_backup_to_azure =false,replication_bucket_destination_arn =\"arn:aws:s3:::your-destination-bucket-name\",replication_kms_key_id =\"your-destination-kms-key-id\"}' terraform validate")
Please stub a default value first if message might be received with other args as well.
# ./lib/dalmatian/terraform.rb:17:in `validate'
# ./lib/dalmatian/testable.rb:25:in `terraform_validate'
# ./lib/dalmatian/testable.rb:9:in `call'
# ./lib/dalmatian/cluster.rb:358:in `test_aurora'
# ./lib/dalmatian/cluster.rb:273:in `deploy_aurora'
# ./lib/dalmatian/cluster.rb:75:in `block (2 levels) in deploy'
# ./lib/dalmatian/cluster.rb:73:in `each'
# ./lib/dalmatian/cluster.rb:73:in `block in deploy'
# ./lib/dalmatian/cluster.rb:59:in `each'
# ./lib/dalmatian/cluster.rb:59:in `deploy'
# ./lib/dalmatian/infrastructure.rb:24:in `block in deploy'
# ./lib/dalmatian/infrastructure.rb:22:in `each'
# ./lib/dalmatian/infrastructure.rb:22:in `deploy'
# ./lib/dalmatian/infrastructure.rb:18:in `test'
# ./spec/integration/tests_local_configuration_spec.rb:3397:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
21) tests local configuration use of "terraform plan" passes the waf config to "terraform plan"
Failure/Error: Helper.run!(cmd)
#<Dalmatian::Helper (class)> received :run! with unexpected arguments
expected: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_example_var='bar' TF_VAR_environment='production' TF_VAR_cluster_name='shared-cluster-production' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='existing-shared-cluster-production' TF_VAR_dalmatian_role='dalmatian-read' terraform plan")
got: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='new-dedicated-cluster' TF_VAR_dalmatian_role='dalmatian-read' TF_VAR_environment='production' TF_VAR_aurora='{identifier =\"testaurora\",in_use_by =[\"test-service\"],clusters_in_use ={production =[\"test\"],staging =[\"test\"]},minimum_size ={production =2,staging =1},maximum_size ={production =2,staging =1},engine =\"aurora-postgresql\",engine_version =\"11.9\",db_name =\"testapp\",port =5432,force_ssl =true,maintenance_window =\"mon:19:00-mon:19:30\",backup_window =\"09:00-10:00\",backup_retention_period =31,parameter_store_path_db_url_name =\"DATABASE_URL\",sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],check_sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],sync_sql_backup_to_azure =false,replication_bucket_destination_arn =\"arn:aws:s3:::your-destination-bucket-name\",replication_kms_key_id =\"your-destination-kms-key-id\"}' terraform validate")
Please stub a default value first if message might be received with other args as well.
# ./lib/dalmatian/terraform.rb:17:in `validate'
# ./lib/dalmatian/testable.rb:25:in `terraform_validate'
# ./lib/dalmatian/testable.rb:9:in `call'
# ./lib/dalmatian/cluster.rb:358:in `test_aurora'
# ./lib/dalmatian/cluster.rb:273:in `deploy_aurora'
# ./lib/dalmatian/cluster.rb:75:in `block (2 levels) in deploy'
# ./lib/dalmatian/cluster.rb:73:in `each'
# ./lib/dalmatian/cluster.rb:73:in `block in deploy'
# ./lib/dalmatian/cluster.rb:59:in `each'
# ./lib/dalmatian/cluster.rb:59:in `deploy'
# ./lib/dalmatian/infrastructure.rb:24:in `block in deploy'
# ./lib/dalmatian/infrastructure.rb:22:in `each'
# ./lib/dalmatian/infrastructure.rb:22:in `deploy'
# ./lib/dalmatian/infrastructure.rb:18:in `test'
# ./spec/integration/tests_local_configuration_spec.rb:3397:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
22) tests local configuration use of "terraform plan" passes the rds config to "terraform plan"
Failure/Error: Helper.run!(cmd)
#<Dalmatian::Helper (class)> received :run! with unexpected arguments
expected: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_example_var='bar' TF_VAR_environment='production' TF_VAR_cluster_name='shared-cluster-production' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='existing-shared-cluster-production' TF_VAR_dalmatian_role='dalmatian-read' terraform plan")
got: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='new-dedicated-cluster' TF_VAR_dalmatian_role='dalmatian-read' TF_VAR_environment='production' TF_VAR_aurora='{identifier =\"testaurora\",in_use_by =[\"test-service\"],clusters_in_use ={production =[\"test\"],staging =[\"test\"]},minimum_size ={production =2,staging =1},maximum_size ={production =2,staging =1},engine =\"aurora-postgresql\",engine_version =\"11.9\",db_name =\"testapp\",port =5432,force_ssl =true,maintenance_window =\"mon:19:00-mon:19:30\",backup_window =\"09:00-10:00\",backup_retention_period =31,parameter_store_path_db_url_name =\"DATABASE_URL\",sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],check_sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],sync_sql_backup_to_azure =false,replication_bucket_destination_arn =\"arn:aws:s3:::your-destination-bucket-name\",replication_kms_key_id =\"your-destination-kms-key-id\"}' terraform validate")
Please stub a default value first if message might be received with other args as well.
# ./lib/dalmatian/terraform.rb:17:in `validate'
# ./lib/dalmatian/testable.rb:25:in `terraform_validate'
# ./lib/dalmatian/testable.rb:9:in `call'
# ./lib/dalmatian/cluster.rb:358:in `test_aurora'
# ./lib/dalmatian/cluster.rb:273:in `deploy_aurora'
# ./lib/dalmatian/cluster.rb:75:in `block (2 levels) in deploy'
# ./lib/dalmatian/cluster.rb:73:in `each'
# ./lib/dalmatian/cluster.rb:73:in `block in deploy'
# ./lib/dalmatian/cluster.rb:59:in `each'
# ./lib/dalmatian/cluster.rb:59:in `deploy'
# ./lib/dalmatian/infrastructure.rb:24:in `block in deploy'
# ./lib/dalmatian/infrastructure.rb:22:in `each'
# ./lib/dalmatian/infrastructure.rb:22:in `deploy'
# ./lib/dalmatian/infrastructure.rb:18:in `test'
# ./spec/integration/tests_local_configuration_spec.rb:3397:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
23) tests local configuration use of "terraform plan" passes the aurora config to "terraform plan"
Failure/Error: Helper.run!(cmd)
#<Dalmatian::Helper (class)> received :run! with unexpected arguments
expected: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_example_var='bar' TF_VAR_environment='production' TF_VAR_cluster_name='shared-cluster-production' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='existing-shared-cluster-production' TF_VAR_dalmatian_role='dalmatian-read' terraform plan")
got: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='new-dedicated-cluster' TF_VAR_dalmatian_role='dalmatian-read' TF_VAR_environment='production' TF_VAR_aurora='{identifier =\"testaurora\",in_use_by =[\"test-service\"],clusters_in_use ={production =[\"test\"],staging =[\"test\"]},minimum_size ={production =2,staging =1},maximum_size ={production =2,staging =1},engine =\"aurora-postgresql\",engine_version =\"11.9\",db_name =\"testapp\",port =5432,force_ssl =true,maintenance_window =\"mon:19:00-mon:19:30\",backup_window =\"09:00-10:00\",backup_retention_period =31,parameter_store_path_db_url_name =\"DATABASE_URL\",sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],check_sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],sync_sql_backup_to_azure =false,replication_bucket_destination_arn =\"arn:aws:s3:::your-destination-bucket-name\",replication_kms_key_id =\"your-destination-kms-key-id\"}' terraform validate")
Please stub a default value first if message might be received with other args as well.
# ./lib/dalmatian/terraform.rb:17:in `validate'
# ./lib/dalmatian/testable.rb:25:in `terraform_validate'
# ./lib/dalmatian/testable.rb:9:in `call'
# ./lib/dalmatian/cluster.rb:358:in `test_aurora'
# ./lib/dalmatian/cluster.rb:273:in `deploy_aurora'
# ./lib/dalmatian/cluster.rb:75:in `block (2 levels) in deploy'
# ./lib/dalmatian/cluster.rb:73:in `each'
# ./lib/dalmatian/cluster.rb:73:in `block in deploy'
# ./lib/dalmatian/cluster.rb:59:in `each'
# ./lib/dalmatian/cluster.rb:59:in `deploy'
# ./lib/dalmatian/infrastructure.rb:24:in `block in deploy'
# ./lib/dalmatian/infrastructure.rb:22:in `each'
# ./lib/dalmatian/infrastructure.rb:22:in `deploy'
# ./lib/dalmatian/infrastructure.rb:18:in `test'
# ./spec/integration/tests_local_configuration_spec.rb:3397:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
24) tests local configuration use of "terraform plan" passes the elasticache config to "terraform plan"
Failure/Error: Helper.run!(cmd)
#<Dalmatian::Helper (class)> received :run! with unexpected arguments
expected: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_example_var='bar' TF_VAR_environment='production' TF_VAR_cluster_name='shared-cluster-production' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='existing-shared-cluster-production' TF_VAR_dalmatian_role='dalmatian-read' terraform plan")
got: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='new-dedicated-cluster' TF_VAR_dalmatian_role='dalmatian-read' TF_VAR_environment='production' TF_VAR_aurora='{identifier =\"testaurora\",in_use_by =[\"test-service\"],clusters_in_use ={production =[\"test\"],staging =[\"test\"]},minimum_size ={production =2,staging =1},maximum_size ={production =2,staging =1},engine =\"aurora-postgresql\",engine_version =\"11.9\",db_name =\"testapp\",port =5432,force_ssl =true,maintenance_window =\"mon:19:00-mon:19:30\",backup_window =\"09:00-10:00\",backup_retention_period =31,parameter_store_path_db_url_name =\"DATABASE_URL\",sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],check_sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],sync_sql_backup_to_azure =false,replication_bucket_destination_arn =\"arn:aws:s3:::your-destination-bucket-name\",replication_kms_key_id =\"your-destination-kms-key-id\"}' terraform validate")
Please stub a default value first if message might be received with other args as well.
# ./lib/dalmatian/terraform.rb:17:in `validate'
# ./lib/dalmatian/testable.rb:25:in `terraform_validate'
# ./lib/dalmatian/testable.rb:9:in `call'
# ./lib/dalmatian/cluster.rb:358:in `test_aurora'
# ./lib/dalmatian/cluster.rb:273:in `deploy_aurora'
# ./lib/dalmatian/cluster.rb:75:in `block (2 levels) in deploy'
# ./lib/dalmatian/cluster.rb:73:in `each'
# ./lib/dalmatian/cluster.rb:73:in `block in deploy'
# ./lib/dalmatian/cluster.rb:59:in `each'
# ./lib/dalmatian/cluster.rb:59:in `deploy'
# ./lib/dalmatian/infrastructure.rb:24:in `block in deploy'
# ./lib/dalmatian/infrastructure.rb:22:in `each'
# ./lib/dalmatian/infrastructure.rb:22:in `deploy'
# ./lib/dalmatian/infrastructure.rb:18:in `test'
# ./spec/integration/tests_local_configuration_spec.rb:3397:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
25) tests local configuration use of "terraform plan" passes the opensearch config to "terraform plan"
Failure/Error: Helper.run!(cmd)
#<Dalmatian::Helper (class)> received :run! with unexpected arguments
expected: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_example_var='bar' TF_VAR_environment='production' TF_VAR_cluster_name='shared-cluster-production' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='existing-shared-cluster-production' TF_VAR_dalmatian_role='dalmatian-read' terraform plan")
got: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='new-dedicated-cluster' TF_VAR_dalmatian_role='dalmatian-read' TF_VAR_environment='production' TF_VAR_aurora='{identifier =\"testaurora\",in_use_by =[\"test-service\"],clusters_in_use ={production =[\"test\"],staging =[\"test\"]},minimum_size ={production =2,staging =1},maximum_size ={production =2,staging =1},engine =\"aurora-postgresql\",engine_version =\"11.9\",db_name =\"testapp\",port =5432,force_ssl =true,maintenance_window =\"mon:19:00-mon:19:30\",backup_window =\"09:00-10:00\",backup_retention_period =31,parameter_store_path_db_url_name =\"DATABASE_URL\",sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],check_sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],sync_sql_backup_to_azure =false,replication_bucket_destination_arn =\"arn:aws:s3:::your-destination-bucket-name\",replication_kms_key_id =\"your-destination-kms-key-id\"}' terraform validate")
Please stub a default value first if message might be received with other args as well.
# ./lib/dalmatian/terraform.rb:17:in `validate'
# ./lib/dalmatian/testable.rb:25:in `terraform_validate'
# ./lib/dalmatian/testable.rb:9:in `call'
# ./lib/dalmatian/cluster.rb:358:in `test_aurora'
# ./lib/dalmatian/cluster.rb:273:in `deploy_aurora'
# ./lib/dalmatian/cluster.rb:75:in `block (2 levels) in deploy'
# ./lib/dalmatian/cluster.rb:73:in `each'
# ./lib/dalmatian/cluster.rb:73:in `block in deploy'
# ./lib/dalmatian/cluster.rb:59:in `each'
# ./lib/dalmatian/cluster.rb:59:in `deploy'
# ./lib/dalmatian/infrastructure.rb:24:in `block in deploy'
# ./lib/dalmatian/infrastructure.rb:22:in `each'
# ./lib/dalmatian/infrastructure.rb:22:in `deploy'
# ./lib/dalmatian/infrastructure.rb:18:in `test'
# ./spec/integration/tests_local_configuration_spec.rb:3397:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
26) tests local configuration use of "terraform plan" passes the services config to "terraform plan"
Failure/Error: Helper.run!(cmd)
#<Dalmatian::Helper (class)> received :run! with unexpected arguments
expected: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_example_var='bar' TF_VAR_environment='production' TF_VAR_cluster_name='shared-cluster-production' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='existing-shared-cluster-production' TF_VAR_dalmatian_role='dalmatian-read' terraform plan")
got: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='new-dedicated-cluster' TF_VAR_dalmatian_role='dalmatian-read' TF_VAR_environment='production' TF_VAR_aurora='{identifier =\"testaurora\",in_use_by =[\"test-service\"],clusters_in_use ={production =[\"test\"],staging =[\"test\"]},minimum_size ={production =2,staging =1},maximum_size ={production =2,staging =1},engine =\"aurora-postgresql\",engine_version =\"11.9\",db_name =\"testapp\",port =5432,force_ssl =true,maintenance_window =\"mon:19:00-mon:19:30\",backup_window =\"09:00-10:00\",backup_retention_period =31,parameter_store_path_db_url_name =\"DATABASE_URL\",sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],check_sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],sync_sql_backup_to_azure =false,replication_bucket_destination_arn =\"arn:aws:s3:::your-destination-bucket-name\",replication_kms_key_id =\"your-destination-kms-key-id\"}' terraform validate")
Please stub a default value first if message might be received with other args as well.
# ./lib/dalmatian/terraform.rb:17:in `validate'
# ./lib/dalmatian/testable.rb:25:in `terraform_validate'
# ./lib/dalmatian/testable.rb:9:in `call'
# ./lib/dalmatian/cluster.rb:358:in `test_aurora'
# ./lib/dalmatian/cluster.rb:273:in `deploy_aurora'
# ./lib/dalmatian/cluster.rb:75:in `block (2 levels) in deploy'
# ./lib/dalmatian/cluster.rb:73:in `each'
# ./lib/dalmatian/cluster.rb:73:in `block in deploy'
# ./lib/dalmatian/cluster.rb:59:in `each'
# ./lib/dalmatian/cluster.rb:59:in `deploy'
# ./lib/dalmatian/infrastructure.rb:24:in `block in deploy'
# ./lib/dalmatian/infrastructure.rb:22:in `each'
# ./lib/dalmatian/infrastructure.rb:22:in `deploy'
# ./lib/dalmatian/infrastructure.rb:18:in `test'
# ./spec/integration/tests_local_configuration_spec.rb:3397:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
27) tests local configuration use of "terraform plan" passes the loadbalancer config to "terraform plan"
Failure/Error: Helper.run!(cmd)
#<Dalmatian::Helper (class)> received :run! with unexpected arguments
expected: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_example_var='bar' TF_VAR_environment='production' TF_VAR_cluster_name='shared-cluster-production' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='existing-shared-cluster-production' TF_VAR_dalmatian_role='dalmatian-read' terraform plan")
got: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='new-dedicated-cluster' TF_VAR_dalmatian_role='dalmatian-read' TF_VAR_environment='production' TF_VAR_aurora='{identifier =\"testaurora\",in_use_by =[\"test-service\"],clusters_in_use ={production =[\"test\"],staging =[\"test\"]},minimum_size ={production =2,staging =1},maximum_size ={production =2,staging =1},engine =\"aurora-postgresql\",engine_version =\"11.9\",db_name =\"testapp\",port =5432,force_ssl =true,maintenance_window =\"mon:19:00-mon:19:30\",backup_window =\"09:00-10:00\",backup_retention_period =31,parameter_store_path_db_url_name =\"DATABASE_URL\",sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],check_sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],sync_sql_backup_to_azure =false,replication_bucket_destination_arn =\"arn:aws:s3:::your-destination-bucket-name\",replication_kms_key_id =\"your-destination-kms-key-id\"}' terraform validate")
Please stub a default value first if message might be received with other args as well.
# ./lib/dalmatian/terraform.rb:17:in `validate'
# ./lib/dalmatian/testable.rb:25:in `terraform_validate'
# ./lib/dalmatian/testable.rb:9:in `call'
# ./lib/dalmatian/cluster.rb:358:in `test_aurora'
# ./lib/dalmatian/cluster.rb:273:in `deploy_aurora'
# ./lib/dalmatian/cluster.rb:75:in `block (2 levels) in deploy'
# ./lib/dalmatian/cluster.rb:73:in `each'
# ./lib/dalmatian/cluster.rb:73:in `block in deploy'
# ./lib/dalmatian/cluster.rb:59:in `each'
# ./lib/dalmatian/cluster.rb:59:in `deploy'
# ./lib/dalmatian/infrastructure.rb:24:in `block in deploy'
# ./lib/dalmatian/infrastructure.rb:22:in `each'
# ./lib/dalmatian/infrastructure.rb:22:in `deploy'
# ./lib/dalmatian/infrastructure.rb:18:in `test'
# ./spec/integration/tests_local_configuration_spec.rb:3397:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
28) tests local configuration use of "terraform plan" passes the cluster 2 config to "terraform plan"
Failure/Error: Helper.run!(cmd)
#<Dalmatian::Helper (class)> received :run! with unexpected arguments
expected: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_example_var='bar' TF_VAR_environment='production' TF_VAR_cluster_name='shared-cluster-production' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='existing-shared-cluster-production' TF_VAR_dalmatian_role='dalmatian-read' terraform plan")
got: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='new-dedicated-cluster' TF_VAR_dalmatian_role='dalmatian-read' TF_VAR_environment='production' TF_VAR_aurora='{identifier =\"testaurora\",in_use_by =[\"test-service\"],clusters_in_use ={production =[\"test\"],staging =[\"test\"]},minimum_size ={production =2,staging =1},maximum_size ={production =2,staging =1},engine =\"aurora-postgresql\",engine_version =\"11.9\",db_name =\"testapp\",port =5432,force_ssl =true,maintenance_window =\"mon:19:00-mon:19:30\",backup_window =\"09:00-10:00\",backup_retention_period =31,parameter_store_path_db_url_name =\"DATABASE_URL\",sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],check_sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],sync_sql_backup_to_azure =false,replication_bucket_destination_arn =\"arn:aws:s3:::your-destination-bucket-name\",replication_kms_key_id =\"your-destination-kms-key-id\"}' terraform validate")
Please stub a default value first if message might be received with other args as well.
# ./lib/dalmatian/terraform.rb:17:in `validate'
# ./lib/dalmatian/testable.rb:25:in `terraform_validate'
# ./lib/dalmatian/testable.rb:9:in `call'
# ./lib/dalmatian/cluster.rb:358:in `test_aurora'
# ./lib/dalmatian/cluster.rb:273:in `deploy_aurora'
# ./lib/dalmatian/cluster.rb:75:in `block (2 levels) in deploy'
# ./lib/dalmatian/cluster.rb:73:in `each'
# ./lib/dalmatian/cluster.rb:73:in `block in deploy'
# ./lib/dalmatian/cluster.rb:59:in `each'
# ./lib/dalmatian/cluster.rb:59:in `deploy'
# ./lib/dalmatian/infrastructure.rb:24:in `block in deploy'
# ./lib/dalmatian/infrastructure.rb:22:in `each'
# ./lib/dalmatian/infrastructure.rb:22:in `deploy'
# ./lib/dalmatian/infrastructure.rb:18:in `test'
# ./spec/integration/tests_local_configuration_spec.rb:3397:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
29) tests local configuration use of "terraform plan" passes the cluster 3 config to "terraform plan"
Failure/Error: Helper.run!(cmd)
#<Dalmatian::Helper (class)> received :run! with unexpected arguments
expected: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_example_var='bar' TF_VAR_environment='production' TF_VAR_cluster_name='shared-cluster-production' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='existing-shared-cluster-production' TF_VAR_dalmatian_role='dalmatian-read' terraform plan")
got: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='new-dedicated-cluster' TF_VAR_dalmatian_role='dalmatian-read' TF_VAR_environment='production' TF_VAR_aurora='{identifier =\"testaurora\",in_use_by =[\"test-service\"],clusters_in_use ={production =[\"test\"],staging =[\"test\"]},minimum_size ={production =2,staging =1},maximum_size ={production =2,staging =1},engine =\"aurora-postgresql\",engine_version =\"11.9\",db_name =\"testapp\",port =5432,force_ssl =true,maintenance_window =\"mon:19:00-mon:19:30\",backup_window =\"09:00-10:00\",backup_retention_period =31,parameter_store_path_db_url_name =\"DATABASE_URL\",sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],check_sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],sync_sql_backup_to_azure =false,replication_bucket_destination_arn =\"arn:aws:s3:::your-destination-bucket-name\",replication_kms_key_id =\"your-destination-kms-key-id\"}' terraform validate")
Please stub a default value first if message might be received with other args as well.
# ./lib/dalmatian/terraform.rb:17:in `validate'
# ./lib/dalmatian/testable.rb:25:in `terraform_validate'
# ./lib/dalmatian/testable.rb:9:in `call'
# ./lib/dalmatian/cluster.rb:358:in `test_aurora'
# ./lib/dalmatian/cluster.rb:273:in `deploy_aurora'
# ./lib/dalmatian/cluster.rb:75:in `block (2 levels) in deploy'
# ./lib/dalmatian/cluster.rb:73:in `each'
# ./lib/dalmatian/cluster.rb:73:in `block in deploy'
# ./lib/dalmatian/cluster.rb:59:in `each'
# ./lib/dalmatian/cluster.rb:59:in `deploy'
# ./lib/dalmatian/infrastructure.rb:24:in `block in deploy'
# ./lib/dalmatian/infrastructure.rb:22:in `each'
# ./lib/dalmatian/infrastructure.rb:22:in `deploy'
# ./lib/dalmatian/infrastructure.rb:18:in `test'
# ./spec/integration/tests_local_configuration_spec.rb:3397:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
30) tests local configuration use of "terraform plan" passes the cluster 4 config to "terraform plan"
Failure/Error: Helper.run!(cmd)
#<Dalmatian::Helper (class)> received :run! with unexpected arguments
expected: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_example_var='bar' TF_VAR_environment='production' TF_VAR_cluster_name='shared-cluster-production' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='existing-shared-cluster-production' TF_VAR_dalmatian_role='dalmatian-read' terraform plan")
got: ("TF_VAR_region='eu-west-2' TF_VAR_cidr='10.0.0.0/16' TF_VAR_root_domain_zone='dalmatian.dxw.net' TF_VAR_internal_domain_zone='dalmatian.internal' TF_VAR_ecs_private_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.128.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.129.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.130.0/24\"}]' TF_VAR_extra_public_subnets='[{availability_zone =\"eu-west-2a\",cidr =\"10.0.0.0/24\"},{availability_zone =\"eu-west-2b\",cidr =\"10.0.1.0/24\"},{availability_zone =\"eu-west-2c\",cidr =\"10.0.2.0/24\"}]' TF_VAR_instances_key_name='dalmatian-ecs-instances' TF_VAR_instance_type='t2.medium' TF_VAR_min_servers='2' TF_VAR_max_servers='4' TF_VAR_max_instance_lifetime='86400' TF_VAR_associate_public_ip_address='0' TF_VAR_docker_storage_size='40' TF_VAR_dockerhub_email='' TF_VAR_dockerhub_token='' TF_VAR_enable_efs='false' TF_VAR_encrypt_efs='true' TF_VAR_efs_dirs='[]' TF_VAR_monitoring_docs_path='https://github.com/dxw/dalmatian/docs/monitoring-alarms/' TF_VAR_account_id='123456789012' TF_VAR_infrastructure_name='new-dedicated-cluster' TF_VAR_dalmatian_role='dalmatian-read' TF_VAR_environment='production' TF_VAR_aurora='{identifier =\"testaurora\",in_use_by =[\"test-service\"],clusters_in_use ={production =[\"test\"],staging =[\"test\"]},minimum_size ={production =2,staging =1},maximum_size ={production =2,staging =1},engine =\"aurora-postgresql\",engine_version =\"11.9\",db_name =\"testapp\",port =5432,force_ssl =true,maintenance_window =\"mon:19:00-mon:19:30\",backup_window =\"09:00-10:00\",backup_retention_period =31,parameter_store_path_db_url_name =\"DATABASE_URL\",sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],check_sql_backup_scheduled_task_environment_variables =[{name =\"foo\",value =\"bar\"}],sync_sql_backup_to_azure =false,replication_bucket_destination_arn =\"arn:aws:s3:::your-destination-bucket-name\",replication_kms_key_id =\"your-destination-kms-key-id\"}' terraform validate")
Please stub a default value first if message might be received with other args as well.
# ./lib/dalmatian/terraform.rb:17:in `validate'
# ./lib/dalmatian/testable.rb:25:in `terraform_validate'
# ./lib/dalmatian/testable.rb:9:in `call'
# ./lib/dalmatian/cluster.rb:358:in `test_aurora'
# ./lib/dalmatian/cluster.rb:273:in `deploy_aurora'
# ./lib/dalmatian/cluster.rb:75:in `block (2 levels) in deploy'
# ./lib/dalmatian/cluster.rb:73:in `each'
# ./lib/dalmatian/cluster.rb:73:in `block in deploy'
# ./lib/dalmatian/cluster.rb:59:in `each'
# ./lib/dalmatian/cluster.rb:59:in `deploy'
# ./lib/dalmatian/infrastructure.rb:24:in `block in deploy'
# ./lib/dalmatian/infrastructure.rb:22:in `each'
# ./lib/dalmatian/infrastructure.rb:22:in `deploy'
# ./lib/dalmatian/infrastructure.rb:18:in `test'
# ./spec/integration/tests_local_configuration_spec.rb:3397:in `block (2 levels) in <module:Dalmatian>'
# ./spec/support/spec_helper.rb:24:in `block (3 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:24:in `block in modify'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `synchronize'
# /Users/bob/.bundles/ruby/2.7.0/gems/climate_control-1.2.0/lib/climate_control.rb:15:in `modify'
# ./spec/support/spec_helper.rb:20:in `block (2 levels) in <top (required)>'
# /Users/bob/.bundles/ruby/2.7.0/gems/webmock-3.19.1/lib/webmock/rspec.rb:39:in `block (2 levels) in <top (required)>'
Finished in 2.39 seconds (files took 0.80303 seconds to load)
514 examples, 30 failures
Failed examples:
rspec ./spec/integration/deploys_local_configuration_spec.rb:1650 # tests local configuration use of "terraform apply" passes the hosted zone config to "terraform apply"
rspec ./spec/integration/deploys_local_configuration_spec.rb:1654 # tests local configuration use of "terraform apply" passes the s3 config to "terraform apply"
rspec ./spec/integration/deploys_local_configuration_spec.rb:1658 # tests local configuration use of "terraform apply" passes the vpn customer gateway config to "terraform apply"
rspec ./spec/integration/deploys_local_configuration_spec.rb:1662 # tests local configuration use of "terraform apply" passes the base config to "terraform apply"
rspec ./spec/integration/deploys_local_configuration_spec.rb:1667 # tests local configuration use of "terraform apply" passes the waf config to "terraform apply"
rspec ./spec/integration/deploys_local_configuration_spec.rb:1674 # tests local configuration use of "terraform apply" passes the rds config to "terraform apply"
rspec ./spec/integration/deploys_local_configuration_spec.rb:1681 # tests local configuration use of "terraform apply" passes the aurora config to "terraform apply"
rspec ./spec/integration/deploys_local_configuration_spec.rb:1688 # tests local configuration use of "terraform apply" passes the elasticache config to "terraform apply"
rspec ./spec/integration/deploys_local_configuration_spec.rb:1697 # tests local configuration use of "terraform apply" passes the opensearch config to "terraform apply"
rspec ./spec/integration/deploys_local_configuration_spec.rb:1706 # tests local configuration use of "terraform apply" passes the service config to "terraform apply"
rspec ./spec/integration/deploys_local_configuration_spec.rb:1713 # tests local configuration use of "terraform apply" passes the loadbalancer config to "terraform apply"
rspec ./spec/integration/deploys_local_configuration_spec.rb:1722 # tests local configuration use of "terraform apply" passes the cluster 2 config to "terraform apply"
rspec ./spec/integration/deploys_local_configuration_spec.rb:1729 # tests local configuration use of "terraform apply" passes the cluster 3 config to "terraform apply"
rspec ./spec/integration/deploys_local_configuration_spec.rb:1733 # tests local configuration use of "terraform apply" passes the cluster 4 config to "terraform apply"
rspec ./spec/integration/tests_local_configuration_spec.rb:3400 # tests local configuration invokes "terraform validate" with the expected cluster options
rspec ./spec/integration/tests_local_configuration_spec.rb:3439 # tests local configuration invokes "terraform validate" with the expected source options
rspec ./spec/integration/tests_local_configuration_spec.rb:3445 # tests local configuration use of "terraform plan" passes the hosted zone config to "terraform plan"
rspec ./spec/integration/tests_local_configuration_spec.rb:3451 # tests local configuration use of "terraform plan" passes the s3 config to "terraform plan"
rspec ./spec/integration/tests_local_configuration_spec.rb:3457 # tests local configuration use of "terraform plan" passes the vpn customer gateway config to "terraform plan"
rspec ./spec/integration/tests_local_configuration_spec.rb:3463 # tests local configuration use of "terraform plan" passes the base config to "terraform plan"
rspec ./spec/integration/tests_local_configuration_spec.rb:3470 # tests local configuration use of "terraform plan" passes the waf config to "terraform plan"
rspec ./spec/integration/tests_local_configuration_spec.rb:3477 # tests local configuration use of "terraform plan" passes the rds config to "terraform plan"
rspec ./spec/integration/tests_local_configuration_spec.rb:3484 # tests local configuration use of "terraform plan" passes the aurora config to "terraform plan"
rspec ./spec/integration/tests_local_configuration_spec.rb:3491 # tests local configuration use of "terraform plan" passes the elasticache config to "terraform plan"
rspec ./spec/integration/tests_local_configuration_spec.rb:3500 # tests local configuration use of "terraform plan" passes the opensearch config to "terraform plan"
rspec ./spec/integration/tests_local_configuration_spec.rb:3509 # tests local configuration use of "terraform plan" passes the services config to "terraform plan"
rspec ./spec/integration/tests_local_configuration_spec.rb:3516 # tests local configuration use of "terraform plan" passes the loadbalancer config to "terraform plan"
rspec ./spec/integration/tests_local_configuration_spec.rb:3525 # tests local configuration use of "terraform plan" passes the cluster 2 config to "terraform plan"
rspec ./spec/integration/tests_local_configuration_spec.rb:3532 # tests local configuration use of "terraform plan" passes the cluster 3 config to "terraform plan"
rspec ./spec/integration/tests_local_configuration_spec.rb:3536 # tests local configuration use of "terraform plan" passes the cluster 4 config to "terraform plan"
Coverage report generated for RSpec to /Users/bob/git/dxw/dalmatian/coverage. 4487 / 4556 LOC (98.49%) covered.
Stopped processing SimpleCov as a previous error not related to SimpleCov has been detected
/Users/bob/.rbenv/versions/2.7.1/bin/ruby -I/Users/bob/.bundles/ruby/2.7.0/gems/rspec-core-3.12.2/lib:/Users/bob/.bundles/ruby/2.7.0/gems/rspec-support-3.12.1/lib /Users/bob/.bundles/ruby/2.7.0/gems/rspec-core-3.12.2/exe/rspec --pattern spec/\*\*\{,/\*/\*\*\}/\*_spec.rb failed
Exit Code: 1
Process Group PGID: 84298