Module: Zonesync
- Defined in:
- lib/zonesync.rb,
lib/zonesync/cli.rb,
lib/zonesync/diff.rb,
lib/zonesync/http.rb,
lib/zonesync/sync.rb,
lib/zonesync/errors.rb,
lib/zonesync/logger.rb,
lib/zonesync/parser.rb,
lib/zonesync/record.rb,
lib/zonesync/repair.rb,
lib/zonesync/route53.rb,
lib/zonesync/version.rb,
lib/zonesync/generate.rb,
lib/zonesync/manifest.rb,
lib/zonesync/provider.rb,
lib/zonesync/zonefile.rb,
lib/zonesync/validator.rb,
lib/zonesync/cloudflare.rb,
lib/zonesync/record_hash.rb,
lib/zonesync/cloudflare/proxied_support.rb
Defined Under Namespace
Modules: RecordHash
Classes: CLI, ChecksumMismatchError, Cloudflare, ConflictError, Diff, DuplicateRecordError, Filesystem, Generate, HTTP, Logger, Manifest, Memory, MissingManifestError, Parser, Provider, Record, Repair, Route53, Sync, ValidationError, Validator, Zonefile
Constant Summary
collapse
- VERSION =
"0.14.3"
- DIFFABLE_RECORD_TYPES =
%w[A AAAA CNAME MX TXT SPF NAPTR PTR].sort.freeze
Class Method Summary
collapse
Class Method Details
.call(source: "Zonefile", destination: "zonesync", dry_run: false, force: false) ⇒ Object
19
20
21
22
23
24
|
# File 'lib/zonesync.rb', line 19
def self.call(source: "Zonefile", destination: "zonesync", dry_run: false, force: false)
Sync.new(
Provider.from({ provider: "Filesystem", path: source }),
Provider.from(credentials(destination.to_sym)),
).call(dry_run: dry_run, force: force)
end
|
.credentials(key) ⇒ Object
40
41
42
43
44
45
46
47
|
# File 'lib/zonesync.rb', line 40
def self.credentials(key)
ActiveSupport::EncryptedConfiguration.new(
config_path: "config/credentials.yml.enc",
key_path: "config/master.key",
env_key: "RAILS_MASTER_KEY",
raise_if_missing_key: true,
).config[key]
end
|
.generate(source: "zonesync", destination: "Zonefile") ⇒ Object
26
27
28
29
30
31
|
# File 'lib/zonesync.rb', line 26
def self.generate(source: "zonesync", destination: "Zonefile")
Generate.new(
Provider.from(credentials(source.to_sym)),
Provider.from({ provider: "Filesystem", path: destination }),
).call
end
|
.repair(source: "Zonefile", destination: "zonesync") ⇒ Object
33
34
35
36
37
38
|
# File 'lib/zonesync.rb', line 33
def self.repair(source: "Zonefile", destination: "zonesync")
Repair.new(
Provider.from({ provider: "Filesystem", path: source }),
Provider.from(credentials(destination.to_sym)),
).call
end
|