From 13ac3b2727878d5fce5978b5d4edb8cdbba99698 Mon Sep 17 00:00:00 2001 From: Shuo Yang Date: Tue, 30 Jun 2015 11:51:14 -0700 Subject: [PATCH] Change the order of ./compass/README.md to reflect a typical RESTful call logic path Change-Id: I157f2f2d14950191916d2ff7c7dd37c0300c4615 --- compass/README.md | 76 ++++++++++++++++++++++++++++------------------- 1 file changed, 45 insertions(+), 31 deletions(-) diff --git a/compass/README.md b/compass/README.md index 44d320a8..4d774bab 100644 --- a/compass/README.md +++ b/compass/README.md @@ -4,35 +4,47 @@ Compass Core Python Modules ##Direcotries and Files - * actions/ - compass heavy-lifting actions. This directory includes wrappers of heavy-lifting utility functions, - such as clean.py, delete.py and deploy.py. It also has complete modules, e.g. health_check/ that does a health - check on compass and output diagnoses. - * api/ - API related files go here. - * api.py - defines compass RESTful API. - * api.raml - raml file to display/document compass RESTful api. - * auth_handler.py - handles API authentication. - * exception_handlers.py - handles API exceptions. - * utils.py - utilities for API. - * v1/ - deprecated directory. - * apiclient/ - API client. - * example.py - example code to deploy a cluster by calling compass API client. - * restful.py - compass API client library. - * v1/ - deprecated directory.a - * db/ - compass database modules. - * api/ - Database level API interfaces, which includes all compass primitive data types. - * callback.py - metadata callback methods. - * config_validation/ - configuration validation module. - * exception.py - compass defined exceptions for database module. - * models.py - database model file, defining all compass database tables. - * validator.py - database validation methods. - * vi/ - deprecated directory. - * deployment/ - backend deployment module that handles upstream data and dumps to installers + * apiclient/ - API client. + * example.py - example code to deploy a cluster by calling compass API client. + * restful.py - compass API client library. + * v1/ - deprecated directory. + + * api/ - API related files go here. + * api.py - defines compass RESTful API. + * api.raml - raml file to display/document compass RESTful api. + * auth_handler.py - handles API authentication. + * exception_handlers.py - handles API exceptions. + * utils.py - utilities for API. + * v1/ - deprecated directory. + + * db/ - compass database modules. + * api/ - Database level API interfaces, which includes all compass primitive data types. + - This is the wrapper layer of the ORM tables and expose the useful logic of DB accessing. + * callback.py - metadata callback methods. + * config_validation/ - configuration validation module. + * exception.py - compass defined exceptions for database module. + * models.py - database model file, defining all compass database tables. + * validator.py - database validation methods. + * vi/ - deprecated directory. + + + * tasks/ - all celery tasks are defined here, and they asynchronously exercise functions in the ./actions directory. + * client.py - module to setup celery client. + * tasks.py - defines all celery tasks. + + * actions/ - wrappers of heavy-lifting utility functions located in ./deployment, + ./hdsdiscovery, ./log_analyzor + * health_check/ that does a health + check on compass and output diagnoses. + + * deployment/ - backend deployment module that handles upstream data and dumps to installers * deployment_manager.py - deployment dispatcher that defines interfaces and retrieves/updates configurations. * installers - contains base installers and its children installers such as os_installer and pk_installer (package_installer). These installers here are the "plugin" kind of files that interact with installer tools(e.g. chef) that do the real installation tricks. * utils/ - utility module that contains a constant.py which defines all keyword variables for deployment. - * hdsdiscovery/ - hardware discovery module, mainly for mac-address retrieval from switches. + + * hdsdiscovery/ - hardware discovery module, mainly for mac-address retrieval from switches. * base.py - a base class that can be extended by vendors under vendor/ directory. * error.py - hdsdiscovery module error handling. * hdmanager.py - manages hdsdiscovery functionalities. @@ -45,14 +57,16 @@ Compass Core Python Modules using arista as an example, first a python file with the same name of its parent directory should be added (e.g: arista.py). Define the class_name in the vendor file as "Arista" and give the class identical name. Then create a subdirectory called "plugins" and place mac.py under it. - * log_analyzor/ - compass progress tracking module. + + * log_analyzor/ - compass progress tracking module. * adapter_matcher.py - module to provide installing progress calculation for the adapters. * file_matcher.py - updates installing progresses by processing the log files. * line_matcher.py - updates/gets progress when a matched line is found in log files. * progress_calculator.py: provides functions to update installing progresses. - * tasks/ - all celery tasks are defined here. - * client.py - module to setup celery client. - * tasks.py - defines all celery tasks. - * tests/ - all unittest code - * test_serverside/ - tests for installers(now only supports chef). - * utils/ - compass core module utility functions. + + + * utils/ - compass core module utility functions. + + * tests/ - all unittest code + + * test_serverside/ - tests for installers(now only supports chef).