*) Add osprofiler wsgi middleware
This middleware is used for 2 things:
1) It checks that person who want to trace is trusted and knows
secret HMAC key.
2) It start tracing in case of proper trace headers and add
first wsgi trace point, with info about HTTP request
*) Add initialization of osprofiler at start of serivce.
You should use python-designateclient with this patch:
https://review.opendev.org/#/c/773575
Run any command with --os-profile SECRET_KEY
$ openstack zone create --email <email_id> <zone_name> \
--os-profile SECRET_KEY
# it will print <Trace ID>
Get pretty HTML with traces:
$ osprofiler trace show --html <Trace ID> --connection-string \
<connection_string> --out <output.html>
e.g. --connection-string can be redis://localhost:6379
Note that osprofiler should be run from admin user name & tenant.
Implements: blueprint designate-os-profiler
Change-Id: I2a3787b6428d679555a9add3a57ffe8c2112b6d3
Since 3.7.0, oslo policy started the DeprecationWarning[1] if
deprecated_reason and deprecated_since param are not passed
in DeprecatedRule or they are passed in RuleDefault object.
These warnings are logged for every test which increase the
log size and sometime can full the log buffer and fail the
job.
[1] https://github.com/openstack/oslo.policy/blob/3.7.0/oslo_policy/policy.py#L1538
Change-Id: I7034a70950b787f1cdbc510e88ab777957339ba7
md5 is not an approved algorithm in FIPS mode, and trying to
instantiate a hashlib.md5() will fail when the system is running in
FIPS mode.
md5 is allowed when in a non-security context. There is a plan to
add a keyword parameter (usedforsecurity) to hashlib.md5() to annotate
whether or not the instance is being used in a security context.
In the case where it is not, the instantiation of md5 will be allowed.
See https://bugs.python.org/issue9216 for more details.
Some downstream python versions already support this parameter. To
support these versions, a new encapsulation of md5() has been added to
oslo_utils. See https://review.opendev.org/#/c/750031/
In this case, md5 is used to calculate the hash of a database record
to ensure record uniqueness.
Change-Id: Ic2571caa71dc99c417ea0933d5d4947287cbe312
As per the community goal of migrating the policy file
the format from JSON to YAML[1], we need to do two things:
1. Change the default value of '[oslo_policy] policy_file''
config option from 'policy.json' to 'policy.yaml' with
upgrade checks.
2. Deprecate the JSON formatted policy file on the project side
via warning in doc and releasenotes.
Also replace policy.json to policy.yaml ref from doc.
[1]https://governance.openstack.org/tc/goals/selected/wallaby/migrate-policy-format-from-json-to-yaml.html
Change-Id: I81e7ee3243af11ebb3589f530533731b87178a96
An updated pip version has shown multiple inconsistencies within
our lower constraints, so bump the affected versions.
Change-Id: I558e77dbba6abf64e6857d7f880104f0237dca1b
The changes following this one require `scope_types` which was added
in oslo.policy-1.32.0. Since version oslo.policy-1.30.0 was released
in late 2017 we should bump to at least oslo.policy-2.1.0 which was
released in late January 2019 bringing us a little closer to the
present time.
Change-Id: I02a2c42c0e1fceebbe6c81f8d674f62f90ee1670
Signed-off-by: Nicolas Bock <nicolas.bock@canonical.com>
In the event of a backend BIND server being unreachable for any reason,
rndc commands will persist for a very long time and can consume
significant resources. This can be seen when running devstack with
a pool configured to point at a bind server that doesn't exist - the
rndc process count can climb into the thousands.
An optional timeout has been added to rndc to alleviate this.
Change-Id: Idd61e79715b21fdd3249136cf68a7b9d3069c3f9
Related-Bug: 1896783
Python modules related to coding style checks (listed in blacklist.txt
in openstack/requirements repo) are dropped from lower-constraints.txt
as they are not actually used in tests (other than pep8).
more info: https://github.com/openstack/requirements/blob/master/blacklist.txt
Change-Id: I9e9badabd588b94055eccb8298d685b2ccf60095
See Id54c22f820b1aa6315d721e354ce150c657bd4fd
Change-Id: I37eed6862a39c5821ac9d89b867822a110426056
Signed-off-by: Nicolas Bock <nicolas.bock@canonical.com>
Now that we no longer support py27, we can use the standard library
unittest.mock module instead of the third party mock lib.
Change-Id: I4bd0de2f553c43a805670a424c44455d691891ac
Switch to openstackdocstheme 2.2.0 and reno 3.1.0 versions. Using
these versions will allow especially:
* Linking from HTML to PDF document
* Allow parallel building of documents
* Fix some rendering problems
Update Sphinx version as well.
Set openstackdocs_pdf_link to link to PDF file. Note that
the link to the published document only works on docs.openstack.org
where the PDF file is placed in the top-level html directory. The
site-preview places the PDF in a pdf directory.
Set openstackdocs_auto_name to use 'project' as name.
Change pygments_style to 'native' since old theme version always used
'native' and the theme now respects the setting and using 'sphinx' can
lead to some strange rendering.
Remove docs requirements from lower-constraints, they are not needed
during install or test but only for docs building.
openstackdocstheme renames some variables, so follow the renames
before the next release removes them. A couple of variables are also
not needed anymore, remove them.
Add openstackdocstheme options to api-ref.
Change-Id: I0cf71327ca5d9da1d88a826225374c8801849c36
The dnspython3 package is no longer needed as py3 support has been added
to dnspython, and dnspython3 just installs dnspython now as a
dependency.
Depends-on: https://review.opendev.org/#/c/726353/
Change-Id: Ic488ccebee6d3206d6b38eededbb27fcb46694a4
Signed-off-by: Sean McGinnis <sean.mcginnis@gmail.com>
Tox should be smart enough to figure out the correct python version on
its own, avoid having to follow-up for every new python release.
Change-Id: If515467fd4c9e678d54d4e8551b52611fec786ff
- Ignore duplicate Zone error
- Handle error when contractId or gid is missed
- Ignore port for masters servers, because Akamai uses only 53 port and
does not allow to specify any port in list of masters servers.
- Added timeout and retries for soft Zone Delete
- Added handling errors on the delete zone action
- Added Log info message with RequestId on soft zone delete
- Added processing for TsigKey during creation zone
- Added devsatck_plugin for akamai_v2 backend
Depends-On: https://review.opendev.org/#/c/692819/4
Change-Id: Ib221f4cf0371e70fc6900582d826ffc1bdfc12b9
This patch switches to Apache and mod_wsgi by default
for devstack.
Also, use memcached as the coordinatior for single node deployments.
Change-Id: I8798c04f2bc386aca32bda8961efd29298899890
This checks for duplicate entries in the service_statuses table
which will be an error after change
I307a8f7dd8b8a83effa447a846db3288efa32dba.
Related-Bug: 1768824
Story: 2003657
Task: 26127
Change-Id: Ie0350b034f0eb03749138aadd0951d30073214c0
Co-authored-by: Doug Hellmann <doug@doughellmann.com>
python3.7 and eventlet cause the `future.ThreadPoolExecutor` to hang
indefinitely. Moving to `futurist.GreenThreadPoolExecutor` allows the
`designate-worker` process to use native eventlet greenthreads, which bypasses
the hanging issue.
Closes-Bug: #1782647
Related-Bug: https://bugs.python.org/issue34173
Related-Bug: eventlet/eventlet#508
Change-Id: I36c79ca72635d81cfcc8d3cc87b1bc5e0657d9e8
Signed-off-by: Graham Hayes <gr@ham.ie>
This commit is a follow-up of "switch to using stestr"
which was merged already [1].
After switch to using stestr, testrepository is unnecessary
and should be removed.
[1] https://review.openstack.org/571948
Change-Id: I7b496624721173955315869b17d3f2050dc83d30
We will manage the eventlet version using constraints now. See the
thread starting at
http://lists.openstack.org/pipermail/openstack-dev/2018-April/129096.html
for more details.
Amend lower constraints according to tools/fix-lower-constraints.py and
remove setuptools from requirements.txt to fix requirements job.
Change-Id: I4f336ce65904b5fde9b088a2624fb9196623e295
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
Create a tox environment for running the unit tests against the lower
bounds of the dependencies.
Create a lower-constraints.txt to be used to enforce the lower bounds
in those tests.
Add openstack-tox-lower-constraints job to the zuul configuration.
See http://lists.openstack.org/pipermail/openstack-dev/2018-March/128352.html
for more details.
Change-Id: Id52de99217d1187e3a1a638c41aba18258b6c824
Depends-On: https://review.openstack.org/555034
Signed-off-by: Doug Hellmann <doug@doughellmann.com>