Fix NuGet Tests #3239
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: NuGet Tests | |
on: | |
push: | |
branches: | |
- '**' | |
tags-ignore: | |
- '**' | |
pull_request_target: | |
types: [ labeled ] | |
# Ensures that only the latest commit is running for each PR at a time. | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }}-${{ github.ref }} | |
cancel-in-progress: true | |
jobs: | |
NuGet-Tests: | |
if: contains(github.event.pull_request.labels.*.name, 'safe to test') || github.event_name == 'push' | |
name: NuGet tests (${{ matrix.os }}) | |
strategy: | |
fail-fast: false | |
matrix: | |
#os: [ ubuntu, windows, macos ] | |
os: [ windows ] | |
runs-on: ${{ matrix.os }}-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
- name: Install .NET | |
uses: actions/setup-dotnet@v4 | |
with: | |
dotnet-version: '8.x' | |
- name: Install NuGet | |
uses: nuget/setup-nuget@v2 | |
with: | |
nuget-version: '6.x' | |
- name: Setup Windows Environment (MSBuild 17.12) | |
if: matrix.os == 'windows' | |
run: | | |
echo "🔧 Uninstalling existing MSBuild..." | |
choco uninstall visualstudio2022buildtools -y | |
echo "🚀 Installing MSBuild 17.12 using Visual Studio Installer..." | |
vs_installer install --quiet --norestart --nocache --installPath "C:\BuildTools" --add Microsoft.VisualStudio.Component.VC.Tools.x86.x64 --add Microsoft.VisualStudio.Component.Windows10SDK.19041 --add Microsoft.Component.MSBuild --passive | |
echo "🔧 Setting MSBuild PATH..." | |
echo "C:\BuildTools\MSBuild\Current\Bin" >> $GITHUB_PATH | |
echo "🚀 Applying MSBuild 17.13+ Workaround..." | |
echo "MSBUILDDISABLEFEATURESFROMVERSION=17.14" >> $GITHUB_ENV | |
echo "✅ Windows environment setup completed!" | |
echo "🔍 Checking Installed MSBuild Version:" | |
msbuild -version | |
shell: pwsh | |
# Prepare ubuntu by installing Mono and handling dotnet installation issues. | |
- name: Prepare ubuntu | |
if: matrix.os == 'ubuntu' | |
run: | | |
sudo apt-get update | |
sudo apt-get install -y apt-transport-https dirmngr gnupg ca-certificates | |
sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF | |
echo "deb https://download.mono-project.com/repo/ubuntu stable-focal main" | sudo tee /etc/apt/sources.list.d/mono-official-stable.list | |
sudo apt-get update | |
sudo apt-get install -y mono-complete | |
echo "DOTNET_INSTALL_DIR=/usr/share/dotnet" >> $GITHUB_ENV | |
sudo mkdir -p /usr/share/dotnet | |
sudo chmod 777 /usr/share/dotnet | |
- name: Setup Go with cache | |
uses: jfrog/.github/actions/install-go-with-cache@main | |
- name: Install local Artifactory | |
uses: jfrog/.github/actions/install-local-artifactory@main | |
with: | |
RTLIC: ${{ secrets.RTLIC }} | |
- name: Run NuGet tests | |
run: go test -v github.com/jfrog/jfrog-cli --timeout 0 --test.nuget |