diff --git a/.vsts-ci/releasebuild.yml b/.vsts-ci/releasebuild.yml index c0ce8bd1e..26140e58c 100644 --- a/.vsts-ci/releasebuild.yml +++ b/.vsts-ci/releasebuild.yml @@ -4,7 +4,7 @@ parameters: - name: 'previewReleaseTag' default: 'v7.4.0-rc.1' - name: 'ltsReleaseTag' - default: 'v7.2.17' + default: 'v7.4.0' - name: 'stableReleaseTag' default: 'v7.4.0' diff --git a/assets/matrix.json b/assets/matrix.json index 915f6e924..9f11e2076 100644 --- a/assets/matrix.json +++ b/assets/matrix.json @@ -10,7 +10,7 @@ "IsLinux": true, "JobName": "alpine316", "OsVersion": "Alpine 3.16 (In Validation)", - "TagList": "lts-7.2-alpine-3.16;lts-alpine-3.16", + "TagList": "lts-7.4-alpine-3.16;lts-alpine-3.16", "UseInCI": false }, { @@ -23,7 +23,7 @@ "IsLinux": true, "JobName": "mariner2", "OsVersion": "Mariner 2.0 (End of Life)", - "TagList": "lts-7.2-mariner-2.0;lts-mariner-2.0", + "TagList": "lts-7.4-mariner-2.0;lts-mariner-2.0", "UseInCI": true }, { @@ -62,7 +62,7 @@ "IsLinux": true, "JobName": "alpine317", "OsVersion": "Alpine 3.17 (In Validation)", - "TagList": "lts-7.2-alpine-3.17;lts-alpine-3.17", + "TagList": "lts-7.4-alpine-3.17;lts-alpine-3.17", "UseInCI": false }, { diff --git a/release/7-2/alpine316/docker/Dockerfile b/release/7-2/alpine316/docker/Dockerfile deleted file mode 100644 index f5c397801..000000000 --- a/release/7-2/alpine316/docker/Dockerfile +++ /dev/null @@ -1,92 +0,0 @@ -# Copyright (c) Microsoft Corporation. -# Licensed under the MIT License. - -# Docker image file that describes an Alpine image with PowerShell installed from .tar.gz file(s) -ARG hostRegistry=psdockercache.azurecr.io -FROM ${hostRegistry}/alpine:3.16 AS installer-env - -# Define Args for the needed to add the package -ARG PS_VERSION=7.3.0-preview.8 -ARG PS_PACKAGE=powershell-${PS_VERSION}-linux-alpine-x64.tar.gz -ARG PS_PACKAGE_URL=https://github.com/PowerShell/PowerShell/releases/download/v${PS_VERSION}/${PS_PACKAGE} -ARG PS_INSTALL_VERSION=7-preview - -# Download the Linux tar.gz and save it -ADD ${PS_PACKAGE_URL} /tmp/linux.tar.gz - -# define the folder we will be installing PowerShell to -ENV PS_INSTALL_FOLDER=/opt/microsoft/powershell/$PS_INSTALL_VERSION - -# Create the install folder -RUN mkdir -p ${PS_INSTALL_FOLDER} - -# Unzip the Linux tar.gz -RUN tar zxf /tmp/linux.tar.gz -C ${PS_INSTALL_FOLDER} -v - -# Start a new stage so we lose all the tar.gz layers from the final image -ARG hostRegistry=psdockercache.azurecr.io -FROM ${hostRegistry}/alpine:3.16 - -# Copy only the files we need from the previous stage -COPY --from=installer-env ["/opt/microsoft/powershell", "/opt/microsoft/powershell"] - -# Define Args and Env needed to create links -ARG PS_INSTALL_VERSION=7-preview -ENV PS_INSTALL_FOLDER=/opt/microsoft/powershell/$PS_INSTALL_VERSION \ - \ - # Define ENVs for Localization/Globalization - DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=false \ - LC_ALL=en_US.UTF-8 \ - LANG=en_US.UTF-8 \ - # set a fixed location for the Module analysis cache - PSModuleAnalysisCachePath=/var/cache/microsoft/powershell/PSModuleAnalysisCache/ModuleAnalysisCache \ - POWERSHELL_DISTRIBUTION_CHANNEL=PSDocker-Alpine-3.16 - -# Install dotnet dependencies and ca-certificates -RUN apk add --no-cache \ - ca-certificates \ - less \ - \ - # PSReadline/console dependencies - ncurses-terminfo-base \ - \ - # .NET Core dependencies - krb5-libs \ - libgcc \ - libintl \ - libssl1.1 \ - libstdc++ \ - tzdata \ - userspace-rcu \ - zlib \ - icu-libs \ - && apk -X https://dl-cdn.alpinelinux.org/alpine/edge/main add --no-cache \ - lttng-ust \ - \ - # PowerShell remoting over SSH dependencies - openssh-client \ - \ - && apk update \ - && apk upgrade \ - # Create the pwsh symbolic link that points to powershell - && ln -s ${PS_INSTALL_FOLDER}/pwsh /usr/bin/pwsh \ - \ - # Create the pwsh-preview symbolic link that points to powershell - && ln -s ${PS_INSTALL_FOLDER}/pwsh /usr/bin/pwsh-preview \ - # Give all user execute permissions and remove write permissions for others - && chmod a+x,o-w ${PS_INSTALL_FOLDER}/pwsh \ - # intialize powershell module cache - # and disable telemetry - && export POWERSHELL_TELEMETRY_OPTOUT=1 \ - && pwsh \ - -NoLogo \ - -NoProfile \ - -Command " \ - \$ErrorActionPreference = 'Stop' ; \ - \$ProgressPreference = 'SilentlyContinue' ; \ - while(!(Test-Path -Path \$env:PSModuleAnalysisCachePath)) { \ - Write-Host "'Waiting for $env:PSModuleAnalysisCachePath'" ; \ - Start-Sleep -Seconds 6 ; \ - }" - -CMD [ "pwsh" ] diff --git a/release/7-2/alpine316/meta.json b/release/7-2/alpine316/meta.json deleted file mode 100644 index d1335ae9e..000000000 --- a/release/7-2/alpine316/meta.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "IsLinux" : true, - "UseLinuxVersion": false, - "PackageFormat": "powershell-${PS_VERSION}-linux-alpine-x64.tar.gz", - "osVersion": "Alpine 3.16", - "shortDistroName": "alpine", - "shortTags": [ - {"Tag": "3.16"} - ], - "SkipGssNtlmSspTests": true, - "SubImage": "test-deps", - "TestProperties": { - "size": 252 - }, - "EndOfLife": "2023-11-01", - "DistributionState": "Validating", - "UseInCi": false -} diff --git a/release/7-2/alpine316/test-deps/docker/Dockerfile b/release/7-2/alpine316/test-deps/docker/Dockerfile deleted file mode 100644 index c7585fba2..000000000 --- a/release/7-2/alpine316/test-deps/docker/Dockerfile +++ /dev/null @@ -1,35 +0,0 @@ -# Docker image file that describes an Alpine image with PowerShell and test dependencies - -ARG BaseImage=mcr.microsoft.com/powershell:alpine-3.16 - -FROM ${BaseImage} - -ENV NODE_VERSION=14.17.6 \ - YARN_VERSION=1.22.5 \ - NVM_DIR="/root/.nvm" \ - POWERSHELL_DISTRIBUTION_CHANNEL=PSDocker-TestDeps-Alpine-3.16 - -# workaround for Alpine to run in Azure DevOps -ENV NODE_NO_WARNINGS=1 - -RUN apk add --no-cache --virtual .pipeline-deps readline linux-pam \ - && apk add --no-cache \ - bash \ - sudo \ - shadow \ - openssl \ - curl \ - git \ - unzip \ - nodejs \ - && apk update \ - && apk upgrade \ - && apk del .pipeline-deps \ - && ln -s /opt/yarn-v$YARN_VERSION/bin/yarn /usr/local/bin/yarn \ - && ln -s /opt/yarn-v$YARN_VERSION/bin/yarnpkg /usr/local/bin/yarnpkg - -LABEL com.azure.dev.pipelines.agent.handler.node.path="/usr/local/bin/node" - -# Use PowerShell as the default shell -# Use array to avoid Docker prepending /bin/sh -c -CMD [ "pwsh" ] diff --git a/release/7-2/alpine316/test-deps/meta.json b/release/7-2/alpine316/test-deps/meta.json deleted file mode 100644 index a8daf5955..000000000 --- a/release/7-2/alpine316/test-deps/meta.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "IsLinux" : true, - "UseLinuxVersion": false, - "SkipGssNtlmSspTests": true, - "osVersion": "Alpine 3.16", - "tagTemplates": [ - "alpine-#shorttag#" - ], - "OptionalTests": [ - "test-deps", - "test-deps-musl" - ], - "TestProperties": { - "size": 335 - } -} diff --git a/tests/testArgs.json b/tests/testArgs.json new file mode 100644 index 000000000..d8ea8097b --- /dev/null +++ b/tests/testArgs.json @@ -0,0 +1,62 @@ +[ + { + "Tags": [ + "ps.local/public/powershell:7.2-ubuntu-bionic", + "ps.local/public/powershell:7.2-ubuntu-18.04", + "ps.local/public/powershell:ubuntu-bionic", + "ps.local/public/powershell:ubuntu-18.04" + ], + "BuildArgs": { + "fromTag": "notUsed", + "PS_VERSION": "7.4.0", + "PACKAGE_VERSION": "7.4.0", + "IMAGE_NAME": "mcr.microsoft.com/public/powershell:7.4-ubuntu-bionic", + "BaseImage": "", + "PS_INSTALL_VERSION": "7", + "PS_PACKAGE_URL": "https://github.com:443/PowerShell/PowerShell/releases/download/v7.4.2/powershell_7.4.0.deb_amd64.deb" + }, + "ContextPath": "C:\\Users\\annavied\\Documents\\PowerShell-Docker\\release\\7-4\\ubuntu18.04\\docker", + "OS": "linux", + "ExpectedVersion": "7.4.0", + "SkipVerification": false, + "SkipWebCmdletTests": false, + "SkipGssNtlmSspTests": false, + "BaseImage": "", + "OptionalTests": null, + "TestProperties": { + "size": 355 + }, + "Channel": "stable", + "UseAcr": false + }, + { + "Tags": [ + "ps.local/public/powershell/test-deps:ubuntu-bionic", + "ps.local/public/powershell/test-deps:ubuntu-18.04" + ], + "BuildArgs": { + "fromTag": "notUsed", + "PS_VERSION": "7.4.0", + "PACKAGE_VERSION": "7.4.0", + "IMAGE_NAME": "mcr.microsoft.com/public/powershell/test-deps:ubuntu-bionic", + "BaseImage": "ps.local/public/powershell:7.4-ubuntu-bionic", + "PS_INSTALL_VERSION": "7" + }, + "ContextPath": "C:\\Users\\annavied\\Documents\\PowerShell-Docker\\release\\7-2\\ubuntu18.04\\test-deps\\docker", + "OS": "linux", + "ExpectedVersion": "7.4.0", + "SkipVerification": false, + "SkipWebCmdletTests": false, + "SkipGssNtlmSspTests": false, + "BaseImage": "ps.local/public/powershell:7.4-ubuntu-bionic", + "OptionalTests": [ + "test-deps", + "test-deps-debian" + ], + "TestProperties": { + "size": 380 + }, + "Channel": "stable", + "UseAcr": false + } +] diff --git a/tools/buildHelper/channels.json b/tools/buildHelper/channels.json index 12a3997b8..465f7649a 100644 --- a/tools/buildHelper/channels.json +++ b/tools/buildHelper/channels.json @@ -14,7 +14,7 @@ }, { "name": "lts", - "path": "release/7-2", + "path": "release/7-4", "tagPrefix": "lts", "pwshInstallVersion": "7-lts", "packageTag": "-lts"