Powershell: Settle on names for Docker containers

Created on 14 Sep 2016  路  15Comments  路  Source: PowerShell/PowerShell

Not everyone is currently happy with the choice of "stable" and "unstable."

Please review the documented intent of the names, and officially settle on appropriate tags (as it requires code change).

Also settle on which container will be the "latest" container.

Afterward, we need the Docker Hub registry app to be approved with the PowerShell organization so I can set up automated builds on a PowerShell/PowerShell registry (example setup on my own user).

This is necessary to resolve #2002.

/cc @PowerShell/powershell-committee

Note: I need to copy the bootstrap.ps1 files to each unstable Dockerfile folder; while launch.sh copies it on the fly, this doesn't work for the automated builds. They each need a copy in the context of the folder itself. Alternatively the Dockerfiles can be renamed and put in one folder, but this is unconventional.

Area-Maintainers-Build

All 15 comments

You may also consider setting up an Official Repository.

We talked out a bunch of potentials in the @PowerShell/powershell-committee meeting.

First, I think we definitely want latest-alpha-<platform> for the latest alpha release. That's easy (unless anyone has objections).

For the latest build from source in master, the basic principle is that we want to discourage people from picking this over latest-alpha because it sounds more stable. We've got a few options here, none of which I'm thrilled about:

  • latest-master-<platform>
  • latest-dev-<platform>
  • latest-source-<platform>
  • latest-github-<platform>
  • We can also use an arcane acronym as a way to discourage usage of this tag like lbfm for latest build from master or lms for latest master source.

@andschwa : thoughts?

Why use latest so many times? There should be one latest tag, with nothing else suffixed, as this is the default tag used when no others are specified.

As for the unstable from source builds, I'd suggest a prefix of nightly.

Since enabling automated builds under the current tags on my own fork, over 42 pulls have happened, and the availability isn't even widely publicized. This matter should be settled soon so we can host on the official account.

@joeyaiello is this going to be completed soon?

@andschwa it was my understanding that we need two container images, one that has latest powershell installed and the other grabs the latest powershell by cloning the repo and intended for CI use. I think the list Joey provided was to differentiate the latter from the former. I say just pick something reasonable.

I'm suggesting release and nightly to take the place of the current stable and unstable tags (we should not overload latest; it's the one tag with a convention and should point to the most recent release image). Does anyone on the @PowerShell/powershell-committee object?

Stable/unstable seems orthogonal to nightly/release. Our general versioning elsewhere in PowerShell is moving toward Semver, which uses the term Stable (& by inference UnStable), as it provides information about the recommended use that's unavailable in Release and Nightly. If we use both, it gives good value. However, without the Stable tag, it seems you are creating a new mechanism for tagging these builds that consumers of them have to interpret independently from Semver. I believe that's not the right approach.

We did go with stable and unstable, I'm blocked because the committee was against this. Has that changed?

Based on past @PowerShell/powershell-committee discussion and today's chat with @SteveL-MSFT, I would suggest, we go with:

  • latest-alpha-<platform> for the latest alpha release.
  • latest-master-<platform> for the latest build from source code in master branch

That's the only one I cannot recommend, latest as a tag has a specific meaning in Docker and shouldn't be overloaded.

latest confuses everyone (tons of articles on this), so why not just drop latest altogether?

alpha-<platform> and master-<platform>, no latest

@PowerShell/powershell-committee is okay with latest pointing to ubuntu-16.04 and a separate repo for powershell-nightly

Perfect! @SteveL-MSFT you'll let me know when permissions on the hub are setup, yeah?

hub repos should be created later today

Was this page helpful?
0 / 5 - 0 ratings

Related issues

andschwa picture andschwa  路  3Comments

concentrateddon picture concentrateddon  路  3Comments

rudolfvesely picture rudolfvesely  路  3Comments

alx9r picture alx9r  路  3Comments

manofspirit picture manofspirit  路  3Comments