Commit Graph

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 bc90a7d6d3.
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