Comments #38
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: | |
- '**' | |
# Triggers the workflow on labeled PRs only. | |
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 ] | |
runs-on: ${{ matrix.os }}-latest | |
steps: | |
- name: Checkout code | |
uses: actions/checkout@v4 | |
with: | |
ref: ${{ github.event.pull_request.head.sha }} | |
# Prepare ubuntu by installing Mono and handle dotnet installation issues. | |
- name: Prepare ubuntu | |
if: matrix.os == 'ubuntu' | |
run: | | |
# Install Mono | |
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 | |
# Fixes dotnet installation issues, see https://github.com/jfrog/jfrog-cli/pull/2808 for more details. | |
echo "DOTNET_INSTALL_DIR=/usr/share/dotnet" >> $GITHUB_ENV | |
sudo mkdir -p /usr/share/dotnet | |
sudo chmod 777 /usr/share/dotnet | |
- name: Install .NET | |
uses: actions/setup-dotnet@v4 | |
with: | |
dotnet-version: '6.x' | |
- name: Install NuGet | |
uses: nuget/setup-nuget@v2 | |
with: | |
nuget-version: '6.x' | |
- 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 |