A google_compute_url_map is used to test a Google UrlMap resource
This resource has beta fields available. To retrieve these fields, include beta: true in the constructor for the resource
describe google_compute_url_map(project: 'chef-gcp-inspec', name: 'inspec-gcp-url-map') do
it { should exist }
its('description') { should eq 'URL map description' }
its('default_service') { should match /\/inspec-gcp-backend-service$/ }
its('host_rules.count') { should eq 1 }
its('host_rules.first.hosts') { should include 'site.com' }
its('path_matchers.count') { should eq 1 }
its('path_matchers.first.default_service') { should match /\/inspec-gcp-backend-service$/ }
its('tests.count') { should eq 1 }
its('tests.first.host') { should eq 'test.com' }
its('tests.first.path') { should eq '/home' }
end
describe google_compute_url_map(project: 'chef-gcp-inspec', name: 'nonexistent') do
it { should_not exist }
end
Properties that can be accessed from the google_compute_url_map resource:
creation_timestampdefault_servicedescriptionidfingerprintheader_actionrequest_headers_to_addheader_name : The name of the header.
header_value : The value of the header to add.
replace : If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.
request_headers_to_removeresponse_headers_to_addheader_name : The name of the header.
header_value : The value of the header to add.
replace : If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.
response_headers_to_removehost_rulesdescriptionhostspath_matchername[a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.path_matchersdefault_servicedescriptionheader_actionrequest_headers_to_add : Headers to add to a matching request prior to forwarding the request to the backendService.
`header_name`
: The name of the header.
`header_value`
: The value of the header to add.
`replace`
: If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.
request_headers_to_remove : A list of header names for headers that need to be removed from the request prior to forwarding the request to the backendService.
response_headers_to_add : Headers to add the response prior to sending the response back to the client.
`header_name`
: The name of the header.
`header_value`
: The value of the header to add.
`replace`
: If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.
response_headers_to_remove : A list of header names for headers that need to be removed from the response prior to sending the response back to the client.
namedefault_url_redirecthost_redirect : The host that will be used in the redirect response instead of the one that was supplied in the request. The value must be between 1 and 255 characters.
https_redirect : If set to true, the URL scheme in the redirected request is set to https. If set to false, the URL scheme of the redirected request will remain the same as that of the request. This must only be set for UrlMaps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.
path_redirect : The path that will be used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters.
prefix_redirect : The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters.
redirect_response_code : The HTTP Status code to use for this RedirectAction. Supported values are:
Supported values are:
- MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301.
- FOUND, which corresponds to 302.
- SEE_OTHER which corresponds to 303.
- TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method will be retained.
- PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method will be retained.
strip_query : If set to true, any accompanying query portion of the original URL is removed prior to redirecting the request. If set to false, the query portion of the original URL is retained.
testsdescription : Description of this test case.
host : Host portion of the URL.
path : Path portion of the URL.
service : Expected BackendService resource the given URL should be mapped to.
default_url_redirecthost_redirecthttps_redirectpath_redirectprefix_redirectredirect_response_codeSupported values are:
strip_queryEnsure the Compute Engine API is enabled for the current project.
© Chef Software, Inc.
Licensed under the Creative Commons Attribution 3.0 Unported License.
The Chef™ Mark and Chef Logo are either registered trademarks/service marks or trademarks/servicemarks of Chef, in the United States and other countries and are used with Chef Inc's permission.
We are not affiliated with, endorsed or sponsored by Chef Inc.
https://docs.chef.io/inspec/resources/google_compute_url_map/