308 Commits

Author SHA1 Message Date
Monty Taylor
011cc58b5b Retire stackforge/rubick 2015-10-17 16:04:41 -04:00
Oleg Gelbukh
58a0832ac3 Remove Web UI components and their deps from tree
Web UI and dependencies added by it are beyond the updated scope
of Rubick project (see README file for updates of scope).
This change removes components of Web UI (front-end related code)
and components of API service (celery, flask etc).
Update README to reflect the current scope of Rubick project.

blueprint decouple-ui

Change-Id: I302626395c1a677871ac5154f2064bef400be3f1
2014-06-18 10:31:56 +00:00
Oleg Gelbukh
431d59e9a9 Add license headers to all source code files
This is a requirement of HACKING guide to have license headers
in all Python code files in the project.

Change-Id: I391d2a25dcbd366073393942b57ea808781bf56a
2014-06-17 11:08:23 +00:00
Jenkins
e359a54979 Merge "YAML formatted model description in docs" 2014-06-09 12:03:39 +00:00
Christian Berendt
d8e907957c Use except x as y instead of except x, y
According to https://docs.python.org/3/howto/pyporting.html the
syntax changed in Python 3.x. The new syntax is usable with
Python >= 2.6 and should be preferred to be compatible with Python3.

Change-Id: Icd4574c55c9460bd29a8adc84d527a4459eb3cf6
2014-05-30 00:18:17 +02:00
Oleg Gelbukh
3f07db5be4 YAML formatted model description in docs
Add YAML formatted description of current model structure to
documentation

Change-Id: I82d543974169231fb0b7f34993eb97954996789b
2014-05-26 14:20:35 +00:00
Peter Lomakin
1dc5e57597 Fixes for installation algorithm in the README.md
Change installation deployment sequence: move installing deps to first
step.
Fix typos in the readme and frontend's html.

Change-Id: Ic37f2aa9e5a291eaff127762d7095799bdad1ad4
Closes-Bug: #1259447
Closes-Bug: #1259451
2013-12-11 14:48:34 +04:00
Peter Lomakin
a9b8de3766 Update readme description
Add installation manual for CentOS and fix
steps for application deploying and running under Ubuntu.

Changed default port for webui from 8000 to 8008 to run it near other
web applications.

Removed old Procfile for production.

Change-Id: I1472bf2e726078b3d12a7b978cb10ebe8cb8cc09
Closes-Bug: #1256920
2013-12-02 17:46:13 +04:00
Maxim Kulkin
5d9a7d3b04 Better config schema collector
Current schema collector implementation has issues. When it extracts
option information from source files, it imports them into python
runtime. If imported module has third-party dependencies, they are
also imported thus making it a requirement to have third-party
libraries installed on the system where schema collection is
executed. Also, there are situations when option group guessing
is inaccurate.
New schema collector uses code analysis and rewriting techniques
to extract just enough code to collect configuration option data.
Then it evals it, causing configuration options to be added to
vanilla oslo.config subsystem. Then this information gets dumped.
Implementation uses various heuristics but is more accurate than
existing one. Was tested on 'nova' and 'cinder' projects.

Change-Id: I0bd2e93288478e7a3db273055597b7bedfbf0625
2013-11-21 18:00:27 +04:00
Maxim Kulkin
4bbe6ffb9d Discovery API improvements, PEP8 issues clean up
Previous discovery API didn't allowed agents to get dependent
resources synchronously, e.g. when discovering some service,
get service's configuration file via FileDiscovery agent and
have it cached so that subsequent discovery of that file would
not produce a new resource.
New API changes how discovery is done: agents now represent a
caching resource factories, so when you ask for particular
resource for the second time, it will return a cached instance.
Resources no more accumulated in the main loop but instead collected
from agents afterwards. This overcomes the fact that some agent
could produce multiple resources while current API allows only one
resource to be returned from agent's discover() method.

Extended file discovery methods: now you can use wildcards to collect
multiple files at once and use search paths (e.g. when you want to
search for config file in several directories and collect whichever
found first).

Cleaned up PEP8 issues regarding unused imports and 'import *'.

Added CLI options for discovery_test to output JSON and choose log
level.

IssueReporter subclasses now won't contain duplicate entries.

Change-Id: I7371ccce1e2f3c0a649fe9d6a41b146f04c0f4c1
2013-11-20 18:22:31 +04:00
Peter Lomakin
8ff62baf28 Add application support to run under python3.3
Fixed imports for urlparse and iostring libraries usage.

This commit doesn't address updating dependent libraries to python 3
supported versions

Moved to 'six' library for python3.3 support

Closes-Blueprint: python33-support
Change-Id: I624a5c3ef4d3e352574592e0248fe75201d7e780
2013-11-20 00:26:27 +04:00
Peter Lomakin
700ed6150c Bugfix for lost import in discovery.py
https://bugs.launchpad.net/rubick/+bug/1252661
Add lost dependency 'stat' in discovery.py
2013-11-19 13:24:18 +04:00
Peter Lomakin
e492c06315 Fix for py33 unittest running
Rework some imports to work with py27 and py33, also fix unittests
for config schemas and version checking. This commit is not garantee
that application will fully worked on python3.3
Task:
https://blueprints.launchpad.net/rubick/+spec/python33-support

Signed-off-by: Peter Lomakin <plomakin@mirantis.com>

Change-Id: Iffa564d52fd2bf83cebe9f31cca74e27c0b6baad
2013-11-18 18:02:41 +04:00
Maxim Kulkin
46c5ad5406 Implemented type args in config schema
Added 'enum' and 'regex' types
Update ConfigSchema to support iteration, len and getitem
Added ProcessResource to model
Implemented permission saving for FileResources
Added new base class for all model resources
Renamed Host model to HostResource
Added DirectoryResource; implemented discovery for files and directories
Needed for blueprint:
https://blueprints.launchpad.net/rubick/+spec/python33-support

Change-Id: I41f67db38ee3894aa8cf3d6e51991b027dc20485
2013-11-18 17:44:40 +04:00
Jenkins
aae261e036 Merge "Add .gitreview file for new repository" 2013-11-18 07:26:06 +00:00
Oleg Gelbukh
e56d947303 Multiple fixes for PEP8 and unittests
Fix multiple PEP8-related issues.
Fix unittests for config schema registry.
Delete broken joker unittests.
Ignore F401,F403,E501,H306 in flake8 section of tox.ini:
  * allow non-alphabetical ordering of imports
  * ignore line length limit of 80
  * allow wildcard imports
  * allow importing unused modules for future use

Change-Id: Iac1bb030900c009e39a73fb98b5d76c24372920d
2013-11-15 17:54:05 +00:00
Oleg Gelbukh
0c87c89369 Add .gitreview file for new repository
git-review tool is a de-facto standard for working with OpenStack
and Stackforge projects via Gerrit change requests. .gitreview file
sets default configuration parameters for git-review utility,
including remote name, host, port and default branch.

Change-Id: I2275c9ac888ddb0b51ec2dc0f4d2515d152e79c1
2013-11-15 07:02:07 +00:00
Maxim Kulkin
233d7e5f29 Updated config schema to support finding parameter by full name; improved search speed 2013-11-13 17:31:35 +04:00
Maxim Kulkin
89d05f35a0 Fixed discovery listen sockets issues 2013-11-13 17:30:05 +04:00
Maxim Kulkin
068dd0176e Optimized some of nova config schema 2013-11-13 14:07:20 +04:00
Maxim Kulkin
7a64e5bb6b Simplified code in schema generator 2013-11-13 10:38:04 +04:00
Maxim Kulkin
cdd7b572d8 Revert "Updated schema generator: Do not convert values, leave them as is"
This reverts commit bc90a7d6d3a6125caaee26356f98ecd570be9422.
2013-11-13 10:31:18 +04:00
Maxim Kulkin
7111f7af21 More config schema cleanup 2013-11-12 18:16:52 +04:00
Maxim Kulkin
bc90a7d6d3 Updated schema generator: Do not convert values, leave them as is 2013-11-12 18:16:52 +04:00
Maxim Kulkin
b571cfdc18 Updated schema generator: Do not mark params as new if they were already in database 2013-11-12 18:16:52 +04:00
Maxim Kulkin
60e8859242 Updated schema generator: Fixed string version sorting/comparision 2013-11-12 18:16:52 +04:00
Maxim Kulkin
28a51a2247 Updated schema generator to allow specifying projects to process, loglevel 2013-11-12 18:16:52 +04:00
Ryabin Sergey
2a31b5ab61 [joker] advanced ssh class implementation 2013-11-12 17:46:44 +04:00
Ryabin Sergey
e2e4896877 [joker] right ssh class implementation 2013-11-12 17:46:44 +04:00
Maxim Kulkin
75e38fd739 Removed test schema 'foo' 2013-11-12 17:08:37 +04:00
Maxim Kulkin
b45c78f0be Added config schema compiled database 2013-11-12 16:21:08 +04:00
Maxim Kulkin
24f93263ed Fixes for cinder, keystone and nova schemas 2013-11-12 16:21:08 +04:00
Maxim Kulkin
5637f040f6 Refactoed config schema storage: store data in YAML; generate compact version records 2013-11-12 16:21:08 +04:00
Maxim Kulkin
a2cfa5bcbf Fixed syntax error in swift_proxy_server config schema file 2013-11-12 16:21:08 +04:00
Maxim Kulkin
228675ebdf Removed old schema python files 2013-11-12 16:21:08 +04:00
Maxim Kulkin
c7e188e9d9 Renamed schema/generator.py -> schema/collector.py 2013-11-12 16:21:08 +04:00
Maxim Kulkin
08b8cdc3c5 Updated schema generator to generate YAML 2013-11-12 16:21:08 +04:00
Maxim Kulkin
f11534b503 Converted config schemas to YAML 2013-11-12 16:21:08 +04:00
Peter Lomakin
c2af438891 Bug fix in neutron-dhcp-server discovery. 2013-11-11 18:54:48 +04:00
Ryabin Sergey
f63ccee112 [rubick] cli exception 2013-11-11 12:00:12 +04:00
Oleg Gelbukh
f5c07c111a [doc] Update packages and classes diagrams
Created new classes diagram and packages diagram with pyreverse and
converted to PNG with dot
2013-11-08 06:00:37 +00:00
Peter Lomakin
f9f8fa26c3 Added examples of CLI usage.
Small fixes in cli.py
2013-11-07 18:11:50 +04:00
Maxim Kulkin
4d324e42e3 Updated OpenstackComponent.config to use Configuration.validation() for validating parameters 2013-11-07 17:53:32 +04:00
Maxim Kulkin
602007ab88 Fixed handling of unknown params in Configuration 2013-11-07 17:52:36 +04:00
Maxim Kulkin
368f6e8f53 Fixed formatting in rubick/schema 2013-11-07 17:39:17 +04:00
Maxim Kulkin
001fbe798f Fixed Keystone auththoken inspection type problem 2013-11-07 17:39:17 +04:00
Maxim Kulkin
ec50e111b0 Fixed Keystone config schema types&defaults for ports 2013-11-07 17:39:17 +04:00
Maxim Kulkin
e77e3c88d9 Added config schema right into Configuration 2013-11-07 17:39:17 +04:00
Ilya Kharin
452648b434 Fix version spec in "requests==1.2.0" requirement 2013-11-07 16:06:19 +04:00
Ilya Kharin
323309ff75 Fix typo 2013-11-07 16:02:46 +04:00