version: 0.2 env: variables: BENCHMARK_PLAINTEXT_LENGTH_BYTES: '1,1000,1000000' BENCHMARK_FRAME_LENGTH_BYTES: '4096' # the ESDK's default phases: install: commands: # Get .NET SDK 6.0 (for build tools only; projects specify their own toolchains) - Invoke-WebRequest https://dot.net/v1/dotnet-install.ps1 -UseBasicParsing -OutFile dotnet-install.ps1 - ./dotnet-install.ps1 -Channel 6.0 - $PathPrefix += "C:\Users\ContainerAdministrator\AppData\Local\Microsoft\dotnet;" # Try preventing intermittent cert issue. # See and # - set NUGET_EXPERIMENTAL_CHAIN_BUILD_RETRY_POLICY=3,1000 # Get Dafny - Invoke-WebRequest https://github.com/dafny-lang/dafny/releases/download/v3.5.0/dafny-3.5.0-x64-win.zip -UseBasicParsing -OutFile dafny.zip - Expand-Archive -Path dafny.zip -DestinationPath . - $PathPrefix += (pwd).path + "\dafny;" # We can't modify $env:Path across items in this "commands" list, # so we set it within a single item using semicolon-separated commands - >- $env:Path = $PathPrefix + $env:Path; Dafny.exe /version build: commands: - cd aws-encryption-sdk-net/Benchmarks # For some reason, this isn't always automatically configured on the manually-installed .NET SDK - >- $env:Path = $PathPrefix + $env:Path; dotnet nuget add source --name nuget.org https://api.nuget.org/v3/index.json - >- $env:Path = $PathPrefix + $env:Path; dotnet run -c Release -f netcoreapp3.1 /nowarn:CS0105,CS0618 -- -f '*' --join 6>&1 5>&1 4>&1 > $null artifacts: base-directory: "aws-encryption-sdk-net/Benchmarks" files: - "BenchmarkDotNet.Artifacts/**/*"