On Mon, Aug 21, 2017 at 1:49 PM, Hardy Ferentschik <hardy@ferentschik.de> wrote:

> The only issue I see is when user have a default instance and a profile
> there will be a MINISHIFT_HOME/config/config.json and
> MINISHIFT_HOME/MACHINE_NAME/config/config.json.

MINISHIFT_HOME/MACHINE_NAME/config/config.json? I would expect
MINISHIFT_HOME/profiles/<profile-name>/config/config.json. There does not need to be a
1 to 1 match between profile name and machine name.  I guess we do it now,
but it is not a given (think about the discussion of the default profile. Should
it be called 'default' or 'minishift'?).

Regarding your concerns, having this additional 'profiles' directory will imo
alleviate them.

> I guess this can be confusing for user.

I think we need to be careful here. For many users the exact details of
$MINISHIFT_HOME should stay transparent. That's our whole mission, right?
Providing a local OpenShift experience without the hassles.

We as developers care, power users might care, but the majority of the users
should not have to care. But yes, it is a trade-off. However, consider
the implications of moving the default profile into the 'profiles' directory
as well. This is potentially much more disruptive for the users.

Do you on a regular basis manually inspect and edit the various files your IDE
creates to manage its state? In most cases you should not have to, since
your IDE should offer all the mean to modify what's required through its UI.
This applies to most tools really and imo is not different for Minishift.

> Maybe user does not care as user should be using
> commands to deal with config.json e.g. `minishift config view`.

Hi All,

The final PR is available at https://github.com/minishift/minishift/pull/1380 and it is backward compatible with the older version of Minishift (which does not have profile feature). Give it a try if you are curious.