"Starting a node" has different meanings in the UI and in the API.

Bug #1186196 reported by Raphaël Badin
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
MAAS
Fix Released
High
Raphaël Badin

Bug Description

In the UI, "starting a node" means *acquiring* a node, then starting it.
In the API, starting a node means just means starting it.

This is due to the fact that the API is not using the node_action module and re-implements the logic for node actions (in slightly different way sometime, like with the "start node" action).

The API should use the node_action module to perform actions to avoid that kind of problem.

Tags: api ui

Related branches

Raphaël Badin (rvb)
tags: added: api ui
Changed in maas:
importance: Undecided → High
status: New → Triaged
Revision history for this message
Gavin Panella (allenap) wrote : Re: [Bug 1186196] [NEW] "Starting a node" has different meanings in the UI and in the API.

Do we need to be able to start a node that has already been acquired?
That might be the reason for the 2-step acquire and start in the API.
Is it possible to acquire and *not* start via the UI?

Revision history for this message
Julian Edwards (julian-edwards) wrote :

On Friday 31 May 2013 10:07:25 you wrote:
> Do we need to be able to start a node that has already been acquired?
> That might be the reason for the 2-step acquire and start in the API.
> Is it possible to acquire and *not* start via the UI?

I am starting to wonder if we need the 2 steps at all. We could add a new API
call, acquire_and_start and deprecate the other two, perhaps.

Revision history for this message
Gavin Panella (allenap) wrote :

On 3 June 2013 01:56, Julian Edwards <email address hidden> wrote:
> I am starting to wonder if we need the 2 steps at all. We could add a new API
> call, acquire_and_start and deprecate the other two, perhaps.

I think it's worth keeping the two steps. Adding acquire_and_start
would be mostly harmless I think, though the efficiency gains are
small: these calls (should) operate on multiple nodes anyway, so it's
the difference between 1 and 2 API calls, regardless of the number of
nodes involved.

The use case I can imagine for the separate calls is to be able to
treat the acquire like a transaction, i.e. get 100 machines and iff
that succeeds then deploy application X, else return them to the pool.
Very large deployments may also want to stagger starts to avoid
saturating the power and data networks.

Revision history for this message
Julian Edwards (julian-edwards) wrote :

Given recent discussions, we want to make changes to use a system that returns a request token which will become valid once maas knows a machine is started successfully.

Raphaël Badin (rvb)
Changed in maas:
assignee: nobody → Raphaël Badin (rvb)
status: Triaged → Fix Committed
Changed in maas:
milestone: none → 1.7.0
Changed in maas:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.