
* Action factory register actions in DB at starting * Added script tools/sync_db.sh for sync with db (Updates system actions, it is required before first Mistral launch) * Changed init Mistral in devstack: we must do sync_db before the launching. * Since we have to write all actions in DB, unit test are also modified: * Now in tearDown() we don't drop db at all, but just delete all things except Actions. * Created heavy_init() method as a replacement setUpClass(), see comments in tests/base.py * Register actions operation is too much expensive operation so we create db and init actions in heavy_init() method. TODO: * Provide executor info to construct action class in runtime using action_factory * Modify/write an instruction 'How to start Mistral' Change-Id: If4416c4da5c05189126c109aa613a0303c1b7ef0
38 lines
1011 B
Python
38 lines
1011 B
Python
# Copyright 2014 - Mirantis, Inc.
|
|
#
|
|
# Licensed under the Apache License, Version 2.0 (the "License");
|
|
# you may not use this file except in compliance with the License.
|
|
# You may obtain a copy of the License at
|
|
#
|
|
# http://www.apache.org/licenses/LICENSE-2.0
|
|
#
|
|
# Unless required by applicable law or agreed to in writing, software
|
|
# distributed under the License is distributed on an "AS IS" BASIS,
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
# See the License for the specific language governing permissions and
|
|
# limitations under the License.
|
|
|
|
from oslo.config import cfg
|
|
|
|
from mistral.actions import action_factory
|
|
from mistral.db.v2 import api as db_api
|
|
from mistral import config
|
|
from mistral.openstack.common import log as logging
|
|
|
|
|
|
CONF = cfg.CONF
|
|
LOG = logging.getLogger(__name__)
|
|
|
|
|
|
def main():
|
|
config.parse_args()
|
|
logging.setup('Mistral')
|
|
|
|
db_api.setup_db()
|
|
|
|
action_factory.sync_db()
|
|
|
|
|
|
if __name__ == '__main__':
|
|
main()
|