Skip to content

Commit 44acb1d

Browse files
committed
Add Azure Pipelines config
Update license copyright years
1 parent a0d42c9 commit 44acb1d

File tree

2 files changed

+160
-1
lines changed

2 files changed

+160
-1
lines changed

azure-pipelines.yml

Lines changed: 159 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,159 @@
1+
variables:
2+
MODULE_NAME: crypt
3+
DEPENDENCIES: $(System.DefaultWorkingDirectory)/dependencies
4+
GARRYSMOD_COMMON: $(System.DefaultWorkingDirectory)/dependencies/garrysmod_common
5+
GARRYSMOD_COMMON_BRANCH: master
6+
GARRYSMOD_COMMON_REPOSITORY: https://github.com/danielga/garrysmod_common.git
7+
PROJECT_GENERATOR_VERSION: 2
8+
REPOSITORY_DIR: $(System.DefaultWorkingDirectory)
9+
trigger:
10+
batch: true
11+
branches:
12+
include:
13+
- '*'
14+
tags:
15+
include:
16+
- '*'
17+
paths:
18+
include:
19+
- azure-pipelines.yml
20+
- premake5.lua
21+
- source
22+
jobs:
23+
- job: windows
24+
displayName: Windows
25+
pool:
26+
name: Azure Pipelines
27+
vmImage: windows-2022
28+
timeoutInMinutes: 10
29+
variables:
30+
BOOTSTRAP_URL: https://raw.githubusercontent.com/danielga/garrysmod_common/master/build/bootstrap.ps1
31+
BUILD_SCRIPT: $(System.DefaultWorkingDirectory)/dependencies/garrysmod_common/build/build.ps1
32+
COMPILER_PLATFORM: vs2022
33+
PROJECT_OS: windows
34+
PREMAKE5: $(System.DefaultWorkingDirectory)/dependencies/windows/premake-core/premake5.exe
35+
PREMAKE5_URL: https://github.com/danielga/garrysmod_common/releases/download/premake-build%2F5.0.0-beta2/premake-5.0.0-beta2-windows.zip
36+
steps:
37+
- checkout: self
38+
clean: true
39+
fetchDepth: 1
40+
submodules: recursive
41+
- powershell: 'Invoke-Expression ((New-Object System.Net.WebClient).DownloadString("$env:BOOTSTRAP_URL"))'
42+
displayName: Bootstrap
43+
- powershell: '& "$env:BUILD_SCRIPT"'
44+
displayName: Build
45+
- task: CopyFiles@2
46+
displayName: 'Copy files to $(Build.ArtifactStagingDirectory)'
47+
inputs:
48+
SourceFolder: '$(System.DefaultWorkingDirectory)/projects/windows/vs2022'
49+
Contents: '*/Release/*.dll'
50+
TargetFolder: '$(Build.ArtifactStagingDirectory)'
51+
CleanTargetFolder: true
52+
flattenFolders: true
53+
preserveTimestamp: true
54+
- publish: '$(Build.ArtifactStagingDirectory)'
55+
displayName: 'Publish Windows binaries'
56+
artifact: windows
57+
- job: linux
58+
displayName: Linux
59+
pool:
60+
name: Azure Pipelines
61+
vmImage: ubuntu-22.04
62+
container:
63+
image: danielga/steamrt-scout:latest
64+
options: -v /home
65+
timeoutInMinutes: 10
66+
variables:
67+
BOOTSTRAP_URL: https://raw.githubusercontent.com/danielga/garrysmod_common/master/build/bootstrap.sh
68+
BUILD_SCRIPT: $(System.DefaultWorkingDirectory)/dependencies/garrysmod_common/build/build.sh
69+
COMPILER_PLATFORM: gmake
70+
PREMAKE5: $(System.DefaultWorkingDirectory)/dependencies/linux/premake-core/premake5
71+
PROJECT_OS: linux
72+
PREMAKE5_URL: https://github.com/danielga/garrysmod_common/releases/download/premake-build%2F5.0.0-beta2/premake-5.0.0-beta2-linux.tar.gz
73+
CC: gcc-9
74+
CXX: g++-9
75+
AR: gcc-ar-9
76+
NM: gcc-nm-9
77+
RANLIB: gcc-ranlib-9
78+
steps:
79+
- checkout: self
80+
clean: true
81+
fetchDepth: 1
82+
submodules: recursive
83+
- bash: 'curl -s -L "$BOOTSTRAP_URL" | bash'
84+
displayName: Bootstrap
85+
- bash: '$BUILD_SCRIPT'
86+
displayName: Build
87+
- task: CopyFiles@2
88+
displayName: 'Copy files to $(Build.ArtifactStagingDirectory)'
89+
inputs:
90+
SourceFolder: '$(System.DefaultWorkingDirectory)/projects/linux/gmake'
91+
Contents: '*/Release/*.dll'
92+
TargetFolder: '$(Build.ArtifactStagingDirectory)'
93+
CleanTargetFolder: true
94+
flattenFolders: true
95+
preserveTimestamp: true
96+
- publish: '$(Build.ArtifactStagingDirectory)'
97+
displayName: 'Publish Linux binaries'
98+
artifact: linux
99+
- job: macosx
100+
displayName: macOS
101+
pool:
102+
name: Azure Pipelines
103+
vmImage: macOS-11
104+
timeoutInMinutes: 10
105+
variables:
106+
BOOTSTRAP_URL: https://raw.githubusercontent.com/danielga/garrysmod_common/master/build/bootstrap.sh
107+
BUILD_SCRIPT: $(System.DefaultWorkingDirectory)/dependencies/garrysmod_common/build/build.sh
108+
COMPILER_PLATFORM: gmake
109+
PREMAKE5: $(System.DefaultWorkingDirectory)/dependencies/macosx/premake-core/premake5
110+
PROJECT_OS: macosx
111+
PREMAKE5_URL: https://github.com/danielga/garrysmod_common/releases/download/premake-build%2F5.0.0-beta2/premake-5.0.0-beta2-macosx.tar.gz
112+
MACOSX_SDK_URL: https://github.com/phracker/MacOSX-SDKs/releases/download/11.3/MacOSX10.7.sdk.tar.xz
113+
MACOSX_SDK_DIRECTORY: $(System.DefaultWorkingDirectory)/dependencies/macosx/MacOSX10.7.sdk
114+
SDKROOT: $(System.DefaultWorkingDirectory)/dependencies/macosx/MacOSX10.7.sdk
115+
AR: ar
116+
steps:
117+
- checkout: self
118+
clean: true
119+
fetchDepth: 1
120+
submodules: recursive
121+
- bash: 'curl -s -L "$BOOTSTRAP_URL" | bash'
122+
displayName: Bootstrap
123+
- bash: |
124+
sudo xcode-select -s "/Applications/Xcode_11.7.app/Contents/Developer"
125+
$BUILD_SCRIPT
126+
displayName: Build
127+
- task: CopyFiles@2
128+
displayName: 'Copy files to $(Build.ArtifactStagingDirectory)'
129+
inputs:
130+
SourceFolder: '$(System.DefaultWorkingDirectory)/projects/macosx/gmake'
131+
Contents: '*/Release/*.dll'
132+
TargetFolder: '$(Build.ArtifactStagingDirectory)'
133+
CleanTargetFolder: true
134+
flattenFolders: true
135+
preserveTimestamp: true
136+
- publish: '$(Build.ArtifactStagingDirectory)'
137+
displayName: 'Publish macOS binaries'
138+
artifact: macosx
139+
- job: publish
140+
displayName: Publish to GitHub Releases
141+
pool:
142+
name: Azure Pipelines
143+
vmImage: ubuntu-22.04
144+
timeoutInMinutes: 5
145+
dependsOn:
146+
- windows
147+
- linux
148+
- macosx
149+
condition: and(succeeded(), startsWith(variables['Build.SourceBranch'], 'refs/tags/'))
150+
steps:
151+
- download: current
152+
patterns: '**/*.dll'
153+
- task: GitHubRelease@1
154+
displayName: 'Publish GitHub release $(build.sourceBranchName)'
155+
inputs:
156+
gitHubConnection: 'GitHub danielga'
157+
releaseNotesSource: inline
158+
assets: '$(Pipeline.Workspace)/**/*.dll'
159+
addChangeLog: false

license.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
gm_crypt
22
A cryptography module for the game Garry's Mod.
33
-----------------------------------------------------------------------
4-
Copyright (c) 2015-2020, Daniel Almeida
4+
Copyright (c) 2015-2023, Daniel Almeida
55
All rights reserved.
66

77
Redistribution and use in source and binary forms, with or without

0 commit comments

Comments
 (0)