diff --git a/.circleci/config.yml b/.circleci/config.yml deleted file mode 100644 index 667385a..0000000 --- a/.circleci/config.yml +++ /dev/null @@ -1,38 +0,0 @@ -version: 2.1 - -orbs: - win: circleci/windows@2.4.0 - -workflows: - version: 2 - test: - jobs: - - test_dotnetcore - - test_dotnetframework - -jobs: - test_dotnetcore: - docker: - - image: mcr.microsoft.com/dotnet/core/sdk:3.1-focal - - image: redis - steps: - - checkout - - run: dotnet restore - - run: dotnet build src/LaunchDarkly.ServerSdk.Redis -f netstandard2.0 - - run: dotnet test test/LaunchDarkly.ServerSdk.Redis.Tests -f netcoreapp3.1 - - test_dotnetframework: - executor: - name: win/default - shell: powershell.exe - steps: - - checkout - - run: - name: install Redis - command: choco install redis-64 - # Note, the redis-64 package is deprecated and no longer maintained so it does - # not include improvements made in Redis after Redis 3.x, and it would not be - # good to use it in production. But for our testing purposes here it's adequate. - - run: dotnet restore - - run: dotnet build src/LaunchDarkly.ServerSdk.Redis -f net462 - - run: dotnet test test/LaunchDarkly.ServerSdk.Redis.Tests -f net462 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 0000000..ffa9311 --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,64 @@ +name: CI + +on: + push: + branches: [ main, 'feat/**' ] + paths-ignore: + - '**.md' # Do not need to run CI for markdown changes. + pull_request: + branches: [ main, 'feat/**' ] + paths-ignore: + - '**.md' + +jobs: + linux: + runs-on: ubuntu-latest + + services: + redis: + image: redis + ports: + - 6379:6379 + + steps: + - uses: actions/checkout@v4 + + - name: Setup dotnet build tools + uses: actions/setup-dotnet@v4 + with: + dotnet-version: 8.0 + + - run: dotnet restore + - run: dotnet build src/LaunchDarkly.ServerSdk.Redis -f netstandard2.0 + - run: dotnet test test/LaunchDarkly.ServerSdk.Redis.Tests -f net8.0 + + windows: + runs-on: windows-latest + + defaults: + run: + shell: powershell + + steps: + - uses: actions/checkout@v4 + + - name: Setup dotnet build tools + uses: actions/setup-dotnet@v4 + with: + dotnet-version: 8.0 + + - name: Setup Redis + run: | + $ProgressPreference = "SilentlyContinue" + iwr -outf redis.zip https://github.com/MicrosoftArchive/redis/releases/download/win-3.0.504/Redis-x64-3.0.504.zip + mkdir redis + Expand-Archive -Path redis.zip -DestinationPath redis + cd redis + ./redis-server --service-install + ./redis-server --service-start + Start-Sleep -s 5 + ./redis-cli ping + + - run: dotnet restore + - run: dotnet build src/LaunchDarkly.ServerSdk.Redis -f net462 + - run: dotnet test test/LaunchDarkly.ServerSdk.Redis.Tests -f net462 diff --git a/dotnet-server-sdk-shared-tests/LaunchDarkly.ServerSdk.SharedTests.Tests/LaunchDarkly.ServerSdk.SharedTests.Tests.csproj b/dotnet-server-sdk-shared-tests/LaunchDarkly.ServerSdk.SharedTests.Tests/LaunchDarkly.ServerSdk.SharedTests.Tests.csproj index e2067a8..f69a7f2 100644 --- a/dotnet-server-sdk-shared-tests/LaunchDarkly.ServerSdk.SharedTests.Tests/LaunchDarkly.ServerSdk.SharedTests.Tests.csproj +++ b/dotnet-server-sdk-shared-tests/LaunchDarkly.ServerSdk.SharedTests.Tests/LaunchDarkly.ServerSdk.SharedTests.Tests.csproj @@ -1,6 +1,6 @@ - netcoreapp3.1 + net8.0 false LaunchDarkly.Sdk.Server.SharedTests diff --git a/test/LaunchDarkly.ServerSdk.Redis.Tests/LaunchDarkly.ServerSdk.Redis.Tests.csproj b/test/LaunchDarkly.ServerSdk.Redis.Tests/LaunchDarkly.ServerSdk.Redis.Tests.csproj index 3f67265..8d1ddc1 100644 --- a/test/LaunchDarkly.ServerSdk.Redis.Tests/LaunchDarkly.ServerSdk.Redis.Tests.csproj +++ b/test/LaunchDarkly.ServerSdk.Redis.Tests/LaunchDarkly.ServerSdk.Redis.Tests.csproj @@ -1,6 +1,6 @@ - netcoreapp3.1;net462 + net8.0;net462 false true LaunchDarkly.Sdk.Server.Integrations