-
Notifications
You must be signed in to change notification settings - Fork 4
148 lines (134 loc) · 6.06 KB
/
install_vcpkg_packages.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
name: install_vcpkg_packages
on:
workflow_dispatch:
jobs:
job:
runs-on: ${{ matrix.os }}
name: ${{ matrix.full_name }}-install_vcpkg_packages
env:
VCPKG_BINARY_SOURCES: 'clear;nuget,github,readwrite'
FRAMEWORKCI_ROOT_PATH: '${{ github.workspace }}/../../build_base/framework-ci'
BUILD_COMMANDS_ROOT: '${{ github.workspace }}/../../build_base/framework-ci/_build'
VCPKG_DEFAULT_BINARY_CACHE: ${{ github.workspace }}/builddir/vcpkg_archives
VCPKG_OVERLAY_PORTS: ${{ github.workspace }}/../../build_base/framework-ci/vcpkg_overlays/${{ matrix.vcpkg_overlay }}
VCPKG_DISABLE_METRICS: 1
VCPKG_BUILD_DIR: '${{ github.workspace }}/../../build_base/framework-ci/vcpkg'
VCPKG_PREINSTALL_HASH_PACKAGE_NAME: '1.5.2-${{ matrix.full_name }}-${{ matrix.triplet }}'
VCPKG_PUSH_HASH_PACKAGE_NAME: '1.5.3-${{ matrix.full_name }}-${{ matrix.triplet }}'
DOTNET_SKIP_FIRST_TIME_EXPERIENCE: true
DOTNET_CLI_TELEMETRY_OPTOUT: true
DOTNET_VERSION: '6.x'
strategy:
fail-fast: false
matrix:
include:
- os: 'windows-2019'
full_name: 'windows-2019-msmpi'
triplet: x64-windows
nugetexe: nuget.exe
vcpkg_overlay: none
mono: ''
- os: 'windows-2019'
full_name: 'windows-2019-intelmpi'
triplet: x64-windows
nugetexe: nuget.exe
vcpkg_overlay: win32-intelmpi
mono: ''
- os: 'windows-2022'
full_name: 'windows-2022-intelmpi'
triplet: x64-windows
nugetexe: nuget.exe
vcpkg_overlay: win32-intelmpi
mono: ''
- os: 'ubuntu-20.04'
full_name: 'ubuntu-20.04'
triplet: 'x64-linux-dynamic'
nugetexe: /usr/local/bin/nuget.exe
vcpkg_overlay: none
# To run `nuget.exe` on non-Windows platforms, we must use `mono`.
mono: 'mono'
- os: 'ubuntu-22.04'
full_name: 'ubuntu-22.04'
triplet: 'x64-linux-dynamic'
nugetexe: /usr/local/bin/nuget.exe
vcpkg_overlay: none
# To run `nuget.exe` on non-Windows platforms, we must use `mono`.
mono: 'mono'
# - os: 'ubuntu-24.04'
# full_name: 'ubuntu-24.04'
# triplet: 'x64-linux-dynamic'
# nugetexe: /usr/local/bin/nuget.exe
# vcpkg_overlay: none
# # To run `nuget.exe` on non-Windows platforms, we must use `mono`.
# mono: 'mono'
steps:
- name: Checkout repo
uses: actions/checkout@v3
with:
submodules: true
- name: Move framework-ci
shell: 'bash'
run: |
mkdir -p '${{ env.FRAMEWORKCI_ROOT_PATH }}'
ls -lart '${{ github.workspace }}'
cd '${{ github.workspace }}' && mv _build docs nuget.config vcpkg vcpkg_overlays '${{ env.FRAMEWORKCI_ROOT_PATH }}'
ls -lart '${{ env.FRAMEWORKCI_ROOT_PATH }}'
- name: Setup environment
shell: 'bash'
run: |
echo "${RUNNER_TEMP}/local_bin_dir/bin" >> $GITHUB_PATH
echo "${RUNNER_TEMP}/local_bin_dir/cmake/bin" >> $GITHUB_PATH
echo Path variable is: ${PATH}
echo CMake path is: `which cmake`
cmake --version
cmake -DNUGET_PASSWORD="${{ secrets.GITHUB_TOKEN }}" -DSETUP_VCPKG_OVERLAY=${{ matrix.vcpkg_overlay }} -P '${{ env.BUILD_COMMANDS_ROOT }}/Setup.cmake'
- name: Remove installed version of cmake if needed
shell: 'bash'
if: ${{ matrix.os == 'windows-2019' || matrix.os == 'windows-2022' }}
run: |
rm '/c/Program Files/CMake/bin/cmake'
- name: 'Display environment after setup'
shell: 'bash'
continue-on-error: true
run: |
echo 'VCPKG_OVERLAYS_PORTS = {{ env.VCPKG_OVERLAY_PORTS }}'
ls -lart '${{ env.VCPKG_OVERLAY_PORTS }}'
echo 'VCPKG_BUILD_DIR=${VCPKG_BUILD_DIR}'
echo 'Content of local_bin_dir'
ls -lart "${RUNNER_TEMP}/local_bin_dir"
echo 'Content of local_bin_dir/bin'
ls -lart "${RUNNER_TEMP}/local_bin_dir/bin"
echo 'Content of local_bin_dir/cmake'
ls -lart "${RUNNER_TEMP}/local_bin_dir/cmake"
echo Path variable is: ${PATH}
echo CMake path is: `which cmake`
echo Ninja path is: `which ninja`
cmake --version
- name: 'Untar vcpkg bootstrap cache'
shell: 'bash'
continue-on-error: true
run: |
cmake -DHASH_PACKAGE_NAME="${{ env.VCPKG_PREINSTALL_HASH_PACKAGE_NAME }}" -DVCPKG_BUILD_DIR='${{ env.VCPKG_BUILD_DIR }}' -P '${{ env.BUILD_COMMANDS_ROOT }}/vcpkg_cache/DoUntar.cmake'
ls -lart '${{ env.VCPKG_BUILD_DIR }}'
ls -lart '${{ env.VCPKG_BUILD_DIR }}'/VcpkgCache*
ls -lart '${{ env.BUILD_COMMANDS_ROOT }}/vcpkg_cache'
- name: Bootstrap vcpkg
shell: 'bash'
run: |
mkdir -p "${{ env.VCPKG_DEFAULT_BINARY_CACHE }}"
ls -lart '${{ env.BUILD_COMMANDS_ROOT }}'
cmake -DVCPKG_BUILD_DIR='${{ env.VCPKG_BUILD_DIR }}' -P '${{ env.BUILD_COMMANDS_ROOT }}/BootstrapVcpkg.cmake'
- name: 'Install vpckg packages'
shell: 'bash'
continue-on-error: true
run: |
${VCPKG_BUILD_DIR}/vcpkg --debug install glib libxml2 mpi parmetis hypre hdf5 hwloc bzip2 lz4 tbb boost-program-options boost-property-tree hiredis gtest --triplet ${{ matrix.triplet }}
cat /d/a/build_base/framework-ci/vcpkg/buildtrees/hypre/config-x64-windows-dbg-err.log
- name: 'Create nuget package for vcpkg installed packages'
shell: 'bash'
continue-on-error: true
run: |
cmake -DHASH_PACKAGE_NAME="${{ env.VCPKG_PUSH_HASH_PACKAGE_NAME }}" -DNUGET_API_KEY="${{ secrets.GITHUB_TOKEN }}" -DVCPKG_BUILD_DIR='${{ env.VCPKG_BUILD_DIR }}' -P '${{ env.BUILD_COMMANDS_ROOT }}/vcpkg_cache/DoTar.cmake'
ls -lart '${{ env.VCPKG_BUILD_DIR }}'
du -sh '${{ env.VCPKG_BUILD_DIR }}'
ls -lart '${{ env.BUILD_COMMANDS_ROOT }}/vcpkg_cache'