Name: chef-google-dns
Owner: Google Cloud Platform
Description: null
Created: 2017-06-22 19:49:26.0
Updated: 2018-05-10 22:04:20.0
Pushed: 2018-05-01 19:07:55.0
Homepage: null
Size: 64
Language: Ruby
GitHub Committers
User | Most Recent Commit | # Commits |
---|
Other Committers
User | Most Recent Commit | # Commits |
---|
This cookbook provides the built-in types and services for Chef to manage Google Cloud DNS resources, as native Chef types.
This cookbook was tested on the following operating systems:
h_credential 'mycred' do
tion :serviceaccount
th ENV['CRED_PATH'] # e.g. '/path/to/my_account.json'
opes [
'https://www.googleapis.com/auth/ndev.clouddns.readwrite'
_managed_zone 'testzone-3-com' do
tion :create
s_name 'test.somewild-example.com.'
scription 'Test Example Zone'
edential 'mycred'
oject 'google.com:graphite-playground'
_resource_record_set 'www.testzone-4.com.' do
tion :create
naged_zone 'testzone-3-com'
pe 'A'
l 600
rget [
'10.1.2.3',
'40.5.6.7',
'80.9.10.11'
oject 'google.com:graphite-playground'
edential 'mycred'
All Google Cloud Platform cookbooks use an unified authentication mechanism,
provided by the google-gauth
cookbook. Don't worry, it is automatically
installed when you install this module.
h_credential 'mycred' do
tion :serviceaccount
th ENV['CRED_PATH'] # e.g. '/path/to/my_account.json'
opes [
'https://www.googleapis.com/auth/ndev.clouddns.readwrite'
For complete details of the authentication cookbook, visit the google-gauth cookbook documentation.
gdns_managed_zone
-
A zone is a subtree of the DNS namespace under one administrative
responsibility. A ManagedZone is a resource that represents a DNS zone
hosted by the Cloud DNS service.gdns_project
-
A project resource. The project is a top level container for resources
including Cloud DNS ManagedZones.gdns_resource_record_set
-
A single DNS record that exists on a domain name (i.e. in a managed
zone).
This record defines the information about the domain and where the
domain / subdomains direct to.
The record will include the domain/subdomain name, a type (i.e. A, AAA,
CAA, MX, CNAME, NS, etc)A zone is a subtree of the DNS namespace under one administrative responsibility. A ManagedZone is a resource that represents a DNS zone hosted by the Cloud DNS service.
_managed_zone 'testzone-3-com' do
tion :create
s_name 'test.somewild-example.com.'
scription 'Test Example Zone'
You can also set output-only values as well. Chef will ignore the values
when creating the resource, but will assert that its value matches what you
specified.
This important to ensure that, for example, the top-level registrar is using
the correct DNS server names. Although this can cause failures in a run from
a clean project, it is useful to ensure that there are no mismatches in the
different services.
id 579_667_184_320_567_887
name_servers [
'ns-cloud-b1.googledomains.com.',
'ns-cloud-b2.googledomains.com.',
'ns-cloud-b3.googledomains.com.',
'ns-cloud-b4.googledomains.com.'
]
creation_time '2016-12-02T04:59:24.333Z'
oject 'google.com:graphite-playground'
edential 'mycred'
_managed_zone 'id-for-resource' do
eation_time time
scription string
s_name string
integer
me string
me_server_set [
string,
...
me_servers [
string,
...
oject string
edential reference to gauth_credential
create
-
Converges the gdns_managed_zone
resource into the final
state described within the block. If the resource does not exist, Chef will
attempt to create it.delete
-
Ensures the gdns_managed_zone
resource is not present.
If the resource already exists Chef will attempt to delete it.description
-
A mutable string of at most 1024 characters associated with this
resource for the user's convenience. Has no effect on the managed
zone's function.
dns_name
-
The DNS name of this managed zone, for instance “example.com.“.
id
-
Output only. Unique identifier for the resource; defined by the server.
name
-
Required. User assigned name for this resource.
Must be unique within the project.
name_servers
-
Output only. Delegate your managed_zone to these virtual name servers;
defined by the server
name_server_set
-
Optionally specifies the NameServerSet for this ManagedZone. A
NameServerSet is a set of DNS name servers that all host the same
ManagedZones. Most users will leave this field unset.
creation_time
-
Output only. The time that this resource was created on the server.
This is in RFC3339 text format.
Set the mz_label
property when attempting to set primary key
of this object. The primary key will always be referred to by the initials of
the resource followed by “_label”
A project resource. The project is a top level container for resources including Cloud DNS ManagedZones.
sures a project exists and has the correct values.
l project settings are read-only, yet we are setting them anyway. Chef will
e these values to check if they match, and fail the run otherwise.
is important to ensure that your project quotas are set properly and avoid
screpancies from it to fail in production.
_project 'google.com:graphite-playground' do
ota_managed_zones 10_000
ota_total_rrdata_size_per_change 100_000
oject 'google.com:graphite-playground'
edential 'mycred'
_project 'id-for-resource' do
mber integer
ota_managed_zones integer
ota_resource_records_per_rrset integer
ota_rrset_additions_per_change integer
ota_rrset_deletions_per_change integer
ota_rrsets_per_managed_zone integer
ota_total_rrdata_size_per_change integer
oject string
edential reference to gauth_credential
create
-
Converges the gdns_project
resource into the final
state described within the block. If the resource does not exist, Chef will
attempt to create it.delete
-
Ensures the gdns_project
resource is not present.
If the resource already exists Chef will attempt to delete it.number
-
Output only. Unique numeric identifier for the resource; defined by the
server.
quota_managed_zones
-
Output only. Maximum allowed number of managed zones in the project.
quota_resource_records_per_rrset
-
Output only. Maximum allowed number of ResourceRecords per
ResourceRecordSet.
quota_rrset_additions_per_change
-
Output only. Maximum allowed number of ResourceRecordSets to add per
ChangesCreateRequest.
quota_rrset_deletions_per_change
-
Output only. Maximum allowed number of ResourceRecordSets to delete per
ChangesCreateRequest.
quota_rrsets_per_managed_zone
-
Output only. Maximum allowed number of ResourceRecordSets per zone in the
project.
quota_total_rrdata_size_per_change
-
Output only. Maximum allowed size for total rrdata in one
ChangesCreateRequest
in bytes.
Set the p_label
property when attempting to set primary key
of this object. The primary key will always be referred to by the initials of
the resource followed by “_label”
A single DNS record that exists on a domain name (i.e. in a managed zone). This record defines the information about the domain and where the domain / subdomains direct to.
The record will include the domain/subdomain name, a type (i.e. A, AAA, CAA, MX, CNAME, NS, etc)
e property managed_zone below needs to match a gdns_managed_zone recipe
ock executed before it
_resource_record_set 'www.testzone-4.com.' do
tion :create
naged_zone 'testzone-4-com'
pe 'A'
l 600
rget [
'10.1.2.3',
'40.5.6.7',
'80.9.10.11'
oject 'google.com:graphite-playground'
edential 'mycred'
_resource_record_set 'sites.testzone-4.com.' do
tion :create
naged_zone 'testzone-4-com'
pe 'CNAME'
rget ['www.testzone-4.com.']
oject 'google.com:graphite-playground'
edential 'mycred'
_resource_record_set 'id-for-resource' do
naged_zone reference to gdns_managed_zone
me string
rget [
string,
...
l integer
pe 'A', 'AAAA', 'CAA', 'CNAME', 'MX', 'NAPTR', 'NS', 'PTR', 'SOA', 'SPF', 'SRV' or 'TXT'
oject string
edential reference to gauth_credential
create
-
Converges the gdns_resource_record_set
resource into the final
state described within the block. If the resource does not exist, Chef will
attempt to create it.delete
-
Ensures the gdns_resource_record_set
resource is not present.
If the resource already exists Chef will attempt to delete it.name
-
Required. For example, www.example.com.
type
-
Required. One of valid DNS resource types.
ttl
-
Number of seconds that this ResourceRecordSet can be cached by
resolvers.
target
-
As defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1)
managed_zone
-
Required. A reference to ManagedZone resource
Set the rrs_label
property when attempting to set primary key
of this object. The primary key will always be referred to by the initials of
the resource followed by “_label”