
On the old bridge node we had some unmanaged venv's with a very old, now unmaintained RAX DNS API interaction tool. Adding the RDNS entries is fairly straight forward, and this small tool is mostly a copy of some of the bits for our dns api backup tool. It really just comes down to getting a token and making a post request with the name/ip addresses. When the cloud the node is launched as is identified as RAX, this will automatically add the PTR records for the ip4 & 6 addresses. It also has an entrypoint to be called manually. This is added and hacked in, along with a config file for the appropriate account (I have added these details on bridge). I've left the update of openstack.org DNS entries as a manual procedure. Although they could be set automatically with small updates to the tool (just a different POST) -- details like CNAMES, etc. and the relatively few servers we start in the RAX mangaed DNS domains means I think it's easier to just do manually via the web ui. The output comment is updated. Change-Id: I8a42afdd00be2595ca73819610757ce5d4435d0a
34 lines
817 B
TOML
34 lines
817 B
TOML
[build-system]
|
|
requires = ["setuptools>=61.0"]
|
|
build-backend = "setuptools.build_meta"
|
|
|
|
[project]
|
|
name = "opendev_launch"
|
|
version = "1.0.0"
|
|
description = "launch nodes"
|
|
requires-python = ">=3.6"
|
|
classifiers = [
|
|
"Programming Language :: Python :: 3",
|
|
"License :: OSI Approved :: Apache2 License",
|
|
"Operating System :: OS Independent",
|
|
]
|
|
dependencies = [
|
|
"paramiko>=2.9.1",
|
|
# This is a very specific list which is known to work
|
|
# with RAX storage...
|
|
"python-openstackclient==4.0.2",
|
|
"python-cinderclient==9.1.0",
|
|
"openstacksdk==0.102.0"
|
|
]
|
|
|
|
[project.urls]
|
|
"Homepage" = "https://opendev.org/"
|
|
|
|
[project.scripts]
|
|
launch-node = "opendev_launch:launch_node.main"
|
|
show-dns = "opendev_launch:dns.main"
|
|
rax-rdns = "opendev_launch:rax_rdns.main"
|
|
|
|
[tool.setuptools.package-data]
|
|
opendev_launch = ["*.sh"]
|