Mike, I think we figured out that we only need a more limited set of
APIs. Basically, rather than provide the user with all the ranges, just
let them ask for:
* the total number of available addresses in a space / subnet
* the largest number of contiguous addresses
If Launchpad needs 5 addresses, it can ask "what's the largest number of
addresses" and if it's more than 5 it can then say:
* request a range of n addresses for a purpose (text)
- it gets a range with an id (token unique to that reservation)
- maas reserves the range for (user) (purpose)
* release the range with a specific token
- maas releases the range
In other words, rather than giving the consumer all the details and
letting them choose their own ranges, treat addresses as dynamic
resources ("I need 5 in this space") rather than things to be managed
with a lot of insight. Another way to look at it is this: we do not want
Landscape having to have code to decide WHICH set of 5 addresses to use;
they should only care AT MOST that they get it on a particular space, or
subnet (but space is better).
Mike, I think we figured out that we only need a more limited set of
APIs. Basically, rather than provide the user with all the ranges, just
let them ask for:
* the total number of available addresses in a space / subnet
* the largest number of contiguous addresses
If Launchpad needs 5 addresses, it can ask "what's the largest number of
addresses" and if it's more than 5 it can then say:
* request a range of n addresses for a purpose (text)
- it gets a range with an id (token unique to that reservation)
- maas reserves the range for (user) (purpose)
* release the range with a specific token
- maas releases the range
In other words, rather than giving the consumer all the details and
letting them choose their own ranges, treat addresses as dynamic
resources ("I need 5 in this space") rather than things to be managed
with a lot of insight. Another way to look at it is this: we do not want
Landscape having to have code to decide WHICH set of 5 addresses to use;
they should only care AT MOST that they get it on a particular space, or
subnet (but space is better).
Make sense?
Mark