Command to deploy a new service is needed
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
pyjuju |
Fix Released
|
Medium
|
Kapil Thangavelu |
Bug Description
We need a command which is able to be called as:
$ ensemble deploy --repository /my/formulas/ wordpress
This command should:
1) Verify that the service name is available for creation (since no explict name was provided, "wordpress" should be used) through the ServiceStateManager (depends on bug #616485)
2) Find the "wordpress" formula in the repository and upload it to the environment (depends on bug #616478)
3) Create the new service state with the "wordpress" formula (depends on bug #616485)
4) Create a new machine state for running this service (depends on bug #616487)
5) Create a new service unit with the created service and assign it to the created machine (depends on both #616485 and #616487)
Note that, during that initial development phase, every service unit will live under its own machine. In the future, this will be changed so that cohabiting a machine is possible.
Related branches
- Gustavo Niemeyer: Approve
-
Diff: 481 lines (+327/-24)10 files modifiedensemble/control/__init__.py (+1/-1)
ensemble/control/deploy.py (+103/-0)
ensemble/control/tests/test_deploy.py (+173/-0)
ensemble/environment/tests/test_config.py (+3/-1)
ensemble/formula/errors.py (+14/-0)
ensemble/formula/publisher.py (+7/-10)
ensemble/formula/repository.py (+4/-3)
ensemble/formula/tests/test_errors.py (+14/-0)
ensemble/formula/tests/test_publisher.py (+2/-5)
ensemble/formula/tests/test_repository.py (+6/-4)
Changed in ensemble: | |
status: | New → Confirmed |
importance: | Undecided → Medium |
description: | updated |
Changed in ensemble: | |
milestone: | none → 0.1 |
Changed in ensemble: | |
assignee: | nobody → Kapil Thangavelu (hazmat) |
status: | Confirmed → In Progress |
Changed in ensemble: | |
status: | In Progress → Fix Committed |
Changed in ensemble: | |
status: | Fix Committed → Fix Released |