# .NET Desktop # Build and run tests for .NET Desktop or Windows classic desktop solutions. # Add steps that publish symbols, save build artifacts, and more: # https://docs.microsoft.com/azure/devops/pipelines/apps/windows/dot-net trigger: - master pool: name: Default vmImage: 'windows-latest' variables: - group: main-pipeline-keys - name: solution value: 'Wabbajack.sln' - name: buildPlatform value: 'x64' - name: buildConfiguration value: 'Debug' steps: - checkout: self clean: true submodules: true - task: NuGetToolInstaller@1 - task: NuGetCommand@2 inputs: restoreSolution: '$(solution)' - task: VSBuild@1 inputs: solution: '$(solution)' platform: '$(buildPlatform)' configuration: '$(buildConfiguration)' - task: VSTest@2 inputs: platform: '$(buildPlatform)' configuration: '$(buildConfiguration)' testFiltercriteria: 'TestCategory!=ListValidation' runInParallel: true - task: DownloadSecureFile@1 inputs: secureFile: 'CertFile.p12' - task: codesigning@2 condition: eq(variables['Build.SourceBranch'], 'refs/heads/master') inputs: secureFileId: 'CertFile.p12' signCertPassword: '$(CertPassword)' files: '$(System.DefaultWorkingDirectory)/Wabbajack/bin/x64/Debug/Wabbajack.exe' timeServer: 'http://timestamp.digicert.com' hashingAlgorithm: 'SHA256' description: 'Wabbajack Modlist Installer' #- task: CmdLine@2 # inputs: # script: 'pip install requests' #- task: PythonScript@0 # condition: eq(variables['Build.SourceBranch'], 'refs/heads/master') # inputs: # scriptSource: 'inline' # script: | # import requests, sys # # url = 'https://www.virustotal.com/vtapi/v2/file/scan' # # params = {'apikey': sys.argv[1]} # # files = {'file': ('Wabbajack.exe', open(sys.argv[2], 'rb'))} # # response = requests.post(url, files=files, params=params) # # print(response.json()) # arguments: '$(VirusTotalAPIKey) $(System.DefaultWorkingDirectory)/Wabbajack/bin/x64/Debug/Wabbajack.exe' # - task: PublishBuildArtifacts@1 condition: eq(variables['Build.SourceBranch'], 'refs/heads/master') inputs: PathtoPublish: '$(System.DefaultWorkingDirectory)/Wabbajack/bin/x64/Debug/Wabbajack.exe' ArtifactName: 'Wabbajack.exe' publishLocation: 'Container'