This PS implements the following changes:
- switches freeze approach to requirements-direct.txt and
requirements-frozen.txt files
- adjusts code tabulation style according to yapf recommendations
- replaces deprecated usage of responce.body attribute with
responce.text
- fixes integration tests in controlled by Makefile + tox
- uplifts Helm to v3.9.4
Change-Id: I751db72eb8f670825382f11a36657112faeb169a
- Some status changes in a task may have additional information that
is referenced by a URI link. Support describing these links and
returning them via API.
- Refactor alembic stuff to better handle table schema updates
- Add unit tests
Change-Id: Iae63a9716f2522578be0244925fc274a4338eac4
This PS adds the skeleton for a set of zuul checks and gates for
Airship, using the framework from OpenStack-Helm.
[Fix] Zuul lint fix
- Fix whitespace linting errors
- Update docuemtation errors
- Remove dead tests
Change-Id: Id1ed3aa2321d518ed15fcbb3b698b49709bed287
Signed-off-by: Pete Birley <pete@port.direct>
Add statemgmt methods for accessing build data
tables.
- Add post_build_data for saving new build data
- Add get_build_data for selecting build data based
on node name or task ID.
- YAPF formatting that was wider scope than expected
Change-Id: I415eb795e2e5cab6f6a4cc0dc90aa79497c41328
- Implement boot action rendering and API
- Reorganize DB integration tests and add a tox -e postgres entrypoint
- Add boot action unit tests
- Add node filter unit test
- Add boot action context creation to deployment workflow
- Fix regression bug in MaaS Machines model
- Downgrade to Python 3.5 due to CICD limitations
Change-Id: I6c8f100cbe209f9b1c6c6ff1285365d89343ae2a
Refactor orchestrator to break large
monolithic functions into small functions
per action.
- Update orchestrator to match new statemgmt API
- Pull most code out of __init__.py files
- Create action classes for Orchestrator actions
- Create action classes for Driver actions
- Orchestrator consumes tasks from database queue
- Additional encapsulation of task functionality into Task class
- Create shared integration test fixtures
- Fix Sphinx entrypoint so package install works
- Disable bootdata API until BootAction implementation
- Bring codebase into PEP8 compliance
- Update documentation reflect code changes
- Mark SQL #nosec for bandit
Change-Id: Id9a7bdedcdd5bbf07aeabbdb52db0f0b71f1e4a4
Refactor the task model and add database persistence for tasks.
- Document task schema
- Use Alembic for database creation
- Use SQLalchemy for database abstraction
- Update Task status and result enumerations
Change-Id: I247b88f293144a0bdf891958e19711d975c729ba