Some files in the repo has a DOS/Windows CRLF (\r\n) ending instead
of the Unix return. This patch set fixes the issue.
Change-Id: Ic6601f3ace9507f30c487f495198c2397b5bf805
The current repo has a number of python and conf files with executable flag
set (+x). This patch set removes that flag from the files.
Change-Id: I00a5f92afae22f14b046e32563cba731cdaa47b2
Signed-off-by: Tin Lam <tin@irrational.io>
This patch set enables PEP8 standard check for project Valet, and
corrects all outstanding PEP8 issues.
Story: #2001040
Task: #4602
Co-Authored-By: Omar Rivera <gomarivera@gmail.com>
Change-Id: I4b987ff28b02ea8a6da77fb0f29eda1515d212ac
This patch set fixes the requirements, and two workarounds in the
documentation due to the previously broken requirements.
Change-Id: I3e2e7ec5897270f266ba5ea84c9927f7623b4483
Enforced only admin can create plans in valet. If unauthorized,
appropriate error message will be displayed.
Change-Id: I8166f5675b247bc309db51b9b671a511e1d6abca
Added capability of reading and writing to
one of the other 2 valet Music databases
incase the local database is down. The
sequence of fallback is read from the valet
configuration file
Change-Id: I0de371996c63f3d1fb386e54cf4e239b464d870a
Engine was not passing the configured host/port combination
into the appropriate classes. This change corrects the problem.
Fix permissions issue with /var/log/valet dir
Set permissions so that valet-engine can create the engine.log file
Change-Id: Ib79c01faf9009031c87a6f59f1b8818afcfc824e
Fixed a bug in the compute_avail_resources() method
the new local variables static_ram_standby_ratio,
static_cpu_standby_ratio, and static_disk_standby_ratio
were being used before initialization.
Change-Id: Id03cd7a84992bcbf41cd779535226e354e9a6384
ConfigFileValueError: invalid literal for
int() with base 10: 'rabbit_port'. At the very beginning of Valet
deployment, /usr/etc/valet/valet.conf file is getting read instead
of /etc/valet/valet.conf. Here the value of port is expected to be
an int and not string. Changing the value to int.
Change-Id: I820c5f44a76d5a4a313d896b50242071b37eb6b2
When determining placements for a related set of resources
via OpenStack Heat, there's no a priori knowledge of specific
location candidates. Thus the /v1/plans API never accounted
for them. However, when it comes to ad hoc placement of a
single resource (e.g., via OpenStack Nova), such knowledge
*does* exist. This is one piece of a three-part change (same
issue tracking ID).
Change-Id: I327b87a1a1104019239547d03600cdd849ea6501
Fix tempest exclusivity test
default_ram_allocation_ratio to float
cpu&disk ratio to float
incorrect types for conf options
valet-engine does not restart after manual kill
Change-Id: I3eae2bb2144a5857dae17b99fb868b57116cef05
From the early days of Valet, there has been a known O(n)
inefficiency concerning Music query filtering. This is further
exacerbated by the instantiation of Music-backed ORM objects,
leading to a O(n*m) inefficiency.
This commit is a mitigation that greatly increases the likelihood
of O(1) filtering performance. valet-engine job status check
efficiency is also improved as a result.
This commit also fixes a condition where valet-api may create
multiple valet-engine placement requests for a stack id that
already has a request in process (e.g., if nova-scheduler calls
valet-api multiple times due to a retry by nova-controller).
IMPORTANT: When applying this commit, perform the following changes.
1: In valet.conf, ensure "tries" and "interval" are set to
100 and 0.1, respectively. (If they're commented out, change
the commented versions. There is no need to uncomment them.)
[music]
tries = 100
interval = 0.1
2: Manually create secondary keys in the valet-api cassandra tables.
For instance, given a keyspace of "valet_aic", execute these commands
in cqlsh on the cassandra server used by valet-api.
CREATE INDEX ON valet_aic.plans (stack_id);
CREATE INDEX ON valet_aic.placements (plan_id);
CREATE INDEX ON valet_aic.placements (orchestration_id);
CREATE INDEX ON valet_aic.placements (resource_id);
Until Music is updated to handle this automatically, these commands
must be executed every time the tables are dropped/re-added.
3: Determine the realistically expected number of simultaneous plan
requests for valet-api. Ensure the server running valet-api is sized
appropriately, set the httpd configuration's thread count to match
this number (perhaps a few extra), and restart the daemon.
For example, to specify 10 threads in Apache2 httpd, edit the
WSGIDaemonProcess directive for valet-api (this is one line):
WSGIDaemonProcess valet user=ubuntu group=ubuntu
threads=10 python-home=/opt/stack/heat.venv
4: To start with a clean slate, clear out any residual placement
requests and responses in the valet-engine cassandra tables.
For instance, given a keyspace of "valet_aic", execute these commands
in cqlsh on the cassandra server used by valet-engine.
TRUNCATE valet_aic.placement_requests;
TRUNCATE valet_aic.placement_results;
Change-Id: I76528c9b81dc451241ecc547cadc18cc4b1284df
Use oslo_log
getting music out of api
updating valet.conf
Health Check for hanged Engine
Wrong python-requests version
Change-Id: Ibb2649c81dad94e51b579c0a99cfaf37b626095c
Fix issues in py files in the directories
valet/valet/api/common
valet/api
valet/cli
valet/engine/optimizer/
valet/tests/
valet/tests/tempest
valet_plugins
Py35 does allow for the loading of modules in the same folder without
specifying the patch. Updated import to use absolute pathing.
This patch set also remove `# noqa` in EOF import statements. Those
should be addressed in future patch set that do PEP8 clean up.