diff --git a/.azure/pipelines/jobs/default-build.yml b/.azure/pipelines/jobs/default-build.yml index 4ad136dcc9..dddaf7e51d 100644 --- a/.azure/pipelines/jobs/default-build.yml +++ b/.azure/pipelines/jobs/default-build.yml @@ -73,11 +73,17 @@ jobs: ${{ if ne(parameters.poolName, '') }}: name: ${{ parameters.poolName }} ${{ if and(eq(parameters.poolName, ''), eq(parameters.agentOs, 'macOS')) }}: - name: Hosted macOS + ${{ if eq(variables['System.TeamProject'], 'internal') }}: + name: Hosted Mac Internal + ${{ if ne(variables['System.TeamProject'], 'internal') }}: + name: Hosted macOS vmImage: macOS-10.13 ${{ if and(eq(parameters.poolName, ''), eq(parameters.agentOs, 'Linux')) }}: - name: Hosted Ubuntu 1604 - vmImage: ubuntu-16.04 + ${{ if eq(variables['System.TeamProject'], 'internal') }}: + name: dnceng-linux-internal-temp + ${{ if ne(variables['System.TeamProject'], 'internal') }}: + name: dnceng-linux-external-temp + vmImage: Linux_Ubuntu_16.04 ${{ if and(eq(parameters.poolName, ''), eq(parameters.agentOs, 'Windows')) }}: ${{ if eq(variables['System.TeamProject'], 'internal') }}: name: dotnet-internal-temp @@ -93,6 +99,8 @@ jobs: BuildDirectory: ${{ parameters.buildDirectory }} ${{ if eq(parameters.agentOs, 'Windows') }}: JAVA_HOME: $(Agent.BuildDirectory)\.tools\jdk + ${{ if eq(parameters.agentOs, 'Linux') }}: + JAVA_HOME: $(Agent.BuildDirectory)/.tools/jdk ${{ if or(ne(parameters.codeSign, 'true'), ne(variables['System.TeamProject'], 'internal')) }}: _SignType: ${{ if and(eq(parameters.codeSign, 'true'), eq(variables['System.TeamProject'], 'internal')) }}: @@ -109,6 +117,16 @@ jobs: - ${{ if eq(parameters.agentOs, 'Windows') }}: - powershell: ./eng/scripts/InstallJdk.ps1 '11.0.1' displayName: Install JDK 11 + - ${{ if eq(parameters.agentOs, 'Linux') }}: + - script: ./eng/scripts/InstallJdk.sh '10.0.2' + displayName: Install JDK 10 + - script: | + sudo apt-get update + sudo apt-get install -y libasound2 libatk-bridge2.0-0 libatk1.0-0 libatspi2.0-0 libcairo2 \ + libgdk-pixbuf2.0-0 libgtk-3-0 libnspr4 libnss3 libpango-1.0-0 libpangocairo-1.0-0 libx11-6 \ + libx11-xcb1 libxcomposite1 libxcursor1 libxdamage1 libxfixes3 libxrandr2 libxrender1 libxss1 libxtst6 + + displayName: Install additional packages - ${{ if and(eq(variables['System.TeamProject'], 'internal'), eq(parameters.agentOs, 'Windows'), eq(parameters.codeSign, 'true')) }}: - task: MicroBuildSigningPlugin@1 displayName: Install MicroBuild Signing plugin diff --git a/eng/scripts/InstallJdk.sh b/eng/scripts/InstallJdk.sh new file mode 100755 index 0000000000..1cb7e0ff4d --- /dev/null +++ b/eng/scripts/InstallJdk.sh @@ -0,0 +1,53 @@ +#!/usr/bin/env bash + +set -eo pipefail + +RED="\033[0;31m" +RESET="\033[0m" + +if [ -z "$1" ]; then + echo -e "${RED}The JDK version command-line parameter is required.${RESET}" + exit 1 +fi + +if [ -z "$JAVA_HOME" ]; then + echo -e "${RED}The JAVA_HOME environment variable must be set before using this command.${RESET}" + exit 2 +fi + +failed=false +repoRoot="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )/../.." +tempDir="$repoRoot/obj" + +jdkVersion="$1" +zipName="jdk-${jdkVersion}_linux-x64_bin.tar.gz" + +echo "Starting download of JDK $jdkVersion." +mkdir -p "$tempDir" +cd "$tempDir" +rm --force "$zipName" +curl --fail --location --remote-name --retry 10 --show-error --silent \ + "https://netcorenativeassets.blob.core.windows.net/resource-packages/external/linux/java/$zipName" || \ + failed=true + +if [ "$failed" = true ]; then + echo -e "${RED}JDK $jdkVersion download failed.${RESET}" + exit 3 +fi + +echo "Starting expansion of JDK $jdkVersion to $tempDir." +rm --force --recursive "jdk-${jdkVersion}" +tar --extract --file="$zipName" --gunzip || \ + failed=true + +if [ "$failed" = true ]; then + echo -e "${RED}JDK $jdkVersion expansion failed.${RESET}" + exit 4 +fi + +echo "Installing JDK to $JAVA_HOME" +rm --force --recursive "$JAVA_HOME" +mkdir -p "$JAVA_HOME/.." +mv --force --no-target-directory "jdk-${jdkVersion}" "$JAVA_HOME" + +echo "Done installing JDK $jdkVersion to $JAVA_HOME" diff --git a/src/Templating/test/Templates.Test/MvcTemplateTest.cs b/src/Templating/test/Templates.Test/MvcTemplateTest.cs index bc0d608f9a..9539d2de79 100644 --- a/src/Templating/test/Templates.Test/MvcTemplateTest.cs +++ b/src/Templating/test/Templates.Test/MvcTemplateTest.cs @@ -111,6 +111,7 @@ namespace Templates.Test { Assert.Contains(".db", projectFileContents); } + Assert.DoesNotContain("Microsoft.VisualStudio.Web.CodeGeneration.Design", projectFileContents); if (targetFrameworkOverride != null) { diff --git a/src/Templating/test/Templates.Test/RazorPagesTemplateTest.cs b/src/Templating/test/Templates.Test/RazorPagesTemplateTest.cs index d5e985afde..c9533efc62 100644 --- a/src/Templating/test/Templates.Test/RazorPagesTemplateTest.cs +++ b/src/Templating/test/Templates.Test/RazorPagesTemplateTest.cs @@ -91,6 +91,7 @@ namespace Templates.Test { Assert.Contains(".db", projectFileContents); } + Assert.DoesNotContain("Microsoft.VisualStudio.Web.CodeGeneration.Design", projectFileContents); if (targetFrameworkOverride != null) {