Re: Normalizing output dir for charm build

2017-05-11 Thread Simon Kollberg
+1! While you're at it; I think it could be wise to namespace everything with Juju. For example $JUJU_LAYER_PATH and ~/.cache/juju/charm-build/deps or something similar. I think it would make everything more coherent and also eliminate the possibility of naming collisions. This could of course

Re: Normalizing output dir for charm build

2017-05-11 Thread Cory Johns
Adam, I think the name "charms" is up to the user, it's just whatever they have set $JUJU_REPOSITORY to. It just so happens that Merlijn sets his to JUJU_REPOSITORY=~/charms (or similar). Previously, the build charm would end up in {$JUJU_REPOSITORY,$PWD}/{builds,trusty,xenial,...}/$charm_name.

Re: Normalizing output dir for charm build

2017-05-11 Thread Adam Israel
To confirm: Builds will be replaced by a charms directory, and deps moved to ~/.cache/charm-build. If so, I'm +1 to that. On Thu, May 11, 2017 at 9:28 AM, Cory Johns wrote: > Yes, that's what I'm proposing. > > On Thu, May 11, 2017 at 4:47 AM, Merlijn Sebrechts < >

Re: Normalizing output dir for charm build

2017-05-11 Thread Cory Johns
Yes, that's what I'm proposing. On Thu, May 11, 2017 at 4:47 AM, Merlijn Sebrechts < merlijn.sebrec...@gmail.com> wrote: > It seems like deps should go under ~/.cache/charm-build/ > > > +1 > > Now, to be clear, the structure you propose is something like the > following? > > > ├── charms

Re: Normalizing output dir for charm build

2017-05-11 Thread Merlijn Sebrechts
> > It seems like deps should go under ~/.cache/charm-build/ +1 Now, to be clear, the structure you propose is something like the following? ├── charms# $JUJU_REPOSITORY │ ├── my-charm │ ├── ... ├── interfaces# $INTERFACE_PATH │ ├── ... ├── layers# $LAYER_PATH │

Re: Normalizing output dir for charm build

2017-05-10 Thread Alex Kavanagh
Good work here, thanks Merlijn. My instinct is that, if we are changing behaviour, then the option probably needs to be mandatory so that affected tool chains actually break in a predictable way, rather than in an obscure "huh, what's going on here". So, I'm in agreement with Cory's proposal.

Re: Normalizing output dir for charm build

2017-05-10 Thread Merlijn Sebrechts
> > * Drop the "builds" portion of the output directory (that was mainly to > distinguish it from the series portion). > We still need to distinguish the charms from `deps` and possibly from `layers` and `interfaces`. This is my $JUJU_REPOSITORY: ├── charms │ ├── builds │ ├── deps │ ├──

Re: Normalizing output dir for charm build

2017-05-10 Thread Pete Vander Giessen
I am also +1 to the effort (thank you, Merlijn!) My first instinct would be to keep mycharm/builds as the default output dir, as that matches the behavior of other tools (like Python's dist tools). I see the arguments against it, though; it's probably better to either do the "right" thing and

Re: Normalizing output dir for charm build

2017-05-10 Thread Charles Butler
I am +1 on this effort. Lets drop dead code paths for juju 1.x and push forward with Juju 2.x standards. Constantly dancing the dance of convention over configuration feels like we've lost sight of simplification and making things simpler is always welcome in my book. / my two cents All the

Normalizing output dir for charm build

2017-05-10 Thread Cory Johns
Started on https://github.com/juju/charm-tools/pull/320, I'd like to bring this discussion to the list. The output directory for charm build can vary in seemingly unpredictable ways depending on how it is called, the environment, and the charm's metadata.yaml contents. This is due to historical