From f9b89066c7ac76969f370a7654eb054cd25e14fd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Moreno?= Date: Sat, 12 Dec 2020 14:23:11 +0100 Subject: [PATCH] remove dependencies stage --- build/azure-pipelines/product-build.yml | 13 --- build/azure-pipelines/product-compile.yml | 21 ++++- .../azure-pipelines/product-dependencies.yml | 92 ------------------- build/azure-pipelines/product-hygiene.yml | 14 ++- 4 files changed, 27 insertions(+), 113 deletions(-) delete mode 100644 build/azure-pipelines/product-dependencies.yml diff --git a/build/azure-pipelines/product-build.yml b/build/azure-pipelines/product-build.yml index 962bde3aa97..0863ae0d6fc 100644 --- a/build/azure-pipelines/product-build.yml +++ b/build/azure-pipelines/product-build.yml @@ -24,20 +24,7 @@ resources: image: snapcore/snapcraft:stable stages: - - stage: Dependencies - jobs: - - job: Dependencies - pool: - vmImage: "Ubuntu-18.04" - container: vscode-x64 - variables: - VSCODE_ARCH: x64 - steps: - - template: product-dependencies.yml - - stage: Compile - dependsOn: - - Dependencies jobs: - job: Compile pool: diff --git a/build/azure-pipelines/product-compile.yml b/build/azure-pipelines/product-compile.yml index 916e5cef3ce..fb67aecafb4 100644 --- a/build/azure-pipelines/product-compile.yml +++ b/build/azure-pipelines/product-compile.yml @@ -70,12 +70,25 @@ steps: vstsFeed: "npm-vscode" condition: and(succeeded(), ne(variables['CacheExists-Compilation'], 'true')) - # TODO@Joao: remove - script: | set -e - echo "Restore cache should not have failed" - exit 1 - displayName: Check cache restore + export CHILD_CONCURRENCY="1" + for i in {1..3}; do # try 3 times, for Terrapin + yarn --frozen-lockfile && break + if [ $i -eq 3 ]; then + echo "Yarn failed too many times" >&2 + exit 1 + fi + echo "Yarn failed $i, trying again..." + done + displayName: Install dependencies + condition: and(succeeded(), ne(variables['CacheExists-Compilation'], 'true'), ne(variables['CacheRestored'], 'true')) + + - task: 1ESLighthouseEng.PipelineArtifactCaching.SaveCacheV1.SaveCache@1 + inputs: + keyfile: ".build/arch, .build/terrapin, build/.cachesalt, .yarnrc, remote/.yarnrc, **/yarn.lock, !**/node_modules/**/yarn.lock, !**/.*/**/yarn.lock" + targetfolder: "**/node_modules, !**/node_modules/**/node_modules" + vstsFeed: "npm-vscode" condition: and(succeeded(), ne(variables['CacheExists-Compilation'], 'true'), ne(variables['CacheRestored'], 'true')) - script: | diff --git a/build/azure-pipelines/product-dependencies.yml b/build/azure-pipelines/product-dependencies.yml deleted file mode 100644 index 01eb347cae5..00000000000 --- a/build/azure-pipelines/product-dependencies.yml +++ /dev/null @@ -1,92 +0,0 @@ -steps: - - script: | - mkdir -p .build - echo -n $BUILD_SOURCEVERSION > .build/commit - echo -n $VSCODE_QUALITY > .build/quality - echo -n $ENABLE_TERRAPIN > .build/terrapin - displayName: Prepare compilation cache flag - - - task: 1ESLighthouseEng.PipelineArtifactCaching.RestoreCacheV1.RestoreCache@1 - inputs: - keyfile: "build/.cachesalt, .build/commit, .build/quality, .build/terrapin" - targetfolder: ".build, out-build, out-vscode-min, out-vscode-reh-min, out-vscode-reh-web-min" - vstsFeed: "npm-vscode" - platformIndependent: true - alias: "Compilation" - dryRun: true - - - task: NodeTool@0 - inputs: - versionSpec: "12.18.3" - condition: and(succeeded(), ne(variables['CacheExists-Compilation'], 'true')) - - - task: geeklearningio.gl-vsts-tasks-yarn.yarn-installer-task.YarnInstaller@2 - inputs: - versionSpec: "1.x" - condition: and(succeeded(), ne(variables['CacheExists-Compilation'], 'true')) - - - task: AzureKeyVault@1 - displayName: "Azure Key Vault: Get Secrets" - inputs: - azureSubscription: "vscode-builds-subscription" - KeyVaultName: vscode - condition: and(succeeded(), ne(variables['CacheExists-Compilation'], 'true')) - - - script: | - set -e - cat << EOF > ~/.netrc - machine github.com - login vscode - password $(github-distro-mixin-password) - EOF - - git config user.email "vscode@microsoft.com" - git config user.name "VSCode" - displayName: Prepare tooling - condition: and(succeeded(), ne(variables['CacheExists-Compilation'], 'true')) - - - script: | - set -e - git remote add distro "https://github.com/$(VSCODE_MIXIN_REPO).git" - git fetch distro - git merge $(node -p "require('./package.json').distro") - displayName: Merge distro - condition: and(succeeded(), ne(variables['CacheExists-Compilation'], 'true')) - - - script: | - npx https://aka.ms/enablesecurefeed standAlone - displayName: Switch to Terrapin packages - timeoutInMinutes: 5 - condition: and(succeeded(), ne(variables['CacheExists-Compilation'], 'true'), eq(variables['ENABLE_TERRAPIN'], 'true')) - - - script: | - echo -n $(VSCODE_ARCH) > .build/arch - displayName: Prepare yarn cache flags - - - task: 1ESLighthouseEng.PipelineArtifactCaching.RestoreCacheV1.RestoreCache@1 - inputs: - keyfile: ".build/arch, .build/terrapin, build/.cachesalt, .yarnrc, remote/.yarnrc, **/yarn.lock, !**/node_modules/**/yarn.lock, !**/.*/**/yarn.lock" - targetfolder: "**/node_modules, !**/node_modules/**/node_modules" - vstsFeed: "npm-vscode" - condition: and(succeeded(), ne(variables['CacheExists-Compilation'], 'true')) - - - script: | - set -e - export CHILD_CONCURRENCY="1" - for i in {1..3}; do # try 3 times, for Terrapin - yarn --frozen-lockfile && break - if [ $i -eq 3 ]; then - echo "Yarn failed too many times" >&2 - exit 1 - fi - echo "Yarn failed $i, trying again..." - done - displayName: Install dependencies - condition: and(succeeded(), ne(variables['CacheExists-Compilation'], 'true'), ne(variables['CacheRestored'], 'true')) - - - task: 1ESLighthouseEng.PipelineArtifactCaching.SaveCacheV1.SaveCache@1 - inputs: - keyfile: ".build/arch, .build/terrapin, build/.cachesalt, .yarnrc, remote/.yarnrc, **/yarn.lock, !**/node_modules/**/yarn.lock, !**/.*/**/yarn.lock" - targetfolder: "**/node_modules, !**/node_modules/**/node_modules" - vstsFeed: "npm-vscode" - condition: and(succeeded(), ne(variables['CacheExists-Compilation'], 'true'), ne(variables['CacheRestored'], 'true')) diff --git a/build/azure-pipelines/product-hygiene.yml b/build/azure-pipelines/product-hygiene.yml index aa9e3642f5e..1c971c7404c 100644 --- a/build/azure-pipelines/product-hygiene.yml +++ b/build/azure-pipelines/product-hygiene.yml @@ -47,12 +47,18 @@ steps: targetfolder: "**/node_modules, !**/node_modules/**/node_modules" vstsFeed: "npm-vscode" - # TODO@Joao: remove - script: | set -e - echo "Restore cache should not have failed" - exit 1 - displayName: Check cache restore + export CHILD_CONCURRENCY="1" + for i in {1..3}; do # try 3 times, for Terrapin + yarn --frozen-lockfile && break + if [ $i -eq 3 ]; then + echo "Yarn failed too many times" >&2 + exit 1 + fi + echo "Yarn failed $i, trying again..." + done + displayName: Install dependencies condition: and(succeeded(), ne(variables['CacheRestored'], 'true')) - script: |