1
0
mirror of https://github.com/github/octodns.git synced 2024-05-11 05:55:00 +00:00
Commit Graph

26 Commits

Author SHA1 Message Date
Jonathan Leroy
3acea0d89d Handle multiples sources on aliased zones 2020-10-31 01:09:37 +01:00
Jonathan Leroy
04a2d7a585 Merge branch 'master' into zones-aliases 2020-10-28 16:24:40 +01:00
Jonathan Leroy
de51e5f531 Add support for DNAME records 2020-10-26 22:18:35 +01:00
Jonathan Leroy
f2a6f870b4 Make each alias zone reference its target zone instead of listing all
aliases zones in the target zone configuration
2020-10-20 22:18:48 +02:00
Jonathan Leroy
7bf0b31367 Revert "Add support for zones aliases"
This reverts commit b926d78c5c.
2020-10-20 19:54:35 +02:00
Jonathan Leroy
b926d78c5c Add support for zones aliases
This commit adds support for zones aliases. This allows to define one or
multiple zone as aliases of an existing zone without using workarounds
like simlinks and miltiple "zones" entries in the configuration file.

An alias zone is share all of its content with it parent zone, only the
name of the zone is different.

```
zones:
  example.com.:
    aliases:
      - example.net.
      - example.org.
    sources:
      - in
    targets:
      - out
```

Known issues:
- No documentation,
- Only the `octodns-sync` and `octodns-validate` commands supports
aliases zones at this time,

I added a loop in the manager init function which convert all alias
zone to "real" ones during config validation, however I'm not sure
this is the right approach. Comments welcome.
2020-08-03 00:47:22 +02:00
Ross McFarland
f1cc392bc4 Include populate_should_replace in yaml example. 2020-01-09 07:41:30 -08:00
Ross McFarland
a078ec9d31 Move to populate_should_replace rather then OverridingYamlProvider 2020-01-06 14:16:47 -08:00
Ross McFarland
135f826b7e Add OverridingYamlProvider and tests 2019-04-27 15:08:09 -07:00
Christian Funkhouser
a65181b61d Document directory requirements more clearly.
Signed-off-by: Christian Funkhouser <cfunkhouser@heroku.com>
2019-04-08 17:22:26 -04:00
Christian Funkhouser
f239eb1aa8 Don't use classmethod for listing YAML files
Signed-off-by: Christian Funkhouser <cfunkhouser@heroku.com>
2019-04-08 17:13:28 -04:00
Christian Funkhouser
2021a2caea Construct YamlProvider logger more cleverly.
Signed-off-by: Christian Funkhouser <cfunkhouser@heroku.com>
2019-04-08 17:09:29 -04:00
Christian Funkhouser
689043cd3d Merge SplitYamlProvider and YamlProvider tests
Signed-off-by: Christian Funkhouser <cfunkhouser@heroku.com>
2019-04-08 17:07:45 -04:00
Christian Funkhouser
98dacd2dde Add proper tests for SplitYamlProvider
The SplitYamlProvider itself now requires a directory matching the
zone name under its directory to contain all YAML files. This doesn't
actually change the intended usage at all, just how the configuration
file is laid out.

Signed-off-by: Christian Funkhouser <cfunkhouser@heroku.com>
2019-04-08 13:59:45 -04:00
Christian Funkhouser
3bc0e0ad3e File load success is too verbose
Signed-off-by: Christian Funkhouser <cfunkhouser@heroku.com>
2019-04-08 13:59:44 -04:00
Christian Funkhouser
ffc4e2f957 Add SplitYamlProvider
SplitYamlProvider extends and behaves similarly to YamlProvider, but
organizes the zone in multiple files by record, insteat of in a
monolithic YAML file.

YamlProvider has been slightly modified to make its extension easier.

Signed-off-by: Christian Funkhouser <cfunkhouser@heroku.com>
2019-04-08 13:59:44 -04:00
Ross McFarland
303d0532c8 Implement SUPPORTS_DYNAMIC functionality, no providers 2018-12-03 14:40:43 -08:00
Matt
933a56d8f9 Add - (non-empty) Record._octodns dict to YAML file output. 2018-11-04 10:32:06 +11:00
Ross McFarland
cee7677ae4 Implement Zone.add_record lenient across our providers 2018-05-30 12:41:59 -07:00
Ross McFarland
4d180ed991 Implement populate exists for YamlProvider 2018-01-21 14:41:54 -08:00
Ross McFarland
454f7f8c8f Add formal CAA support to YamlProvider 2017-11-08 06:26:18 -08:00
Ross McFarland
a97818b6ec populating existing provider state is lenient
- adds lenient flag to Record.new, problems during validation are just
  warnings if it's true
- target populate calls during the plan phase pass lenient=True
- make all of the provider.populate call logging consistent including both
  target and lenient
- add source=self to Record.new in a few places that were missing it
2017-06-23 09:01:25 -07:00
Ross McFarland
852c101388 Switch to an explicit SUPPORTS setup 2017-06-21 17:08:16 -07:00
Ross McFarland
046cde43b2 Make sorting enforcement optional with YamlProvider 2017-06-19 22:44:34 -07:00
Ross McFarland
da4632fb7c docstrings for each provider showing config 2017-03-17 10:03:27 -07:00
Ross McFarland
7957a4c018 Initial import of OSS OctoDNS 2017-03-15 15:38:10 -07:00