Commit Graph

38 Commits

Author SHA1 Message Date
Takashi Kajinami 8bd62fc862 Remove configuration of BIND 9 service
The feature was deprecated in 2024.1 release[1] and is ready for
removal.

Note that the configure_bind parameter is still kept, because
the parameter had to be set to disable the configuration. It may be
removed after 2025.1 release.

[1] 2896fe16c0

Change-Id: I3b84a382608bbf094cfc5b48bb0ced848e73b2f1
2024-05-02 23:31:25 +09:00
Takashi Kajinami 7e09ca63d7 Remove deprecated manage_pool parameters
The parameters were deprecated in the 2024.1 release[1] so are ready
for removal.

[1] e19976ade6

Change-Id: I4e62059dced674c9a2d3384db36b32d164341dd4
2024-05-02 23:25:46 +09:00
Takashi Kajinami beb10536cb Support customizing pool attributes
Change-Id: Ic3093b91eddeeadbf9fb751df905e259a6f5c6c5
2024-03-18 09:12:16 +09:00
Takashi Kajinami e3b74c6a36 bind9: Add support for clean_zonefile option
The option was added some cycles ago[1].

[1] 7618d073c9ee81cdf835f603e9030f6dd09b6d75

Change-Id: I94f74ca0e2d8d5bdad5787f4b2bcc29de26cadf1
2023-11-18 11:30:52 +00:00
Takashi Kajinami 2896fe16c0 Deprecate configuration support of BIND 9
Current implementation has a limited capability and is not suitable for
production use. This deprecates it to encourage people to use
puppet-dns (or any other different tools) to set up BIND 9 separately.

Change-Id: I2a53e927053abe13aa64de1b7f8207142e021d1a
2023-10-31 15:38:06 +09:00
Takashi Kajinami e19976ade6 Deprecate manage_pool parameters
The designate::backend::bind9 class and the designate::backend::pdns4
class configures (almost) nothing in case manage_pool parameter is
false, so these parameters are just redundant.

Change-Id: I82ec568c27b8fc5ee167b1451f159cfe7a915290
2023-10-31 15:36:55 +09:00
Takashi Kajinami bebaf38b55 Drop old workaround to update named data dir permission
The workaround is no longer needed since bind introduced a separate
directory for dynamic zones.

See https://bugzilla.redhat.com/show_bug.cgi?id=1315821 for details.

Change-Id: Ic4af1749f6e63a8d7702fd139d68502c50069947
2023-10-31 15:21:23 +09:00
Zuul 82e5f88ad1 Merge "Use native puppet-dns interface to inject additional options" 2023-10-30 19:39:55 +00:00
Zuul 76238eade8 Merge "Ensure non-empty host list in pools" 2023-10-30 17:23:48 +00:00
Takashi Kajinami 1cfb77cc2f Add support for also_notifies pool option
Change-Id: Ie5ffc921694d8ae083e79d3ee04852ff38b2d459
2023-10-28 14:31:42 +00:00
Takashi Kajinami 93fde35225 Ensure non-empty host list in pools
Some of the host options should not be empty. This enforces that using
parameter types.

Change-Id: Ibb5444462d0b30e8b99199196ec4c36d6f6545ba
2023-10-28 12:21:51 +09:00
Takashi Kajinami 64f5f18124 Use native puppet-dns interface to inject additional options
... instead of directly manipulating the file using concat::fragment.

Depends-on: https://review.opendev.org/899447
Change-Id: Id50e6df7df7af307ea6845d08b442adbb0e0cb3c
2023-10-27 12:42:35 +09:00
Takashi Kajinami 8ed0bcb867 replace validate_legacy with proper data types
the validate_legacy function is marked for deprecation in
v9.0.0 from puppetlabs-stdlib.

Note that this change looses validation about pool ids. Alternatively
we can define a new data type to keep the validation, but these defined
types for pool-manager were already deprecated and useless and will be
removed in a near future release so we avoid that redundant step.

Change-Id: I85d7058bf379c6aa0e787b2f806f14aebf0693d3
2023-06-19 17:27:32 +09:00
Takashi Kajinami 03748f741c Add strict validation about (more) boolean parameters
This ensures the parameters used by if-else logic accept only boolean
values because non-boolean can result in unexpected behavior.
The previous attempt did not cover a few parameters which are now
covered by this change.

Change-Id: Icf6d679545f987a1ed1eb5cda9999c879bde8fb3
2023-03-25 14:50:25 +09:00
Takashi Kajinami eda08560f2 bind9: Enforce proper parameter types
This makes sure the parameters which accept array or hash get a proper
type of value. Otherwise template rendering can fail or generate
an invalid content.

Change-Id: I5467d97030190a07e4f5ff088cc536302cbac0a4
2022-12-08 17:56:36 +09:00
Takashi Kajinami 09eaea3132 bind9 backend: Clean up deprecated rndc_host
... and the logics to remove old parameters.

Depends-on: https://review.opendev.org/846491
Change-Id: Ib67b44cb289e75bfed022cec350fd2cd4bb6374b
2022-06-19 13:38:48 +00:00
Takashi Kajinami 35d366034a bind9 backend: Manage pool by default
This enables pool management step by default when configuring bind9
backend.

Change-Id: I8479c3a681cb8ccd9862dbf1d3b6f2e4600a292a
2022-06-19 22:00:17 +09:00
Takashi Kajinami 9fbe67d524 bind9: Prepare to enable pool management by default
This change is follow-up of 22019e46e2
and prepares to enable setup of pool by default.

Change-Id: Ic457eaf01d613ad5850a2b4d020f7d82371b94fe
2022-03-09 17:16:03 +09:00
Takashi Kajinami 979dd5b2dc bind9: Fix the wrong default value of dns_port
This change fixes the wrong default value of dns_port. Because this
parameter was added during this cycle, we skip transition phase and
directly update the default value.

Depends-on: https://review.opendev.org/831953
Change-Id: I825e6693fffce3ce204eddd684bc0b22cc217135
2022-03-04 14:33:05 +00:00
Zuul be6fc61009 Merge "Avoid including the base designate class" 2022-03-03 12:04:15 +00:00
Takashi Kajinami 22019e46e2 Fix setup of bind9 backend
Designate no longer uses the parameters in the [backend:bind9] section,
since ppols.yaml was introduced. This change ensures the parameters in
this wrong section are purged.

Also, this change introduces support for setting up backend using
pools.yaml according to the current installation guide.

Closes-Bug: #1961516
Change-Id: I28a91ab99325970db1e96aa904f35e8f9a5e109c
2022-02-21 18:10:56 +09:00
Takashi Kajinami c90c53839f Avoid including the base designate class
... unless it is necessary, to avoid enforcing order.

Change-Id: If8014de4f5cfac77566ef81699a98760534fb4ec
2022-02-20 17:55:08 +09:00
Brent Eagles d68a16c853 Add bind9 backend parameter to allow bypassing bind configuration
Adds designate::backedn::bind9::configure_bind parameter to allow
bypassing the dns puppet module. This is necessary when bind is not
installed on same host as designate.

Change-Id: I3e94e3846fb97f0a0a5d25b2f5a1ef02e88a84b2
2021-02-25 11:06:35 -03:30
Tobias Urdin b7f73b35c5 Convert all class usage to relative names
Change-Id: Iae69aff79cc231336b14d65305fff9c64cbd27e0
2019-12-08 23:04:25 +01:00
Ben Nemec df4991fbe2 Add ability to configure rndc controls
TripleO can't do this through hieradata because this is a hash with
a dynamic value as a key.  This just exposes the parameter so it
can be set from a manifest.

Change-Id: Ib3d4f024e409e5d2aad9117b1418ccd0050b964d
2018-07-11 22:22:58 +00:00
Ben Nemec d7aa75209d Set minimal-responses in BIND backend configuration
This is recommended as a mitigation for a potential cache poisoning
attack when using BIND with Designate.

https://docs.openstack.org/designate/queens/admin/production-guidelines.html#bind9-mitigation

Change-Id: I89f5b4b24558a4d8b66b2a9082fec152694e6b6a
2018-06-28 16:32:40 +00:00
Ben Nemec 970212fc1c Allow necessary write permissions for BIND zone creation
By default on both Red Hat and Ubuntu BIND does not have the
necessary file permissions to create new zones.  Since we need to
be able to do that for Designate to function, we need to tweak the
permissions at deployment time.

Previously this was done in puppet-openstack-integration, but for
TripleO to deploy Designate we need it done in this module as
TripleO doesn't use p-o-i.

Change-Id: I09e8799f0b2a4113833983d67b3c4d40a0355933
bp designate-support
2018-01-09 23:25:29 +00:00
ZhongShengping 1e95f32a6f Add hooks for external install & svc management
This adds defined anchor points for external modules to hook into the
software install, config and service dependency chain.  This allows
external modules to manage software installation (virtualenv,
containers, etc) and service management (pacemaker) without needing rely
on resources that may change or be renamed.

Change-Id: If9fa188b7dca47e6724a737d66e34c0c85668c36
2016-12-01 08:44:02 +08:00
David Moreau-Simard 63cdcd713a Fix idempotency and re-enable idempotency check in beaker tests
- Change file_line resources to concat resources instead to
  concat a fragment within the puppet-dns concat templates
  resources.

This change depends on an upstream change to puppet-dns which
has not yet merged.
https://github.com/theforeman/puppet-dns/pull/64

Change-Id: I499f2c7bfe8330ddb3c3d91d5eadcdad9e64e614
Depends-On: I73145a8992292038ab22824d3a858dcc7193fd35
2016-07-06 12:21:30 -04:00
David Moreau-Simard 350b4938a3 Deprecate designate::dns, stop managing config files in lib
The designate::dns class was really just configuring things
according to a bind9 backend. As such, move it's resources to
the bind9 backend manifest and deprecate this class.

Additionnally, we stop managing configuration files resources
inside /var/lib/designate. According to upstream documentation
[1] and from discussing this with upstream developers, this is
not an intended way of configuring designate.
This also avoids having to manage permissions (and selinux)
between designate and bind.

[1]: http://docs.openstack.org/developer/designate/getting-started.html

Change-Id: Ia62a3d1a72622f3eb1ceeabaf4cef36090a7a8d3
2016-07-06 12:12:51 -04:00
David Moreau-Simard 50c12167f6 Remove POSIX users, groups and files managed by packaging
Both RDO and UCA provide packaging for designate and this packaging
takes care of creating the necessary user/group/directories.

Change-Id: Ic6af7dadb94a9ce22ad924184715b729b36ed16b
Related-Bug: #1458915
2016-07-05 21:30:21 -04:00
karimb 3595c4eff4 Set correct options path for bind9 agent
When using Red Hat systems and bind9 backend,
/etc/named/options.conf should be used so
this patch implements this change  to accomodate
the parameters used in the dns module.

Closes-Bug: #1534309
Change-Id: I546aceeb257954afe768bb1ee702a277ed0a2a5a
2016-02-24 11:05:52 +01:00
Clayton O'Neill 2dfe3c7fec Qualify designate Class requires
Change-Id: I2f07f24fff2b895077dc2200c675ed1546b5a8ba
2015-02-26 18:33:14 +00:00
Clayton O'Neill 52be2d3808 Move BIND backend deps into backend
This moves the BIND backend deps that were previously directly in
init.pp into the BIND9 backend.  This includes moving the configuration
for the /var/lib/designate state directory into the backend, since it
needs to be owned by the DNS group.

Change-Id: Ifc4b7d3240258331a6ad3ebc6b4064aa7d7eceed
2015-02-12 18:48:14 +00:00
Sebastien Badia 1ecba59a87 documentation: Update readme and puppetdoc documentation
Change-Id: I97ea6e3b4e7c4ac8b407dd3b6d39fd54ffae70fe
2015-01-12 11:07:01 +00:00
Sebastien Badia e0f6a66caa backend/bind9 Added allow-new-zones configuration option.
To ensure rndc addzone/delzone functionality, allow-new-zones
must be setup to true, as explain in upstream documentation.
https://designate.readthedocs.org/en/latest/backends/bind9.html#bind9-configuration

Change-Id: Ifc552a272e84ad83f1ec1dc279bc54c2b44e826a
2014-11-24 19:21:22 +01:00
Xingchao Yu 77f6823b31 Fix lint error and warnings
use rake lint fix existing errors and warnings
2013-10-18 16:18:57 +08:00
Xingchao Yu 6457c53691 Add designate::backend::bind9 2013-10-18 15:29:37 +08:00