Certainly, erroring out when you specify an instance type that doesn't
exist for this endpoint seems like a good idea.

I also like your second idea, which is basically just creating an alias for
a list of constraints.  I think that feature would be very handy if it was
handled in a way that was easily shareable, so people online or people in
the same company could share configurations.... ideally stored in a
configuration file.

You could then specify an alias:

discourse "mem=2G root-disk=10G cpu-cores=2"

And then someone could copy and paste that into their .juju/aliases   (or
something similar)

then you could do

juju deploy discourse --constraints alias=discourse

It would make scripts a lot easier to write cross-provider, you'd just need
to translate your constraints aliases to the new provider, and the actual
deployment script could stay exactly the same.



On Thu, Oct 10, 2013 at 9:18 AM, Gustavo Niemeyer <
[email protected]> wrote:

> On Thu, Oct 10, 2013 at 8:31 AM, John Arbash Meinel
> <[email protected]> wrote:
> > We've gone around that discussion a *lot* about how you specify a
> > value that is site-specific. Do you need a site-specific key?
> (...)
> > We talked about supporting a potential list and we just pick out which
> > one might fit, but Canonistack and EC2 both define an "m1.tiny" that
> > may or may not match well enough (and we don't provide a way to be
> > more specific without just site specific meaning).
>
> We can perhaps get away with a simple mechanism: we define a generic
> "instance-type" constraint. If the name of that constraint matches
> exactly something that is available in the API endpoint being used
> (not just provider type, since we can have multiple API endpoints with
> the same provider type yet different machine types), we use it. If it
> does not match any, the script errors out so we can catch typos and
> actual errors. In a second moment, we can provide a mechanism for
> people to provide their own custom mappings tied to their environment
> ("in this environment t1.micro means 1 CPU and 512MB of memory").
>
>
> gustavo @ http://niemeyer.net
>
-- 
Juju mailing list
[email protected]
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/juju

Reply via email to