From 852298facea003ad03bc4413a5188e10abdf7c09 Mon Sep 17 00:00:00 2001 From: Daniel Date: Sat, 12 Oct 2019 16:31:06 +0100 Subject: [PATCH 1/2] Remove .appveyor.yml and .travis.yml --- .appveyor.yml | 46 --------------------------------------- .travis.yml | 59 --------------------------------------------------- 2 files changed, 105 deletions(-) delete mode 100644 .appveyor.yml delete mode 100644 .travis.yml diff --git a/.appveyor.yml b/.appveyor.yml deleted file mode 100644 index 248f138..0000000 --- a/.appveyor.yml +++ /dev/null @@ -1,46 +0,0 @@ -version: '{build}' -skip_non_tags: true -image: Visual Studio 2019 -clone_depth: 1 -init: -- ps: git config --global core.autocrlf true -environment: - MODULE_NAME: serversecure.core - REPOSITORY_DIR: $(APPVEYOR_BUILD_FOLDER) - DEPENDENCIES: $(APPVEYOR_BUILD_FOLDER)/dependencies - GARRYSMOD_COMMON: $(APPVEYOR_BUILD_FOLDER)/dependencies/garrysmod_common - GARRYSMOD_COMMON_REPOSITORY: https://github.com/danielga/garrysmod_common.git - GARRYSMOD_COMMON_BRANCH: master - SOURCE_SDK: $(APPVEYOR_BUILD_FOLDER)/dependencies/sourcesdk-minimal - SOURCE_SDK_REPOSITORY: https://github.com/danielga/sourcesdk-minimal.git - SOURCE_SDK_BRANCH: master - PREMAKE5_URL: https://github.com/premake/premake-core/releases/download/v5.0.0-alpha14/premake-5.0.0-alpha14-windows.zip - PREMAKE5_EXECUTABLE: premake5.exe - PREMAKE5: $(APPVEYOR_BUILD_FOLDER)/dependencies/windows/premake-core/premake5.exe - BUILD_SCRIPT: $(APPVEYOR_BUILD_FOLDER)/dependencies/garrysmod_common/build/build.ps1 - BOOTSTRAP_URL: https://raw.githubusercontent.com/danielga/garrysmod_common/master/build/bootstrap.ps1 - PROJECT_OS: windows - TARGET_OS: win32 - TARGET_OS_64: win64 - TARGET_ARCHITECTURE: x86 - TARGET_ARCHITECTURE_64: x86_64 - PROJECT_GENERATOR_VERSION: 2 - COMPILER_PLATFORM: vs2019 - DISABLE_X86_64_BUILD: true -install: -- ps: 'Invoke-Expression ((New-Object System.Net.WebClient).DownloadString("$env:BOOTSTRAP_URL"))' -build_script: -- ps: '& "$env:BUILD_SCRIPT"' -test: off -artifacts: -- path: projects/$(PROJECT_OS)/$(COMPILER_PLATFORM)/$(TARGET_ARCHITECTURE)/Release/gmsv_$(MODULE_NAME)_$(TARGET_OS).dll - name: gmsv_$(MODULE_NAME)_$(TARGET_OS).dll -- path: projects/$(PROJECT_OS)/$(COMPILER_PLATFORM)/$(TARGET_ARCHITECTURE_64)/Release/gmsv_$(MODULE_NAME)_$(TARGET_OS_64).dll - name: gmsv_$(MODULE_NAME)_$(TARGET_OS_64).dll -deploy: -- provider: GitHub - tag: $(APPVEYOR_REPO_TAG_NAME) - auth_token: - secure: Kcf0IrxCRLDEYu42alXhUjIettCA8LbmmGkwy2CMykU2I7cZMr22BWXHVLWUJvk5 - artifact: gmsv_$(MODULE_NAME)_$(TARGET_OS).dll,gmsv_$(MODULE_NAME)_$(TARGET_OS_64).dll - force_update: true diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index b3072e7..0000000 --- a/.travis.yml +++ /dev/null @@ -1,59 +0,0 @@ -language: cpp -if: tag IS present -git: - depth: 1 -env: - global: - - MODULE_NAME=serversecure.core - REPOSITORY_DIR="$TRAVIS_BUILD_DIR" - DEPENDENCIES="$TRAVIS_BUILD_DIR/dependencies" - GARRYSMOD_COMMON="$TRAVIS_BUILD_DIR/dependencies/garrysmod_common" - GARRYSMOD_COMMON_REPOSITORY="https://github.com/danielga/garrysmod_common.git" - GARRYSMOD_COMMON_BRANCH=master - SOURCE_SDK="$TRAVIS_BUILD_DIR/dependencies/sourcesdk-minimal" - SOURCE_SDK_REPOSITORY="https://github.com/danielga/sourcesdk-minimal.git" - SOURCE_SDK_BRANCH=master - BUILD_SCRIPT="$TRAVIS_BUILD_DIR/dependencies/garrysmod_common/build/build.sh" - BOOTSTRAP_URL="https://raw.githubusercontent.com/danielga/garrysmod_common/master/build/bootstrap.sh" - TARGET_OS="$TRAVIS_OS_NAME" - TARGET_OS_64="${TRAVIS_OS_NAME}64" - TARGET_ARCHITECTURE=x86 - TARGET_ARCHITECTURE_64=x86_64 - PROJECT_GENERATOR_VERSION=2 - COMPILER_PLATFORM=gmake - DISABLE_X86_64_BUILD=true -matrix: - include: - - os: linux - dist: bionic - compiler: gcc - addons: - apt: - packages: - - linux-libc-dev:i386 - - g++-8-multilib - env: - - PREMAKE5="$TRAVIS_BUILD_DIR/dependencies/linux/premake-core/premake5" - PROJECT_OS=linux - PREMAKE5_URL="https://github.com/premake/premake-core/releases/download/v5.0.0-alpha14/premake-5.0.0-alpha14-linux.tar.gz" - before_install: - - export CC=gcc-8 - export CXX=g++-8 - - os: osx - osx_image: xcode9.4 - env: - - PREMAKE5="$TRAVIS_BUILD_DIR/dependencies/macosx/premake-core/premake5" - PROJECT_OS=macosx - PREMAKE5_URL="https://github.com/premake/premake-core/releases/download/v5.0.0-alpha14/premake-5.0.0-alpha14-macosx.tar.gz" -install: "curl -s -L \"$BOOTSTRAP_URL\" | bash" -script: "$BUILD_SCRIPT" -deploy: - provider: releases - skip_cleanup: true - file: - - "${TRAVIS_BUILD_DIR}/projects/${PROJECT_OS}/${COMPILER_PLATFORM}/${TARGET_ARCHITECTURE}/Release/gmsv_${MODULE_NAME}_${TARGET_OS}.dll" - - "${TRAVIS_BUILD_DIR}/projects/${PROJECT_OS}/${COMPILER_PLATFORM}/${TARGET_ARCHITECTURE_64}/Release/gmsv_${MODULE_NAME}_${TARGET_OS_64}.dll" - on: - tags: true - api_key: - secure: DMW0byGslhkzT3m4xgGHPIg8IsbmgfdDvwhyiDOyssftqcZnddl7Yit1IS/4q/StMeagWrCF+cbYee0n1v5QtOUu3Cr5EXBFgzwHmvYdTGHuEbMwcR/uM5R6UzgXpNn363mWiyYP5txuA2dX8DPULMZU/BCCxH9/Uuk6nNC8KfoSTAjYQTRt+VToNVEBKcZJ/VWlP2LWketQyY83r0OFnwbXihpw+Z/WAmt3FUfvtrAdBnOi3vxHCoib6RvHcUp4FLIrLEkmAjrFwrhKn/miPWWpCmh+Ou4YXSVuE5Wzj+zNY/6XpS4l4VDVu5zgu4T0RsYxS/9f9QoYPTo19By9NcWgXY9kdUcxAoRSv9JIPE4779a7THrXvnlrRu1B+wo9NAnxjK2rTmdFlLQrqR8uaSXKgTOyRlFHao5/AX82vss44XcWqM8dNQk8tjc4uwb9n1WAnDIKJ9KBKCD5EmfeVMTPEuGfIQJmHcNc/VLzBiD8rrLDP+w4zcK5QqLNr3jqes0u/OJz+XFAehkmIs6rt9Lt8D66h2hgu/OYwsdIc/1ZvyySZrVzcSzmGlgQbwQheXPlFcdQncvQH87LQmj48Vj49tPbwWcmiAd/3tHNSS1ZcNc2VrMSNEJZ0lS2zgg+0i7FBYYAC9vbQAtxN7MI+6SwL4en5DjVHW3AKRlTTIw= From a15676865676035a2db41f2dc8ba3dcb0f0eecd7 Mon Sep 17 00:00:00 2001 From: Daniel Date: Sat, 12 Oct 2019 12:44:50 +0100 Subject: [PATCH 2/2] Add azure-pipelines.yml --- azure-pipelines.yml | 148 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 148 insertions(+) create mode 100644 azure-pipelines.yml diff --git a/azure-pipelines.yml b/azure-pipelines.yml new file mode 100644 index 0000000..5d01ea1 --- /dev/null +++ b/azure-pipelines.yml @@ -0,0 +1,148 @@ +trigger: + tags: + include: + - '*' +variables: + MODULE_NAME: serversecure.core + DEPENDENCIES: $(System.DefaultWorkingDirectory)/dependencies + GARRYSMOD_COMMON: $(System.DefaultWorkingDirectory)/dependencies/garrysmod_common + GARRYSMOD_COMMON_BRANCH: master + GARRYSMOD_COMMON_REPOSITORY: https://github.com/danielga/garrysmod_common.git + PROJECT_GENERATOR_VERSION: 2 + REPOSITORY_DIR: $(System.DefaultWorkingDirectory) + TARGET_ARCHITECTURE: x86 + TARGET_ARCHITECTURE_64: x86_64 + DISABLE_X86_64_BUILD: true + SOURCE_SDK: $(System.DefaultWorkingDirectory)/dependencies/sourcesdk-minimal + SOURCE_SDK_BRANCH: master + SOURCE_SDK_REPOSITORY: https://github.com/danielga/sourcesdk-minimal.git +jobs: +- job: windows + displayName: Windows + pool: + name: Azure Pipelines + vmImage: windows-2019 + timeoutInMinutes: 10 + variables: + BOOTSTRAP_URL: https://raw.githubusercontent.com/danielga/garrysmod_common/master/build/bootstrap.ps1 + BUILD_SCRIPT: $(System.DefaultWorkingDirectory)/dependencies/garrysmod_common/build/build.ps1 + TARGET_OS: win32 + TARGET_OS_64: win64 + COMPILER_PLATFORM: vs2019 + PROJECT_OS: windows + PREMAKE5_EXECUTABLE: premake5.exe + PREMAKE5: $(System.DefaultWorkingDirectory)/dependencies/windows/premake-core/premake5.exe + PREMAKE5_URL: https://github.com/premake/premake-core/releases/download/v5.0.0-alpha14/premake-5.0.0-alpha14-windows.zip + steps: + - powershell: 'Invoke-Expression ((New-Object System.Net.WebClient).DownloadString("$env:BOOTSTRAP_URL"))' + displayName: Bootstrap + - powershell: '& "$env:BUILD_SCRIPT"' + displayName: Build + - task: CopyFiles@2 + displayName: 'Copy files to $(Build.ArtifactStagingDirectory)' + inputs: + SourceFolder: '$(System.DefaultWorkingDirectory)/projects/windows/vs2019' + Contents: '*/Release/*.dll' + TargetFolder: '$(Build.ArtifactStagingDirectory)' + CleanTargetFolder: true + flattenFolders: true + preserveTimestamp: true + - task: PublishBuildArtifacts@1 + displayName: 'Publish build artifacts' + inputs: + ArtifactName: windows +- job: linux + displayName: Linux + pool: + name: Azure Pipelines + vmImage: ubuntu-18.04 + timeoutInMinutes: 10 + variables: + BOOTSTRAP_URL: https://raw.githubusercontent.com/danielga/garrysmod_common/master/build/bootstrap.sh + BUILD_SCRIPT: $(System.DefaultWorkingDirectory)/dependencies/garrysmod_common/build/build.sh + TARGET_OS: linux + TARGET_OS_64: linux64 + COMPILER_PLATFORM: gmake + PREMAKE5: $(System.DefaultWorkingDirectory)/dependencies/linux/premake-core/premake5 + PROJECT_OS: linux + PREMAKE5_URL: https://github.com/premake/premake-core/releases/download/v5.0.0-alpha14/premake-5.0.0-alpha14-linux.tar.gz + CC: gcc-8 + CXX: g++-8 + steps: + - bash: 'curl -s -L "$BOOTSTRAP_URL" | bash' + displayName: Bootstrap + - bash: | + sudo apt-get update && sudo apt-get install -y g++-8-multilib + $BUILD_SCRIPT + displayName: Build + - task: CopyFiles@2 + displayName: 'Copy files to $(Build.ArtifactStagingDirectory)' + inputs: + SourceFolder: '$(System.DefaultWorkingDirectory)/projects/linux/gmake' + Contents: '*/Release/*.dll' + TargetFolder: '$(Build.ArtifactStagingDirectory)' + CleanTargetFolder: true + flattenFolders: true + preserveTimestamp: true + - task: PublishBuildArtifacts@1 + displayName: 'Publish build artifacts' + inputs: + ArtifactName: linux +- job: macosx + displayName: macOS + pool: + name: Azure Pipelines + vmImage: macOS-10.13 + timeoutInMinutes: 10 + variables: + BOOTSTRAP_URL: https://raw.githubusercontent.com/danielga/garrysmod_common/master/build/bootstrap.sh + BUILD_SCRIPT: $(System.DefaultWorkingDirectory)/dependencies/garrysmod_common/build/build.sh + TARGET_OS: osx + TARGET_OS_64: osx64 + COMPILER_PLATFORM: gmake + PREMAKE5: $(System.DefaultWorkingDirectory)/dependencies/macosx/premake-core/premake5 + PROJECT_OS: macosx + PREMAKE5_URL: https://github.com/premake/premake-core/releases/download/v5.0.0-alpha14/premake-5.0.0-alpha14-macosx.tar.gz + steps: + - bash: 'curl -s -L "$BOOTSTRAP_URL" | bash' + displayName: Bootstrap + - bash: | + sudo xcode-select -s "/Applications/Xcode_9.4.1.app/Contents/Developer" + $BUILD_SCRIPT + displayName: Build + - task: CopyFiles@2 + displayName: 'Copy files to $(Build.ArtifactStagingDirectory)' + inputs: + SourceFolder: '$(System.DefaultWorkingDirectory)/projects/macosx/gmake' + Contents: '*/Release/*.dll' + TargetFolder: '$(Build.ArtifactStagingDirectory)' + CleanTargetFolder: true + flattenFolders: true + preserveTimestamp: true + - task: PublishBuildArtifacts@1 + displayName: 'Publish build artifacts' + inputs: + ArtifactName: macosx +- job: publish + displayName: Publish to GitHub Releases + pool: + name: Azure Pipelines + vmImage: ubuntu-18.04 + timeoutInMinutes: 5 + dependsOn: + - windows + - linux + - macosx + steps: + - task: DownloadBuildArtifacts@0 + displayName: 'Download build artifacts' + inputs: + downloadType: specific + parallelizationLimit: 12 + - task: GitHubRelease@1 + displayName: 'Publish GitHub release $(build.sourceBranchName)' + inputs: + gitHubConnection: 'GitHub danielga' + releaseNotesSource: inline + assets: '$(System.ArtifactsDirectory)/**' + addChangeLog: false