MAAS provider: cannot provision named instance
Bug #1237709 reported by
Jonathan Davies
This bug affects 4 people
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
juju-core |
Fix Released
|
High
|
Andrew Wilkins |
Bug Description
In bug #1170337, it was requested that maas-name and maas-tags constraints (present in pyjuju) be implemented in the juju-core version.
However, only maas-tags was implemented and the bug was closed.
Related branches
lp://qastaging/~axwalk/juju-core/addmachine-placement
- Juju Engineering: Pending requested
-
Diff: 1626 lines (+683/-219)34 files modifiedcmd/juju/addmachine.go (+50/-36)
cmd/juju/addmachine_test.go (+9/-5)
environs/broker.go (+5/-0)
environs/jujutest/livetests.go (+2/-1)
instance/placement.go (+85/-0)
instance/placement_test.go (+76/-0)
names/machine.go (+5/-0)
names/machine_test.go (+6/-4)
provider/azure/environ.go (+4/-1)
provider/azure/instancetype_test.go (+4/-2)
provider/common/policies.go (+0/-15)
provider/dummy/environs.go (+8/-1)
provider/ec2/ec2.go (+4/-1)
provider/ec2/local_test.go (+6/-3)
provider/joyent/environ.go (+4/-1)
provider/local/environ.go (+7/-1)
provider/maas/environ.go (+9/-1)
provider/manual/environ.go (+1/-2)
provider/openstack/local_test.go (+4/-2)
provider/openstack/provider.go (+4/-1)
state/addmachine.go (+9/-4)
state/api/client.go (+14/-1)
state/api/params/internal.go (+20/-0)
state/api/params/params.go (+6/-1)
state/api/provisioner/machine.go (+8/-32)
state/api/provisioner/provisioner_test.go (+29/-43)
state/apiserver/client/client.go (+42/-9)
state/apiserver/client/client_test.go (+62/-16)
state/apiserver/provisioner/provisioner.go (+43/-0)
state/apiserver/provisioner/provisioner_test.go (+81/-0)
state/machine.go (+9/-0)
state/policy.go (+3/-3)
state/prechecker_test.go (+22/-13)
worker/provisioner/provisioner_task.go (+42/-20)
lp://qastaging/~axwalk/juju-core/lp1237709-bootstrap-placement
- Juju Engineering: Pending requested
-
Diff: 1076 lines (+155/-109)33 files modifiedcmd/juju/bootstrap.go (+24/-2)
cmd/juju/bootstrap_test.go (+11/-5)
cmd/juju/cmd_test.go (+0/-5)
cmd/juju/deploy_test.go (+3/-0)
cmd/plugins/juju-restore/restore.go (+2/-1)
environs/bootstrap/bootstrap.go (+2/-3)
environs/bootstrap/bootstrap_test.go (+25/-15)
environs/interface.go (+12/-4)
environs/jujutest/livetests.go (+2/-2)
environs/jujutest/tests.go (+2/-3)
environs/open_test.go (+1/-2)
instance/placement.go (+1/-1)
juju/apiconn_test.go (+2/-3)
juju/conn_test.go (+6/-6)
juju/testing/conn.go (+1/-2)
provider/azure/environ.go (+2/-2)
provider/common/bootstrap.go (+4/-4)
provider/common/bootstrap_test.go (+13/-8)
provider/common/mock_test.go (+2/-1)
provider/dummy/environs.go (+7/-7)
provider/ec2/ec2.go (+2/-2)
provider/ec2/local_test.go (+4/-4)
provider/joyent/environ.go (+2/-2)
provider/joyent/local_test.go (+3/-3)
provider/local/config_test.go (+2/-2)
provider/local/environ.go (+2/-2)
provider/local/environ_test.go (+1/-1)
provider/maas/environ.go (+2/-2)
provider/maas/environ_whitebox_test.go (+4/-4)
provider/manual/environ.go (+2/-1)
provider/openstack/live_test.go (+1/-2)
provider/openstack/local_test.go (+6/-6)
provider/openstack/provider.go (+2/-2)
tags: | added: cts-cloud-review |
Changed in juju-core: | |
status: | New → Triaged |
importance: | Undecided → High |
summary: |
- MAAS provider: Missing maas-name constraint + MAAS provider: cannot provision named instance |
tags: |
added: cts removed: cts-cloud-review |
tags: | added: maas |
tags: | added: constraint |
tags: |
added: constraints removed: constraint |
tags: |
added: cts-cloud-review removed: cts |
Changed in juju-core: | |
milestone: | none → 1.17.0 |
tags: |
added: maas-provider removed: maas |
Changed in juju-core: | |
milestone: | 1.17.0 → 1.19.0 |
Changed in juju-core: | |
milestone: | 1.19.0 → 1.18.0 |
tags: | added: landscape |
Changed in juju-core: | |
assignee: | nobody → Andrew Wilkins (axwalk) |
status: | Triaged → In Progress |
Changed in juju-core: | |
milestone: | 1.20.0 → 1.19.1 |
Changed in juju-core: | |
status: | In Progress → Fix Committed |
Changed in juju-core: | |
status: | Fix Committed → Fix Released |
To post a comment you must log in.
maas-name is a bad constraint, because it makes no sense at a service level.
However, I understand that the functionality is necessary both at bootstrap time and subsequently. This should be implemented as a placement directive:
juju bootstrap --to <hostname>
juju deploy wordpress --to <hostname>
juju add-unit wordpress --to <hostname>
juju add-machine <hostname>
...in which each of the <hostname> params is really shorthand for <provider:hostname> (eg "garage- maas:gimli" , but the "garage-maas:" bit can be inferred automatically because the whole environment is running on that maas anyway).
(Placement directives already exist for the lxc and ssh pseudo-providers -- "ssh:user@host", "lxc:3", but need some work to be generalised for this use case.)