From d80e468dec737bea50fce63823cbb307bd68c2af Mon Sep 17 00:00:00 2001 From: dingmeng-xue Date: Tue, 12 May 2020 14:58:14 +0800 Subject: [PATCH 1/3] change dockerfile --- docker/Dockerfile-centos-7 | 19 +++++++------------ docker/Dockerfile-debian-9 | 19 +++++++------------ docker/Dockerfile-ubuntu-18.04 | 19 +++++++------------ 3 files changed, 21 insertions(+), 36 deletions(-) diff --git a/docker/Dockerfile-centos-7 b/docker/Dockerfile-centos-7 index 03419dc095f4..2c4ab7309eb9 100644 --- a/docker/Dockerfile-centos-7 +++ b/docker/Dockerfile-centos-7 @@ -1,14 +1,12 @@ FROM mcr.microsoft.com/powershell:centos-7 -ARG ARTIFACTS=/tmp/artifacts/ -ARG ARTIFACT=*.nupkg -ARG TEMPREPO=tmp +ARG REPOSITORY=PSGallery ARG MODULE=Az ARG CONFIG=config ARG AZURERM_CONTEXT_SETTINGS=AzureRmContextSettings.json ARG AZURE=/root/.Azure ARG VCS_REF="none" -ARG Build_Date= +ARG BUILD_DATE= ARG VERSION= ARG IMAGE_NAME=mcr.microsoft.com/azure-powershell:${VERSION}-centos-7 @@ -17,7 +15,7 @@ ENV AZUREPS_HOST_ENVIRONMENT="dockerImage/${VERSION}-centos-7" LABEL maintainer="Azure PowerShell Team " \ readme.md="http://aka.ms/azpsdockerreadme" \ description="This Dockerfile will install the latest release of Azure PowerShell." \ - org.label-schema.build-date=${Build_Date} \ + org.label-schema.build-date=${BUILD_DATE} \ org.label-schema.usage="http://aka.ms/azpsdocker" \ org.label-schema.url="http://aka.ms/azpsdockerreadme" \ org.label-schema.vcs-url="https://github.com/Azure/azure-powershell" \ @@ -31,13 +29,10 @@ LABEL maintainer="Azure PowerShell Team " \ org.label-schema.docker.cmd.test="currently not available" \ org.label-schema.docker.cmd.help="docker run --rm ${IMAGE_NAME} pwsh -c Get-Help" -# install azure-powershell from built artifacts -COPY ${ARTIFACT} ${ARTIFACTS} -RUN pwsh -Command Register-PSRepository -Name ${TEMPREPO} -SourceLocation ${ARTIFACTS} -PublishLocation $ARTIFACTS -InstallationPolicy Trusted -PackageManagementProvider NuGet && \ - pwsh -Command Install-Module -Name ${MODULE} -Repository ${TEMPREPO} && \ - pwsh -Command Get-Module -ListAvailable && \ - pwsh -Command Unregister-PSRepository -Name ${TEMPREPO} && \ - pwsh -Command Remove-Item ${ARTIFACTS} -Recurse +# install azure-powershell from PSGallery +COPY ${ARTIFACT} ${ARTIFACTS} RUN pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Trusted && \ +RUN pwsh -Command Register-PSRepository -Name ${TEMPREPO} -SourceLocation ${ARTIFACTS} -PublishLocation $ARTIFACTS -InstallationPolicy Trusted -PackageManagementProvider NuGet && \ pwsh -Command Install-Module -Name ${MODULE} -RequiredVersion ${VERSION} -Repository ${REPOSITORY} && \ + pwsh -Command Install-Module -Name ${MODULE} -Repository ${TEMPREPO} && \ pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Untrusted # create AzureRmContextSettings.json before it was generated COPY ${CONFIG}/${AZURERM_CONTEXT_SETTINGS} ${AZURE}/${AZURERM_CONTEXT_SETTINGS} diff --git a/docker/Dockerfile-debian-9 b/docker/Dockerfile-debian-9 index 917992bba1f6..2ea18d7d84cd 100644 --- a/docker/Dockerfile-debian-9 +++ b/docker/Dockerfile-debian-9 @@ -1,14 +1,12 @@ FROM mcr.microsoft.com/powershell:debian-9 -ARG ARTIFACTS=/tmp/artifacts/ -ARG ARTIFACT=*.nupkg -ARG TEMPREPO=tmp +ARG REPOSITORY=PSGallery ARG MODULE=Az ARG CONFIG=config ARG AZURERM_CONTEXT_SETTINGS=AzureRmContextSettings.json ARG AZURE=/root/.Azure ARG VCS_REF="none" -ARG Build_Date= +ARG BUILD_DATE= ARG VERSION= ARG IMAGE_NAME=mcr.microsoft.com/azure-powershell:${VERSION}-debian-9 @@ -17,7 +15,7 @@ ENV AZUREPS_HOST_ENVIRONMENT="dockerImage/${VERSION}-debian-9" LABEL maintainer="Azure PowerShell Team " \ readme.md="http://aka.ms/azpsdockerreadme" \ description="This Dockerfile will install the latest release of Azure PowerShell." \ - org.label-schema.build-date=${Build_Date} \ + org.label-schema.build-date=${BUILD_DATE} \ org.label-schema.usage="http://aka.ms/azpsdocker" \ org.label-schema.url="http://aka.ms/azpsdockerreadme" \ org.label-schema.vcs-url="https://github.com/Azure/azure-powershell" \ @@ -31,13 +29,10 @@ LABEL maintainer="Azure PowerShell Team " \ org.label-schema.docker.cmd.test="currently not available" \ org.label-schema.docker.cmd.help="docker run --rm ${IMAGE_NAME} pwsh -c Get-Help" -# install azure-powershell from built artifacts -COPY ${ARTIFACT} ${ARTIFACTS} -RUN pwsh -Command Register-PSRepository -Name ${TEMPREPO} -SourceLocation ${ARTIFACTS} -PublishLocation $ARTIFACTS -InstallationPolicy Trusted -PackageManagementProvider NuGet && \ - pwsh -Command Install-Module -Name ${MODULE} -Repository ${TEMPREPO} && \ - pwsh -Command Get-Module -ListAvailable && \ - pwsh -Command Unregister-PSRepository -Name ${TEMPREPO} && \ - pwsh -Command Remove-Item ${ARTIFACTS} -Recurse +# install azure-powershell from PSGallery +COPY ${ARTIFACT} ${ARTIFACTS} RUN pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Trusted && \ +RUN pwsh -Command Register-PSRepository -Name ${TEMPREPO} -SourceLocation ${ARTIFACTS} -PublishLocation $ARTIFACTS -InstallationPolicy Trusted -PackageManagementProvider NuGet && \ pwsh -Command Install-Module -Name ${MODULE} -RequiredVersion ${VERSION} -Repository ${REPOSITORY} && \ + pwsh -Command Install-Module -Name ${MODULE} -Repository ${TEMPREPO} && \ pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Untrusted # create AzureRmContextSettings.json before it was generated COPY ${CONFIG}/${AZURERM_CONTEXT_SETTINGS} ${AZURE}/${AZURERM_CONTEXT_SETTINGS} diff --git a/docker/Dockerfile-ubuntu-18.04 b/docker/Dockerfile-ubuntu-18.04 index fce039c68d10..48b794e32918 100644 --- a/docker/Dockerfile-ubuntu-18.04 +++ b/docker/Dockerfile-ubuntu-18.04 @@ -1,14 +1,12 @@ FROM mcr.microsoft.com/powershell:ubuntu-18.04 -ARG ARTIFACTS=/tmp/artifacts/ -ARG ARTIFACT=*.nupkg -ARG TEMPREPO=tmp +ARG REPOSITORY=PSGallery ARG MODULE=Az ARG CONFIG=config ARG AZURERM_CONTEXT_SETTINGS=AzureRmContextSettings.json ARG AZURE=/root/.Azure ARG VCS_REF="none" -ARG Build_Date= +ARG BUILD_DATE= ARG VERSION= ARG IMAGE_NAME=mcr.microsoft.com/azure-powershell:${VERSION}-ubuntu-18.04 @@ -17,7 +15,7 @@ ENV AZUREPS_HOST_ENVIRONMENT="dockerImage/${VERSION}-ubuntu-18.04" LABEL maintainer="Azure PowerShell Team " \ readme.md="http://aka.ms/azpsdockerreadme" \ description="This Dockerfile will install the latest release of Azure PowerShell." \ - org.label-schema.build-date=${Build_Date} \ + org.label-schema.build-date=${BUILD_DATE} \ org.label-schema.usage="http://aka.ms/azpsdocker" \ org.label-schema.url="http://aka.ms/azpsdockerreadme" \ org.label-schema.vcs-url="https://github.com/Azure/azure-powershell" \ @@ -31,13 +29,10 @@ LABEL maintainer="Azure PowerShell Team " \ org.label-schema.docker.cmd.test="currently not available" \ org.label-schema.docker.cmd.help="docker run --rm ${IMAGE_NAME} pwsh -c Get-Help" -# install azure-powershell from built artifacts -COPY ${ARTIFACT} ${ARTIFACTS} -RUN pwsh -Command Register-PSRepository -Name ${TEMPREPO} -SourceLocation ${ARTIFACTS} -PublishLocation $ARTIFACTS -InstallationPolicy Trusted -PackageManagementProvider NuGet && \ - pwsh -Command Install-Module -Name ${MODULE} -Repository ${TEMPREPO} && \ - pwsh -Command Get-Module -ListAvailable && \ - pwsh -Command Unregister-PSRepository -Name ${TEMPREPO} && \ - pwsh -Command Remove-Item ${ARTIFACTS} -Recurse +# install azure-powershell from PSGallery +COPY ${ARTIFACT} ${ARTIFACTS} RUN pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Trusted && \ +RUN pwsh -Command Register-PSRepository -Name ${TEMPREPO} -SourceLocation ${ARTIFACTS} -PublishLocation $ARTIFACTS -InstallationPolicy Trusted -PackageManagementProvider NuGet && \ pwsh -Command Install-Module -Name ${MODULE} -RequiredVersion ${VERSION} -Repository ${REPOSITORY} && \ + pwsh -Command Install-Module -Name ${MODULE} -Repository ${TEMPREPO} && \ pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Untrusted # create AzureRmContextSettings.json before it was generated COPY ${CONFIG}/${AZURERM_CONTEXT_SETTINGS} ${AZURE}/${AZURERM_CONTEXT_SETTINGS} From 7393c530bd78b8befc87017c5618872f18d82bc5 Mon Sep 17 00:00:00 2001 From: dingmeng-xue Date: Tue, 12 May 2020 15:18:09 +0800 Subject: [PATCH 2/3] Fix pwsh cmd --- docker/Dockerfile-centos-7 | 3 ++- docker/Dockerfile-debian-9 | 3 ++- docker/Dockerfile-ubuntu-18.04 | 3 ++- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/docker/Dockerfile-centos-7 b/docker/Dockerfile-centos-7 index 2c4ab7309eb9..1d3f975cbe3c 100644 --- a/docker/Dockerfile-centos-7 +++ b/docker/Dockerfile-centos-7 @@ -32,7 +32,8 @@ LABEL maintainer="Azure PowerShell Team " \ # install azure-powershell from PSGallery COPY ${ARTIFACT} ${ARTIFACTS} RUN pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Trusted && \ RUN pwsh -Command Register-PSRepository -Name ${TEMPREPO} -SourceLocation ${ARTIFACTS} -PublishLocation $ARTIFACTS -InstallationPolicy Trusted -PackageManagementProvider NuGet && \ pwsh -Command Install-Module -Name ${MODULE} -RequiredVersion ${VERSION} -Repository ${REPOSITORY} && \ - pwsh -Command Install-Module -Name ${MODULE} -Repository ${TEMPREPO} && \ pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Untrusted + pwsh -Command Install-Module -Name ${MODULE} -Repository ${TEMPREPO} && \ + pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Untrusted # create AzureRmContextSettings.json before it was generated COPY ${CONFIG}/${AZURERM_CONTEXT_SETTINGS} ${AZURE}/${AZURERM_CONTEXT_SETTINGS} diff --git a/docker/Dockerfile-debian-9 b/docker/Dockerfile-debian-9 index 2ea18d7d84cd..cd551bd4b962 100644 --- a/docker/Dockerfile-debian-9 +++ b/docker/Dockerfile-debian-9 @@ -32,7 +32,8 @@ LABEL maintainer="Azure PowerShell Team " \ # install azure-powershell from PSGallery COPY ${ARTIFACT} ${ARTIFACTS} RUN pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Trusted && \ RUN pwsh -Command Register-PSRepository -Name ${TEMPREPO} -SourceLocation ${ARTIFACTS} -PublishLocation $ARTIFACTS -InstallationPolicy Trusted -PackageManagementProvider NuGet && \ pwsh -Command Install-Module -Name ${MODULE} -RequiredVersion ${VERSION} -Repository ${REPOSITORY} && \ - pwsh -Command Install-Module -Name ${MODULE} -Repository ${TEMPREPO} && \ pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Untrusted + pwsh -Command Install-Module -Name ${MODULE} -Repository ${TEMPREPO} && \ + pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Untrusted # create AzureRmContextSettings.json before it was generated COPY ${CONFIG}/${AZURERM_CONTEXT_SETTINGS} ${AZURE}/${AZURERM_CONTEXT_SETTINGS} diff --git a/docker/Dockerfile-ubuntu-18.04 b/docker/Dockerfile-ubuntu-18.04 index 48b794e32918..50719a35c7d9 100644 --- a/docker/Dockerfile-ubuntu-18.04 +++ b/docker/Dockerfile-ubuntu-18.04 @@ -32,7 +32,8 @@ LABEL maintainer="Azure PowerShell Team " \ # install azure-powershell from PSGallery COPY ${ARTIFACT} ${ARTIFACTS} RUN pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Trusted && \ RUN pwsh -Command Register-PSRepository -Name ${TEMPREPO} -SourceLocation ${ARTIFACTS} -PublishLocation $ARTIFACTS -InstallationPolicy Trusted -PackageManagementProvider NuGet && \ pwsh -Command Install-Module -Name ${MODULE} -RequiredVersion ${VERSION} -Repository ${REPOSITORY} && \ - pwsh -Command Install-Module -Name ${MODULE} -Repository ${TEMPREPO} && \ pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Untrusted + pwsh -Command Install-Module -Name ${MODULE} -Repository ${TEMPREPO} && \ + pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Untrusted # create AzureRmContextSettings.json before it was generated COPY ${CONFIG}/${AZURERM_CONTEXT_SETTINGS} ${AZURE}/${AZURERM_CONTEXT_SETTINGS} From 62cca52f65ace5bafd0b966f2490730f5b852cbf Mon Sep 17 00:00:00 2001 From: dingmeng-xue Date: Tue, 12 May 2020 15:33:06 +0800 Subject: [PATCH 3/3] Fix dockerfile --- docker/Dockerfile-centos-7 | 5 ++--- docker/Dockerfile-debian-9 | 5 ++--- docker/Dockerfile-ubuntu-18.04 | 5 ++--- 3 files changed, 6 insertions(+), 9 deletions(-) diff --git a/docker/Dockerfile-centos-7 b/docker/Dockerfile-centos-7 index 1d3f975cbe3c..187e25d7ceb1 100644 --- a/docker/Dockerfile-centos-7 +++ b/docker/Dockerfile-centos-7 @@ -30,9 +30,8 @@ LABEL maintainer="Azure PowerShell Team " \ org.label-schema.docker.cmd.help="docker run --rm ${IMAGE_NAME} pwsh -c Get-Help" # install azure-powershell from PSGallery -COPY ${ARTIFACT} ${ARTIFACTS} RUN pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Trusted && \ -RUN pwsh -Command Register-PSRepository -Name ${TEMPREPO} -SourceLocation ${ARTIFACTS} -PublishLocation $ARTIFACTS -InstallationPolicy Trusted -PackageManagementProvider NuGet && \ pwsh -Command Install-Module -Name ${MODULE} -RequiredVersion ${VERSION} -Repository ${REPOSITORY} && \ - pwsh -Command Install-Module -Name ${MODULE} -Repository ${TEMPREPO} && \ +RUN pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Trusted && \ + pwsh -Command Install-Module -Name ${MODULE} -RequiredVersion ${VERSION} -Repository ${REPOSITORY} && \ pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Untrusted # create AzureRmContextSettings.json before it was generated diff --git a/docker/Dockerfile-debian-9 b/docker/Dockerfile-debian-9 index cd551bd4b962..e3b2081a55a6 100644 --- a/docker/Dockerfile-debian-9 +++ b/docker/Dockerfile-debian-9 @@ -30,9 +30,8 @@ LABEL maintainer="Azure PowerShell Team " \ org.label-schema.docker.cmd.help="docker run --rm ${IMAGE_NAME} pwsh -c Get-Help" # install azure-powershell from PSGallery -COPY ${ARTIFACT} ${ARTIFACTS} RUN pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Trusted && \ -RUN pwsh -Command Register-PSRepository -Name ${TEMPREPO} -SourceLocation ${ARTIFACTS} -PublishLocation $ARTIFACTS -InstallationPolicy Trusted -PackageManagementProvider NuGet && \ pwsh -Command Install-Module -Name ${MODULE} -RequiredVersion ${VERSION} -Repository ${REPOSITORY} && \ - pwsh -Command Install-Module -Name ${MODULE} -Repository ${TEMPREPO} && \ +RUN pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Trusted && \ + pwsh -Command Install-Module -Name ${MODULE} -RequiredVersion ${VERSION} -Repository ${REPOSITORY} && \ pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Untrusted # create AzureRmContextSettings.json before it was generated diff --git a/docker/Dockerfile-ubuntu-18.04 b/docker/Dockerfile-ubuntu-18.04 index 50719a35c7d9..4689e8f88c02 100644 --- a/docker/Dockerfile-ubuntu-18.04 +++ b/docker/Dockerfile-ubuntu-18.04 @@ -30,9 +30,8 @@ LABEL maintainer="Azure PowerShell Team " \ org.label-schema.docker.cmd.help="docker run --rm ${IMAGE_NAME} pwsh -c Get-Help" # install azure-powershell from PSGallery -COPY ${ARTIFACT} ${ARTIFACTS} RUN pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Trusted && \ -RUN pwsh -Command Register-PSRepository -Name ${TEMPREPO} -SourceLocation ${ARTIFACTS} -PublishLocation $ARTIFACTS -InstallationPolicy Trusted -PackageManagementProvider NuGet && \ pwsh -Command Install-Module -Name ${MODULE} -RequiredVersion ${VERSION} -Repository ${REPOSITORY} && \ - pwsh -Command Install-Module -Name ${MODULE} -Repository ${TEMPREPO} && \ +RUN pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Trusted && \ + pwsh -Command Install-Module -Name ${MODULE} -RequiredVersion ${VERSION} -Repository ${REPOSITORY} && \ pwsh -Command Set-PSRepository -Name ${REPOSITORY} -InstallationPolicy Untrusted # create AzureRmContextSettings.json before it was generated