From 9466ae775e8c2556138652437599530b1cf77e22 Mon Sep 17 00:00:00 2001 From: Adam Ward Date: Mon, 9 Dec 2024 13:33:28 -0500 Subject: [PATCH 01/10] Setup a nightly build job * Renaming workflow file to "test.yml" so we can share the setup, using the event_name to decide if full test matrix should be run or not * Run insiders nightly Issue: #934 --- .github/workflows/pull_request.yml | 48 ------------------ .github/workflows/tests.yml | 79 ++++++++++++++++++++++++++++++ 2 files changed, 79 insertions(+), 48 deletions(-) delete mode 100644 .github/workflows/pull_request.yml create mode 100644 .github/workflows/tests.yml diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml deleted file mode 100644 index 796ab2521..000000000 --- a/.github/workflows/pull_request.yml +++ /dev/null @@ -1,48 +0,0 @@ -name: Pull request - -on: - pull_request: - types: [opened, reopened, synchronize] - -jobs: - tests: - name: Test - uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@main - with: - # Linux - linux_exclude_swift_versions: '[{"swift_version": "nightly-main"}]' - linux_env_vars: | - NODE_VERSION=v18.19.0 - NODE_PATH=/usr/local/nvm/versions/node/v18.19.0/bin - NVM_DIR=/usr/local/nvm - CI=1 - FAST_TEST_RUN=1 - linux_pre_build_command: | - apt-get update && apt-get install -y rsync curl gpg libasound2 libgbm1 libgtk-3-0 libnss3 xvfb build-essential - mkdir -p $NVM_DIR - curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash - /bin/bash -c "source $NVM_DIR/nvm.sh && nvm install $NODE_VERSION" - echo "$NODE_PATH" >> $GITHUB_PATH - linux_build_command: ./docker/test.sh - # Windows - windows_exclude_swift_versions: '[{"swift_version": "nightly"}]' - windows_env_vars: | - CI=1 - VSCODE_TEST=1 - FAST_TEST_RUN=1 - windows_pre_build_command: .github\workflows\scripts\windows\install-nodejs.ps1 - windows_build_command: docker\test-windows.ps1 - enable_windows_docker: false - - soundness: - name: Soundness - uses: swiftlang/github-workflows/.github/workflows/soundness.yml@main - with: - # Pending https://github.com/swiftlang/vscode-swift/pull/1176 - license_header_check_enabled: false - license_header_check_project_name: "VS Code Swift" - api_breakage_check_enabled: false - docs_check_enabled: false - format_check_enabled: false - shell_check_enabled: true - unacceptable_language_check_enabled: true diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml new file mode 100644 index 000000000..169d5ebff --- /dev/null +++ b/.github/workflows/tests.yml @@ -0,0 +1,79 @@ +name: Pull request + +on: + pull_request: + types: [opened, reopened, synchronize] + schedule: + - cron: "0 0 * * *" + +env: + LINUX_ENV_VARS: | + NODE_VERSION=v18.19.0 + NODE_PATH=/usr/local/nvm/versions/node/v18.19.0/bin + NVM_DIR=/usr/local/nvm + CI=1 + VSCODE_TEST=1 + FAST_TEST_RUN=${{ github.event_name == 'schedule' && '1' || '0' }} + LINUX_PRE_BUILD_COMMAND: | + apt-get update && apt-get install -y rsync curl gpg libasound2 libgbm1 libgtk-3-0 libnss3 xvfb build-essential + mkdir -p $NVM_DIR + curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash + /bin/bash -c "source $NVM_DIR/nvm.sh && nvm install $NODE_VERSION" + echo "$NODE_PATH" >> $GITHUB_PATH + WINDOWS_ENV_VARS: | + CI=1 + VSCODE_TEST=1 + FAST_TEST_RUN=${{ github.event_name == 'schedule' && '1' || '0' }} + WINDOWS_PRE_BUILD_COMMAND: | + .github\workflows\scripts\windows\install-nodejs.ps1 + +jobs: + tests: + name: Test + uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@main + with: + # Linux + linux_exclude_swift_versions: '[{"swift_version": "nightly-main"}]' + linux_env_vars: $LINUX_ENV_VARS + linux_pre_build_command: $LINUX_PRE_BUILD_COMMAND + linux_build_command: ./docker/test.sh + # Windows + windows_exclude_swift_versions: '[{"swift_version": "nightly"}]' + windows_env_vars: $WINDOWS_ENV_VARS + windows_pre_build_command: $WINDOWS_PRE_BUILD_COMMAND + windows_build_command: docker\test-windows.ps1 + enable_windows_docker: false + + tests_insiders: + name: Test Insiders + uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@main + # if: github.event.schedule + with: + # Linux + linux_exclude_swift_versions: '[{"swift_version": "nightly-main"}]' + linux_env_vars: | + $LINUX_ENV_VARS + VSCODE_VERSION='insiders' + linux_pre_build_command: $LINUX_PRE_BUILD_COMMAND + linux_build_command: ./docker/test.sh + # Windows + windows_exclude_swift_versions: '[{"swift_version": "nightly"}]' + windows_env_vars: | + $WINDOWS_ENV_VARS + VSCODE_VERSION='insiders' + windows_pre_build_command: $WINDOWS_PRE_BUILD_COMMAND + windows_build_command: docker\test-windows.ps1 + enable_windows_docker: false + + soundness: + name: Soundness + uses: swiftlang/github-workflows/.github/workflows/soundness.yml@main + with: + # Pending https://github.com/swiftlang/vscode-swift/pull/1176 + license_header_check_enabled: false + license_header_check_project_name: "VS Code Swift" + api_breakage_check_enabled: false + docs_check_enabled: false + format_check_enabled: false + shell_check_enabled: true + unacceptable_language_check_enabled: true From 2f25d962ea6c7aa4435d558b986fe17572228dc5 Mon Sep 17 00:00:00 2001 From: Adam Ward Date: Mon, 9 Dec 2024 14:13:24 -0500 Subject: [PATCH 02/10] Eval for linux command --- .github/workflows/tests.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 169d5ebff..67f06a27b 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -35,7 +35,7 @@ jobs: # Linux linux_exclude_swift_versions: '[{"swift_version": "nightly-main"}]' linux_env_vars: $LINUX_ENV_VARS - linux_pre_build_command: $LINUX_PRE_BUILD_COMMAND + linux_pre_build_command: eval $LINUX_PRE_BUILD_COMMAND linux_build_command: ./docker/test.sh # Windows windows_exclude_swift_versions: '[{"swift_version": "nightly"}]' @@ -54,7 +54,7 @@ jobs: linux_env_vars: | $LINUX_ENV_VARS VSCODE_VERSION='insiders' - linux_pre_build_command: $LINUX_PRE_BUILD_COMMAND + linux_pre_build_command: eval $LINUX_PRE_BUILD_COMMAND linux_build_command: ./docker/test.sh # Windows windows_exclude_swift_versions: '[{"swift_version": "nightly"}]' From fc35b4ed3e16efd51aed94ad5004ef97507e0ea3 Mon Sep 17 00:00:00 2001 From: Adam Ward Date: Mon, 9 Dec 2024 14:28:59 -0500 Subject: [PATCH 03/10] Add linux setup to script --- .github/workflows/scripts/setup-linux.sh | 20 ++++++++++++++++++++ .github/workflows/tests.yml | 16 ++++------------ 2 files changed, 24 insertions(+), 12 deletions(-) create mode 100755 .github/workflows/scripts/setup-linux.sh diff --git a/.github/workflows/scripts/setup-linux.sh b/.github/workflows/scripts/setup-linux.sh new file mode 100755 index 000000000..84f3c2432 --- /dev/null +++ b/.github/workflows/scripts/setup-linux.sh @@ -0,0 +1,20 @@ +#!/bin/bash +##===----------------------------------------------------------------------===## +## +## This source file is part of the VS Code Swift open source project +## +## Copyright (c) 2024 the VS Code Swift project authors +## Licensed under Apache License v2.0 +## +## See LICENSE.txt for license information +## See CONTRIBUTORS.txt for the list of VS Code Swift project authors +## +## SPDX-License-Identifier: Apache-2.0 +## +##===----------------------------------------------------------------------===## + +apt-get update && apt-get install -y rsync curl gpg libasound2 libgbm1 libgtk-3-0 libnss3 xvfb build-essential +mkdir -p $NVM_DIR +curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash +/bin/bash -c "source $NVM_DIR/nvm.sh && nvm install $NODE_VERSION" +echo "$NODE_PATH" >> $GITHUB_PATH \ No newline at end of file diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 67f06a27b..743cd83ee 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -13,19 +13,11 @@ env: NVM_DIR=/usr/local/nvm CI=1 VSCODE_TEST=1 - FAST_TEST_RUN=${{ github.event_name == 'schedule' && '1' || '0' }} - LINUX_PRE_BUILD_COMMAND: | - apt-get update && apt-get install -y rsync curl gpg libasound2 libgbm1 libgtk-3-0 libnss3 xvfb build-essential - mkdir -p $NVM_DIR - curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash - /bin/bash -c "source $NVM_DIR/nvm.sh && nvm install $NODE_VERSION" - echo "$NODE_PATH" >> $GITHUB_PATH + FAST_TEST_RUN=${{ github.event_name == 'schedule' && '1' || '0' }} WINDOWS_ENV_VARS: | CI=1 VSCODE_TEST=1 FAST_TEST_RUN=${{ github.event_name == 'schedule' && '1' || '0' }} - WINDOWS_PRE_BUILD_COMMAND: | - .github\workflows\scripts\windows\install-nodejs.ps1 jobs: tests: @@ -35,12 +27,12 @@ jobs: # Linux linux_exclude_swift_versions: '[{"swift_version": "nightly-main"}]' linux_env_vars: $LINUX_ENV_VARS - linux_pre_build_command: eval $LINUX_PRE_BUILD_COMMAND + linux_pre_build_command: .github/workflows/scripts/setup-linux.sh linux_build_command: ./docker/test.sh # Windows windows_exclude_swift_versions: '[{"swift_version": "nightly"}]' windows_env_vars: $WINDOWS_ENV_VARS - windows_pre_build_command: $WINDOWS_PRE_BUILD_COMMAND + windows_pre_build_command: .github\workflows\scripts\windows\install-nodejs.ps1 windows_build_command: docker\test-windows.ps1 enable_windows_docker: false @@ -61,7 +53,7 @@ jobs: windows_env_vars: | $WINDOWS_ENV_VARS VSCODE_VERSION='insiders' - windows_pre_build_command: $WINDOWS_PRE_BUILD_COMMAND + windows_pre_build_command: .github\workflows\scripts\windows\install-nodejs.ps1 windows_build_command: docker\test-windows.ps1 enable_windows_docker: false From dd8db9362246411fb32f809ecbbd9395120bc274 Mon Sep 17 00:00:00 2001 From: Adam Ward Date: Mon, 9 Dec 2024 14:36:31 -0500 Subject: [PATCH 04/10] Move node/nvm env vars to setup script --- .github/workflows/scripts/setup-linux.sh | 4 ++++ .github/workflows/tests.yml | 7 ++----- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/.github/workflows/scripts/setup-linux.sh b/.github/workflows/scripts/setup-linux.sh index 84f3c2432..730615565 100755 --- a/.github/workflows/scripts/setup-linux.sh +++ b/.github/workflows/scripts/setup-linux.sh @@ -13,6 +13,10 @@ ## ##===----------------------------------------------------------------------===## +NODE_VERSION=v18.19.0 +NODE_PATH=/usr/local/nvm/versions/node/v18.19.0/bin +NVM_DIR=/usr/local/nvm + apt-get update && apt-get install -y rsync curl gpg libasound2 libgbm1 libgtk-3-0 libnss3 xvfb build-essential mkdir -p $NVM_DIR curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml index 743cd83ee..cf9b9f260 100644 --- a/.github/workflows/tests.yml +++ b/.github/workflows/tests.yml @@ -8,9 +8,6 @@ on: env: LINUX_ENV_VARS: | - NODE_VERSION=v18.19.0 - NODE_PATH=/usr/local/nvm/versions/node/v18.19.0/bin - NVM_DIR=/usr/local/nvm CI=1 VSCODE_TEST=1 FAST_TEST_RUN=${{ github.event_name == 'schedule' && '1' || '0' }} @@ -27,7 +24,7 @@ jobs: # Linux linux_exclude_swift_versions: '[{"swift_version": "nightly-main"}]' linux_env_vars: $LINUX_ENV_VARS - linux_pre_build_command: .github/workflows/scripts/setup-linux.sh + linux_pre_build_command: source .github/workflows/scripts/setup-linux.sh linux_build_command: ./docker/test.sh # Windows windows_exclude_swift_versions: '[{"swift_version": "nightly"}]' @@ -46,7 +43,7 @@ jobs: linux_env_vars: | $LINUX_ENV_VARS VSCODE_VERSION='insiders' - linux_pre_build_command: eval $LINUX_PRE_BUILD_COMMAND + linux_pre_build_command: source .github/workflows/scripts/setup-linux.sh linux_build_command: ./docker/test.sh # Windows windows_exclude_swift_versions: '[{"swift_version": "nightly"}]' From 4448f0095db6071a8a35b68a4ebebff2ebc4f505 Mon Sep 17 00:00:00 2001 From: Adam Ward Date: Mon, 9 Dec 2024 14:51:46 -0500 Subject: [PATCH 05/10] Split jobs into separate files Not easy to share across extended workflows and would show a bunch of skipped jobs in the PR so will have as separate files, sharing scripts --- .github/workflows/nightly.yml | 58 ++++++++++++++++++++ .github/workflows/pull_request.yml | 44 +++++++++++++++ .github/workflows/scripts/setup-linux.sh | 6 +-- .github/workflows/tests.yml | 68 ------------------------ 4 files changed, 105 insertions(+), 71 deletions(-) create mode 100644 .github/workflows/nightly.yml create mode 100644 .github/workflows/pull_request.yml delete mode 100644 .github/workflows/tests.yml diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml new file mode 100644 index 000000000..fade27dac --- /dev/null +++ b/.github/workflows/nightly.yml @@ -0,0 +1,58 @@ +name: Nightly + +on: + schedule: + - cron: "0 0 * * *" + +jobs: + tests_release: + name: Test Release + uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@main + with: + # Linux + linux_exclude_swift_versions: '[{"swift_version": "nightly-main"}]' + linux_env_vars: | + NODE_VERSION=v18.19.0 + NODE_PATH=/usr/local/nvm/versions/node/v18.19.0/bin + NVM_DIR=/usr/local/nvm + CI=1 + linux_pre_build_command: | + apt-get update && apt-get install -y rsync curl gpg libasound2 libgbm1 libgtk-3-0 libnss3 xvfb build-essential + mkdir -p $NVM_DIR + curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash + /bin/bash -c "source $NVM_DIR/nvm.sh && nvm install $NODE_VERSION" + echo "$NODE_PATH" >> $GITHUB_PATH + linux_build_command: ./docker/test.sh + # Windows + windows_exclude_swift_versions: '[{"swift_version": "nightly"}]' + windows_env_vars: | + CI=1 + VSCODE_TEST=1 + windows_pre_build_command: .github\workflows\scripts\windows\install-nodejs.ps1 + windows_build_command: docker\test-windows.ps1 + enable_windows_docker: false + + tests_insiders: + name: Test Insiders + uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@main + with: + # Linux + linux_exclude_swift_versions: '[{"swift_version": "nightly-main"}]' + linux_env_vars: | + NODE_VERSION=v18.19.0 + NODE_PATH=/usr/local/nvm/versions/node/v18.19.0/bin + NVM_DIR=/usr/local/nvm + CI=1 + VSCODE_TEST=1 + VSCODE_VERSION=insiders + linux_pre_build_command: . .github/workflows/scripts/setup-linux.sh + linux_build_command: ./docker/test.sh + # Windows + windows_exclude_swift_versions: '[{"swift_version": "nightly"}]' + windows_env_vars: | + CI=1 + VSCODE_TEST=1 + VSCODE_VERSION=insiders + windows_pre_build_command: .github\workflows\scripts\windows\install-nodejs.ps1 + windows_build_command: docker\test-windows.ps1 + enable_windows_docker: false \ No newline at end of file diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml new file mode 100644 index 000000000..cf82d517f --- /dev/null +++ b/.github/workflows/pull_request.yml @@ -0,0 +1,44 @@ +name: Pull request + +on: + pull_request: + types: [opened, reopened, synchronize] + +jobs: + tests: + name: Test + uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@main + with: + # Linux + linux_exclude_swift_versions: '[{"swift_version": "nightly-main"}]' + linux_env_vars: | + NODE_VERSION=v18.19.0 + NODE_PATH=/usr/local/nvm/versions/node/v18.19.0/bin + NVM_DIR=/usr/local/nvm + CI=1 + VSCODE_TEST=1 + FAST_TEST_RUN=1 + linux_pre_build_command: . .github/workflows/scripts/setup-linux.sh + linux_build_command: ./docker/test.sh + # Windows + windows_exclude_swift_versions: '[{"swift_version": "nightly"}]' + windows_env_vars: | + CI=1 + VSCODE_TEST=1 + FAST_TEST_RUN=1 + windows_pre_build_command: .github\workflows\scripts\windows\install-nodejs.ps1 + windows_build_command: docker\test-windows.ps1 + enable_windows_docker: false + + soundness: + name: Soundness + uses: swiftlang/github-workflows/.github/workflows/soundness.yml@main + with: + # Pending https://github.com/swiftlang/vscode-swift/pull/1176 + license_header_check_enabled: false + license_header_check_project_name: "VS Code Swift" + api_breakage_check_enabled: false + docs_check_enabled: false + format_check_enabled: false + shell_check_enabled: true + unacceptable_language_check_enabled: true diff --git a/.github/workflows/scripts/setup-linux.sh b/.github/workflows/scripts/setup-linux.sh index 730615565..f4aebf672 100755 --- a/.github/workflows/scripts/setup-linux.sh +++ b/.github/workflows/scripts/setup-linux.sh @@ -13,9 +13,9 @@ ## ##===----------------------------------------------------------------------===## -NODE_VERSION=v18.19.0 -NODE_PATH=/usr/local/nvm/versions/node/v18.19.0/bin -NVM_DIR=/usr/local/nvm +export NODE_VERSION=v18.19.0 +export NODE_PATH=/usr/local/nvm/versions/node/v18.19.0/bin +export NVM_DIR=/usr/local/nvm apt-get update && apt-get install -y rsync curl gpg libasound2 libgbm1 libgtk-3-0 libnss3 xvfb build-essential mkdir -p $NVM_DIR diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml deleted file mode 100644 index cf9b9f260..000000000 --- a/.github/workflows/tests.yml +++ /dev/null @@ -1,68 +0,0 @@ -name: Pull request - -on: - pull_request: - types: [opened, reopened, synchronize] - schedule: - - cron: "0 0 * * *" - -env: - LINUX_ENV_VARS: | - CI=1 - VSCODE_TEST=1 - FAST_TEST_RUN=${{ github.event_name == 'schedule' && '1' || '0' }} - WINDOWS_ENV_VARS: | - CI=1 - VSCODE_TEST=1 - FAST_TEST_RUN=${{ github.event_name == 'schedule' && '1' || '0' }} - -jobs: - tests: - name: Test - uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@main - with: - # Linux - linux_exclude_swift_versions: '[{"swift_version": "nightly-main"}]' - linux_env_vars: $LINUX_ENV_VARS - linux_pre_build_command: source .github/workflows/scripts/setup-linux.sh - linux_build_command: ./docker/test.sh - # Windows - windows_exclude_swift_versions: '[{"swift_version": "nightly"}]' - windows_env_vars: $WINDOWS_ENV_VARS - windows_pre_build_command: .github\workflows\scripts\windows\install-nodejs.ps1 - windows_build_command: docker\test-windows.ps1 - enable_windows_docker: false - - tests_insiders: - name: Test Insiders - uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@main - # if: github.event.schedule - with: - # Linux - linux_exclude_swift_versions: '[{"swift_version": "nightly-main"}]' - linux_env_vars: | - $LINUX_ENV_VARS - VSCODE_VERSION='insiders' - linux_pre_build_command: source .github/workflows/scripts/setup-linux.sh - linux_build_command: ./docker/test.sh - # Windows - windows_exclude_swift_versions: '[{"swift_version": "nightly"}]' - windows_env_vars: | - $WINDOWS_ENV_VARS - VSCODE_VERSION='insiders' - windows_pre_build_command: .github\workflows\scripts\windows\install-nodejs.ps1 - windows_build_command: docker\test-windows.ps1 - enable_windows_docker: false - - soundness: - name: Soundness - uses: swiftlang/github-workflows/.github/workflows/soundness.yml@main - with: - # Pending https://github.com/swiftlang/vscode-swift/pull/1176 - license_header_check_enabled: false - license_header_check_project_name: "VS Code Swift" - api_breakage_check_enabled: false - docs_check_enabled: false - format_check_enabled: false - shell_check_enabled: true - unacceptable_language_check_enabled: true From c5a49f065efe1357eff3a2a8d263d1dfab81eca9 Mon Sep 17 00:00:00 2001 From: Adam Ward Date: Mon, 9 Dec 2024 14:59:09 -0500 Subject: [PATCH 06/10] Fix soundness checks --- .github/workflows/nightly.yml | 4 ++-- .github/workflows/scripts/setup-linux.sh | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index fade27dac..a38495afa 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -31,7 +31,7 @@ jobs: windows_pre_build_command: .github\workflows\scripts\windows\install-nodejs.ps1 windows_build_command: docker\test-windows.ps1 enable_windows_docker: false - + tests_insiders: name: Test Insiders uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@main @@ -55,4 +55,4 @@ jobs: VSCODE_VERSION=insiders windows_pre_build_command: .github\workflows\scripts\windows\install-nodejs.ps1 windows_build_command: docker\test-windows.ps1 - enable_windows_docker: false \ No newline at end of file + enable_windows_docker: false diff --git a/.github/workflows/scripts/setup-linux.sh b/.github/workflows/scripts/setup-linux.sh index f4aebf672..82e70d523 100755 --- a/.github/workflows/scripts/setup-linux.sh +++ b/.github/workflows/scripts/setup-linux.sh @@ -21,4 +21,4 @@ apt-get update && apt-get install -y rsync curl gpg libasound2 libgbm1 libgtk-3- mkdir -p $NVM_DIR curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash /bin/bash -c "source $NVM_DIR/nvm.sh && nvm install $NODE_VERSION" -echo "$NODE_PATH" >> $GITHUB_PATH \ No newline at end of file +echo "$NODE_PATH" >> "$GITHUB_PATH" \ No newline at end of file From c23561bd2aab44f69bc8ee93419a80c09868ad37 Mon Sep 17 00:00:00 2001 From: Adam Ward Date: Tue, 10 Dec 2024 07:58:23 -0500 Subject: [PATCH 07/10] Only run current release against insiders --- .github/workflows/nightly.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index a38495afa..a6a18234f 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -37,7 +37,7 @@ jobs: uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@main with: # Linux - linux_exclude_swift_versions: '[{"swift_version": "nightly-main"}]' + linux_exclude_swift_versions: '[{"swift_version": "5.8"}, {"swift_version": "5.9"}, {"swift_version": "5.10"}, {"swift_version": "nightly-6.0"}, {"swift_version": "nightly-main"}]' linux_env_vars: | NODE_VERSION=v18.19.0 NODE_PATH=/usr/local/nvm/versions/node/v18.19.0/bin @@ -48,7 +48,7 @@ jobs: linux_pre_build_command: . .github/workflows/scripts/setup-linux.sh linux_build_command: ./docker/test.sh # Windows - windows_exclude_swift_versions: '[{"swift_version": "nightly"}]' + windows_exclude_swift_versions: '[{"swift_version": "5.9"}, {"swift_version": "nightly-6.0"}, {"swift_version": "nightly"}]' windows_env_vars: | CI=1 VSCODE_TEST=1 From e1d1d7bb2d572b480d96ba5000b12d85a8fd1d11 Mon Sep 17 00:00:00 2001 From: Adam Ward Date: Tue, 10 Dec 2024 08:01:04 -0500 Subject: [PATCH 08/10] Verify nightly build if PR changes that file --- .github/workflows/nightly.yml | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index a6a18234f..d57657c07 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -3,6 +3,9 @@ name: Nightly on: schedule: - cron: "0 0 * * *" + pull_request: + paths: + - ".github/workflows/nightly.yml" jobs: tests_release: From cf158a1ef5a92889110a8444e126a7e720cf4534 Mon Sep 17 00:00:00 2001 From: Adam Ward Date: Tue, 10 Dec 2024 09:29:55 -0500 Subject: [PATCH 09/10] Don't run nightly-6.0 in CI With a nightly job in place, we don't want unreleased changes to break our CI --- .github/workflows/nightly.yml | 5 ----- .github/workflows/pull_request.yml | 4 ++-- 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index d57657c07..96a1da134 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -3,9 +3,6 @@ name: Nightly on: schedule: - cron: "0 0 * * *" - pull_request: - paths: - - ".github/workflows/nightly.yml" jobs: tests_release: @@ -13,7 +10,6 @@ jobs: uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@main with: # Linux - linux_exclude_swift_versions: '[{"swift_version": "nightly-main"}]' linux_env_vars: | NODE_VERSION=v18.19.0 NODE_PATH=/usr/local/nvm/versions/node/v18.19.0/bin @@ -27,7 +23,6 @@ jobs: echo "$NODE_PATH" >> $GITHUB_PATH linux_build_command: ./docker/test.sh # Windows - windows_exclude_swift_versions: '[{"swift_version": "nightly"}]' windows_env_vars: | CI=1 VSCODE_TEST=1 diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index cf82d517f..2dd885f25 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -10,7 +10,7 @@ jobs: uses: swiftlang/github-workflows/.github/workflows/swift_package_test.yml@main with: # Linux - linux_exclude_swift_versions: '[{"swift_version": "nightly-main"}]' + linux_exclude_swift_versions: '[{"swift_version": "nightly-6.0"},{"swift_version": "nightly-main"}]' linux_env_vars: | NODE_VERSION=v18.19.0 NODE_PATH=/usr/local/nvm/versions/node/v18.19.0/bin @@ -21,7 +21,7 @@ jobs: linux_pre_build_command: . .github/workflows/scripts/setup-linux.sh linux_build_command: ./docker/test.sh # Windows - windows_exclude_swift_versions: '[{"swift_version": "nightly"}]' + windows_exclude_swift_versions: '[{"swift_version": "nightly-6.0"},{"swift_version": "nightly"}]' windows_env_vars: | CI=1 VSCODE_TEST=1 From 1b994d9b9edb8e7b10573eec19f9c062effe6a1f Mon Sep 17 00:00:00 2001 From: Adam Ward Date: Tue, 10 Dec 2024 13:41:39 -0500 Subject: [PATCH 10/10] Fix review comment --- .github/workflows/nightly.yml | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index 96a1da134..7ffaad08a 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -15,12 +15,7 @@ jobs: NODE_PATH=/usr/local/nvm/versions/node/v18.19.0/bin NVM_DIR=/usr/local/nvm CI=1 - linux_pre_build_command: | - apt-get update && apt-get install -y rsync curl gpg libasound2 libgbm1 libgtk-3-0 libnss3 xvfb build-essential - mkdir -p $NVM_DIR - curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash - /bin/bash -c "source $NVM_DIR/nvm.sh && nvm install $NODE_VERSION" - echo "$NODE_PATH" >> $GITHUB_PATH + linux_pre_build_command: . .github/workflows/scripts/setup-linux.sh linux_build_command: ./docker/test.sh # Windows windows_env_vars: |