Skip to content

Commit 1fe3fa5

Browse files
committed
foo
1 parent b401273 commit 1fe3fa5

File tree

2 files changed

+186
-142
lines changed

2 files changed

+186
-142
lines changed

azure-pipelines.yml

Lines changed: 154 additions & 142 deletions
Original file line numberDiff line numberDiff line change
@@ -6,152 +6,164 @@ trigger:
66
- maint/*
77

88
jobs:
9-
- job: linux_amd64_trusty_gcc_openssl
10-
displayName: 'Linux (amd64; Trusty; GCC; OpenSSL)'
9+
- job: freebsd
10+
displayName: 'FreeBSD (amd64; 12.0)'
1111
pool:
1212
vmImage: 'Ubuntu 16.04'
1313
steps:
14-
- template: azure-pipelines/docker.yml
15-
parameters:
16-
imageName: 'libgit2/trusty-amd64:latest'
17-
environmentVariables: |
18-
CC=gcc
19-
CMAKE_OPTIONS=-DUSE_HTTPS=OpenSSL -DDEPRECATE_HARD=ON
20-
LEAK_CHECK=valgrind
21-
22-
- job: linux_amd64_trusty_gcc_mbedtls
23-
displayName: 'Linux (amd64; Trusty; GCC; mbedTLS)'
24-
pool:
25-
vmImage: 'Ubuntu 16.04'
26-
steps:
27-
- template: azure-pipelines/docker.yml
28-
parameters:
29-
imageName: 'libgit2/trusty-amd64:latest'
30-
environmentVariables: |
31-
CC=gcc
32-
CMAKE_OPTIONS=-DUSE_HTTPS=mbedTLS -DSHA1_BACKEND=mbedTLS -DDEPRECATE_HARD=ON
33-
LEAK_CHECK=valgrind
34-
35-
- job: linux_amd64_trusty_clang_openssl
36-
displayName: 'Linux (amd64; Trusty; Clang; OpenSSL)'
37-
pool:
38-
vmImage: 'Ubuntu 16.04'
39-
steps:
40-
- template: azure-pipelines/docker.yml
41-
parameters:
42-
imageName: 'libgit2/trusty-amd64:latest'
43-
environmentVariables: |
44-
CC=clang
45-
CMAKE_OPTIONS=-DUSE_HTTPS=OpenSSL -DDEPRECATE_HARD=ON
46-
LEAK_CHECK=valgrind
47-
48-
- job: linux_amd64_trusty_clang_mbedtls
49-
displayName: 'Linux (amd64; Trusty; Clang; mbedTLS)'
50-
pool:
51-
vmImage: 'Ubuntu 16.04'
52-
steps:
53-
- template: azure-pipelines/docker.yml
54-
parameters:
55-
imageName: 'libgit2/trusty-amd64:latest'
56-
environmentVariables: |
57-
CC=clang
58-
CMAKE_OPTIONS=-DUSE_HTTPS=mbedTLS -DSHA1_BACKEND=mbedTLS -DDEPRECATE_HARD=ON
59-
LEAK_CHECK=valgrind
60-
61-
- job: macos
62-
displayName: 'macOS'
63-
pool:
64-
vmImage: 'macOS 10.13'
65-
steps:
66-
- bash: . '$(Build.SourcesDirectory)/ci/setup-osx.sh'
67-
displayName: Setup
68-
- template: azure-pipelines/bash.yml
14+
- template: azure-pipelines/ssh.yml
6915
parameters:
16+
remoteHost: 'build@13.92.132.220'
7017
environmentVariables:
71-
TMPDIR: $(Agent.TempDirectory)
72-
PKG_CONFIG_PATH: /usr/local/opt/openssl/lib/pkgconfig
73-
LEAK_CHECK: leaks
74-
CMAKE_OPTIONS: -G Ninja -DDEPRECATE_HARD=ON
18+
CMAKE_OPTIONS: -DDEPRECATE_HARD=ON
7519
SKIP_SSH_TESTS: true
7620

77-
- job: windows_vs_amd64
78-
displayName: 'Windows (amd64; Visual Studio)'
79-
pool: Hosted
80-
steps:
81-
- template: azure-pipelines/powershell.yml
82-
parameters:
83-
environmentVariables:
84-
CMAKE_OPTIONS: -DMSVC_CRTDBG=ON -G"Visual Studio 12 2013 Win64" -DDEPRECATE_HARD=ON
85-
86-
- job: windows_vs_x86
87-
displayName: 'Windows (x86; Visual Studio)'
88-
pool: Hosted
89-
steps:
90-
- template: azure-pipelines/powershell.yml
91-
parameters:
92-
environmentVariables:
93-
CMAKE_OPTIONS: -DMSVC_CRTDBG=ON -G"Visual Studio 12 2013" -DDEPRECATE_HARD=ON
94-
95-
- job: windows_mingw_amd64
96-
displayName: 'Windows (amd64; MinGW)'
97-
pool: Hosted
98-
steps:
99-
- powershell: . '$(Build.SourcesDirectory)\ci\setup-mingw.ps1'
100-
displayName: Setup
101-
env:
102-
TEMP: $(Agent.TempDirectory)
103-
ARCH: amd64
104-
- template: azure-pipelines/powershell.yml
105-
parameters:
106-
environmentVariables:
107-
CMAKE_OPTIONS: -G"MinGW Makefiles" -DDEPRECATE_HARD=ON
108-
PATH: $(Agent.TempDirectory)\mingw64\bin;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\CMake\bin
109-
110-
- job: windows_mingw_x86
111-
displayName: 'Windows (x86; MinGW)'
112-
pool: Hosted
113-
steps:
114-
- powershell: . '$(Build.SourcesDirectory)\ci\setup-mingw.ps1'
115-
displayName: Setup
116-
workingDirectory: '$(Build.BinariesDirectory)'
117-
env:
118-
TEMP: $(Agent.TempDirectory)
119-
ARCH: x86
120-
- template: azure-pipelines/powershell.yml
121-
parameters:
122-
environmentVariables:
123-
CMAKE_OPTIONS: -G"MinGW Makefiles" -DDEPRECATE_HARD=ON
124-
PATH: $(Agent.TempDirectory)\mingw32\bin;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\CMake\bin
125-
126-
- job: documentation
127-
displayName: 'Generate Documentation'
128-
pool:
129-
vmImage: 'Ubuntu 16.04'
130-
steps:
131-
- script: |
132-
git config user.name 'Documentation Generation'
133-
git config user.email 'libgit2@users.noreply.github.com'
134-
git branch gh-pages origin/gh-pages
135-
docker run --rm -v $(Build.SourcesDirectory):/src -w /src libgit2/docurium:latest cm doc api.docurium
136-
git checkout gh-pages
137-
cp -R * '$(Build.BinariesDirectory)'
138-
displayName: 'Generate Documentation'
139-
- task: archivefiles@2
140-
displayName: 'Archive Documentation'
141-
inputs:
142-
rootFolderOrFile: '$(Build.BinariesDirectory)'
143-
includeRootFolder: false
144-
archiveFile: '$(Build.ArtifactStagingDirectory)/api-documentation.zip'
145-
- task: publishbuildartifacts@1
146-
displayName: 'Upload Documentation Artifact'
147-
inputs:
148-
pathToPublish: '$(Build.ArtifactStagingDirectory)'
149-
artifactName: 'docs'
150-
- script: |
151-
git remote -v
152-
echo 'machine github.com' > ~/.netrc
153-
echo 'login $(GITHUB_USERNAME)' >> ~/.netrc
154-
echo 'password $(GITHUB_PAT)' >> ~/.netrc
155-
git push origin gh-pages
156-
displayName: 'Publish Documentation'
157-
condition: eq(variables['Build.Reason'], 'IndividualCI')
21+
#- job: linux_amd64_trusty_gcc_openssl
22+
# displayName: 'Linux (amd64; Trusty; GCC; OpenSSL)'
23+
# pool:
24+
# vmImage: 'Ubuntu 16.04'
25+
# steps:
26+
# - template: azure-pipelines/docker.yml
27+
# parameters:
28+
# imageName: 'libgit2/trusty-amd64:latest'
29+
# environmentVariables: |
30+
# CC=gcc
31+
# CMAKE_OPTIONS=-DUSE_HTTPS=OpenSSL -DDEPRECATE_HARD=ON
32+
# LEAK_CHECK=valgrind
33+
#
34+
#- job: linux_amd64_trusty_gcc_mbedtls
35+
# displayName: 'Linux (amd64; Trusty; GCC; mbedTLS)'
36+
# pool:
37+
# vmImage: 'Ubuntu 16.04'
38+
# steps:
39+
# - template: azure-pipelines/docker.yml
40+
# parameters:
41+
# imageName: 'libgit2/trusty-amd64:latest'
42+
# environmentVariables: |
43+
# CC=gcc
44+
# CMAKE_OPTIONS=-DUSE_HTTPS=mbedTLS -DSHA1_BACKEND=mbedTLS -DDEPRECATE_HARD=ON
45+
# LEAK_CHECK=valgrind
46+
#
47+
#- job: linux_amd64_trusty_clang_openssl
48+
# displayName: 'Linux (amd64; Trusty; Clang; OpenSSL)'
49+
# pool:
50+
# vmImage: 'Ubuntu 16.04'
51+
# steps:
52+
# - template: azure-pipelines/docker.yml
53+
# parameters:
54+
# imageName: 'libgit2/trusty-amd64:latest'
55+
# environmentVariables: |
56+
# CC=clang
57+
# CMAKE_OPTIONS=-DUSE_HTTPS=OpenSSL -DDEPRECATE_HARD=ON
58+
# LEAK_CHECK=valgrind
59+
#
60+
#- job: linux_amd64_trusty_clang_mbedtls
61+
# displayName: 'Linux (amd64; Trusty; Clang; mbedTLS)'
62+
# pool:
63+
# vmImage: 'Ubuntu 16.04'
64+
# steps:
65+
# - template: azure-pipelines/docker.yml
66+
# parameters:
67+
# imageName: 'libgit2/trusty-amd64:latest'
68+
# environmentVariables: |
69+
# CC=clang
70+
# CMAKE_OPTIONS=-DUSE_HTTPS=mbedTLS -DSHA1_BACKEND=mbedTLS -DDEPRECATE_HARD=ON
71+
# LEAK_CHECK=valgrind
72+
#
73+
#- job: macos
74+
# displayName: 'macOS'
75+
# pool:
76+
# vmImage: 'macOS 10.13'
77+
# steps:
78+
# - bash: . '$(Build.SourcesDirectory)/ci/setup-osx.sh'
79+
# displayName: Setup
80+
# - template: azure-pipelines/bash.yml
81+
# parameters:
82+
# environmentVariables:
83+
# TMPDIR: $(Agent.TempDirectory)
84+
# PKG_CONFIG_PATH: /usr/local/opt/openssl/lib/pkgconfig
85+
# LEAK_CHECK: leaks
86+
# CMAKE_OPTIONS: -G Ninja -DDEPRECATE_HARD=ON
87+
# SKIP_SSH_TESTS: true
88+
#
89+
#- job: windows_vs_amd64
90+
# displayName: 'Windows (amd64; Visual Studio)'
91+
# pool: Hosted
92+
# steps:
93+
# - template: azure-pipelines/powershell.yml
94+
# parameters:
95+
# environmentVariables:
96+
# CMAKE_OPTIONS: -DMSVC_CRTDBG=ON -G"Visual Studio 12 2013 Win64" -DDEPRECATE_HARD=ON
97+
#
98+
#- job: windows_vs_x86
99+
# displayName: 'Windows (x86; Visual Studio)'
100+
# pool: Hosted
101+
# steps:
102+
# - template: azure-pipelines/powershell.yml
103+
# parameters:
104+
# environmentVariables:
105+
# CMAKE_OPTIONS: -DMSVC_CRTDBG=ON -G"Visual Studio 12 2013" -DDEPRECATE_HARD=ON
106+
#
107+
#- job: windows_mingw_amd64
108+
# displayName: 'Windows (amd64; MinGW)'
109+
# pool: Hosted
110+
# steps:
111+
# - powershell: . '$(Build.SourcesDirectory)\ci\setup-mingw.ps1'
112+
# displayName: Setup
113+
# env:
114+
# TEMP: $(Agent.TempDirectory)
115+
# ARCH: amd64
116+
# - template: azure-pipelines/powershell.yml
117+
# parameters:
118+
# environmentVariables:
119+
# CMAKE_OPTIONS: -G"MinGW Makefiles" -DDEPRECATE_HARD=ON
120+
# PATH: $(Agent.TempDirectory)\mingw64\bin;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\CMake\bin
121+
#
122+
#- job: windows_mingw_x86
123+
# displayName: 'Windows (x86; MinGW)'
124+
# pool: Hosted
125+
# steps:
126+
# - powershell: . '$(Build.SourcesDirectory)\ci\setup-mingw.ps1'
127+
# displayName: Setup
128+
# workingDirectory: '$(Build.BinariesDirectory)'
129+
# env:
130+
# TEMP: $(Agent.TempDirectory)
131+
# ARCH: x86
132+
# - template: azure-pipelines/powershell.yml
133+
# parameters:
134+
# environmentVariables:
135+
# CMAKE_OPTIONS: -G"MinGW Makefiles" -DDEPRECATE_HARD=ON
136+
# PATH: $(Agent.TempDirectory)\mingw32\bin;C:\ProgramData\Oracle\Java\javapath;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\CMake\bin
137+
#
138+
#- job: documentation
139+
# displayName: 'Generate Documentation'
140+
# pool:
141+
# vmImage: 'Ubuntu 16.04'
142+
# steps:
143+
# - script: |
144+
# git config user.name 'Documentation Generation'
145+
# git config user.email 'libgit2@users.noreply.github.com'
146+
# git branch gh-pages origin/gh-pages
147+
# docker run --rm -v $(Build.SourcesDirectory):/src -w /src libgit2/docurium:latest cm doc api.docurium
148+
# git checkout gh-pages
149+
# cp -R * '$(Build.BinariesDirectory)'
150+
# displayName: 'Generate Documentation'
151+
# - task: archivefiles@2
152+
# displayName: 'Archive Documentation'
153+
# inputs:
154+
# rootFolderOrFile: '$(Build.BinariesDirectory)'
155+
# includeRootFolder: false
156+
# archiveFile: '$(Build.ArtifactStagingDirectory)/api-documentation.zip'
157+
# - task: publishbuildartifacts@1
158+
# displayName: 'Upload Documentation Artifact'
159+
# inputs:
160+
# pathToPublish: '$(Build.ArtifactStagingDirectory)'
161+
# artifactName: 'docs'
162+
# - script: |
163+
# git remote -v
164+
# echo 'machine github.com' > ~/.netrc
165+
# echo 'login $(GITHUB_USERNAME)' >> ~/.netrc
166+
# echo 'password $(GITHUB_PAT)' >> ~/.netrc
167+
# git push origin gh-pages
168+
# displayName: 'Publish Documentation'
169+
# condition: eq(variables['Build.Reason'], 'IndividualCI')

azure-pipelines/ssh.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# These are the steps used for ssh'ing into a remote host to build and test.
2+
steps:
3+
- task: SSH@0
4+
displayName: 'Create Build Directory'
5+
inputs:
6+
sshEndpoint: freebsd
7+
commands: |
8+
set -e
9+
REMOTE_BASEDIR=$(mktemp -d -t build)
10+
REMOTE_SOURCEDIR="${REMOTE_BASEDIR}/src"
11+
REMOTE_OUTPUTDIR="${REMOTE_BASEDIR}/build"
12+
mkdir "${REMOTE_SOURCEDIR}"
13+
mkdir "${REMOTE_OUTPUTDIR}"
14+
echo "##vso[task.setvariable variable=Remote.BaseDir]${REMOTE_BASEDIR}"
15+
echo "##vso[task.setvariable variable=Remote.SourceDir]${REMOTE_SOURCEDIR}"
16+
echo "##vso[task.setvariable variable=Remote.OutputDir]${REMOTE_OUTPUTDIR}"
17+
18+
- task: CopyFilesOverSSH@0
19+
displayName: 'Securely copy files to the remote machine'
20+
inputs:
21+
sshEndpoint: freebsd
22+
sourceFolder: '$(Build.SourcesDirectory)'
23+
targetFolder: '$(Remote.SourceDir)'
24+
25+
- task: SSH@0
26+
displayName: 'Create Build Directory'
27+
inputs:
28+
sshEndpoint: freebsd
29+
commands: |
30+
set -e
31+
cd $(Remote.OutputDir)
32+
$(Remote.SourceDir)/ci/build.sh

0 commit comments

Comments
 (0)