@@ -14,142 +14,194 @@ on:
1414 description : If true, publish slow-building deps as well
1515
1616jobs :
17- build_macos :
18- # Not sure if we actually need x64 macos-latest
19- runs-on : macos-latest
20-
21- steps :
22- - name : Checkout code
23- uses : actions/checkout@v4
24- with :
25- ref : releases/${{ inputs.ref }}
26-
27-
28- - name : Install dependencies
29- run : |
30- cmake --version
31- python --version
32- ninja --version
33- brew install buf
34- python -m pip install conan
35-
36- - name : Set up python/conan
37- env :
38- CONAN_REMOTE_URL : ${{ secrets.conanRemote }}
39- CONAN_LOGIN_USERNAME_VIAMCONAN : ${{ secrets.conanUsername}}
40- CONAN_PASSWORD_VIAMCONAN : ${{ secrets.conanPassword }}
41- run : |
42- conan profile detect
43- conan remote add viamconan $CONAN_REMOTE_URL
44- conan remote auth -cc core:non_interactive=True viamconan
45-
46- - name : Create and upload package
47- run : |
48- # `buf` tries to read a CLI config file that we don't actually use located at
49- # ~/.config/buf/config.yaml. We don't always have permission to access this
50- # directory in CI, so we set the `BUF_CONFIG_DIR` to some other value that we
51- # do have permissions for. See https://github.com/bufbuild/buf/issues/2698 for
52- # more details.
53- export BUF_CONFIG_DIR=$(mktemp -d)
54- conan create . --build=missing -s:a compiler.cppstd=17 -o:a "&:shared=False"
55- conan upload "viam-cpp-sdk/*" -r viamconan -c
56-
57- - name : Upload additional deps
58- if : inputs.upload_deps
59- run : |
60- conan upload "boost/*" -r viamconan -c
61- conan upload "grpc/*" -r viamconan -c
62- conan upload "protobuf/*" -r viamconan -c
63-
64-
65- build_linux :
66- strategy :
67- fail-fast : false
68- matrix :
69- runner : [buildjet-8vcpu-ubuntu-2204, buildjet-8vcpu-ubuntu-2204-arm]
70- image : [ubuntu:22.04, debian:bookworm]
71- runs-on : ${{ matrix.runner }}
72- container :
73- image : ${{ matrix.image }}
17+ # build_macos:
18+ # # Not sure if we actually need x64 macos-latest
19+ # runs-on: macos-latest
20+
21+ # steps:
22+ # - name: Checkout code
23+ # uses: actions/checkout@v4
24+ # with:
25+ # ref: releases/${{ inputs.ref }}
26+
27+
28+ # - name: Install dependencies
29+ # run: |
30+ # cmake --version
31+ # python --version
32+ # ninja --version
33+ # brew install buf
34+ # python -m pip install conan
35+
36+ # - name: Set up python/conan
37+ # env:
38+ # CONAN_REMOTE_URL: ${{ secrets.conanRemote }}
39+ # CONAN_LOGIN_USERNAME_VIAMCONAN: ${{ secrets.conanUsername}}
40+ # CONAN_PASSWORD_VIAMCONAN: ${{ secrets.conanPassword }}
41+ # run: |
42+ # conan profile detect
43+ # conan remote add viamconan $CONAN_REMOTE_URL
44+ # conan remote auth -cc core:non_interactive=True viamconan
45+
46+ # - name: Create and upload package
47+ # run: |
48+ # # `buf` tries to read a CLI config file that we don't actually use located at
49+ # # ~/.config/buf/config.yaml. We don't always have permission to access this
50+ # # directory in CI, so we set the `BUF_CONFIG_DIR` to some other value that we
51+ # # do have permissions for. See https://github.com/bufbuild/buf/issues/2698 for
52+ # # more details.
53+ # export BUF_CONFIG_DIR=$(mktemp -d)
54+ # conan create . --build=missing -s:a compiler.cppstd=17 -o:a "&:shared=False"
55+ # conan upload "viam-cpp-sdk/*" -r viamconan -c
56+
57+ # - name: Upload additional deps
58+ # if: inputs.upload_deps
59+ # run: |
60+ # conan upload "boost/*" -r viamconan -c
61+ # conan upload "grpc/*" -r viamconan -c
62+ # conan upload "protobuf/*" -r viamconan -c
63+
64+
65+ # build_linux:
66+ # strategy:
67+ # fail-fast: false
68+ # matrix:
69+ # runner: [buildjet-8vcpu-ubuntu-2204, buildjet-8vcpu-ubuntu-2204-arm]
70+ # image: [ubuntu:22.04, debian:bookworm]
71+ # runs-on: ${{ matrix.runner }}
72+ # container:
73+ # image: ${{ matrix.image }}
74+
75+ # steps:
76+ # - name: Checkout code
77+ # uses: actions/checkout@v4
78+ # with:
79+ # ref: releases/${{ inputs.ref }}
80+
81+ # - name: Show platform info
82+ # run: |
83+ # uname -a
84+ # cat /etc/os-release
85+
86+ # - name: Install common deps
87+ # run: |
88+ # apt-get update
89+ # apt-get -y dist-upgrade
90+ # DEBIAN_FRONTEND=noninteractive apt-get -y --no-install-recommends install \
91+ # autoconf \
92+ # automake \
93+ # build-essential \
94+ # ca-certificates \
95+ # curl \
96+ # doxygen \
97+ # g++ \
98+ # gdb \
99+ # gnupg \
100+ # gpg \
101+ # less \
102+ # ninja-build \
103+ # python3 \
104+ # python3-pip \
105+ # python3-venv \
106+ # software-properties-common \
107+ # sudo \
108+ # wget \
109+
110+ # c++ --version
111+ # ldd --version
112+
113+ # - name: Install cmake (jammy)
114+ # if: matrix.image == 'ubuntu:22.04'
115+ # run: |
116+ # sudo wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | sudo gpg --dearmor - | sudo tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null
117+ # sudo echo 'deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ jammy main' | sudo tee /etc/apt/sources.list.d/kitware.list >/dev/null
118+
119+ # apt-get update
120+ # apt-get -y install cmake=3.25.2-0kitware1ubuntu22.04.1 cmake-data=3.25.2-0kitware1ubuntu22.04.1
121+
122+ # - name: Install cmake (bookworm)
123+ # if: matrix.image == 'debian:bookworm'
124+ # run: DEBIAN_FRONTEND=noninteractive apt-get -y --no-install-recommends install cmake
125+
126+ # - name: Set up python/conan
127+ # env:
128+ # CONAN_REMOTE_URL: ${{ secrets.conanRemote }}
129+ # CONAN_LOGIN_USERNAME_VIAMCONAN: ${{ secrets.conanUsername}}
130+ # CONAN_PASSWORD_VIAMCONAN: ${{ secrets.conanPassword }}
131+ # run: |
132+ # python3 -m venv ./conan_venv
133+ # . ./conan_venv/bin/activate
134+
135+ # pip install conan
136+
137+ # conan profile detect
138+ # conan remote add viamconan $CONAN_REMOTE_URL
139+ # conan remote auth -cc core:non_interactive=True viamconan
140+
141+ # - name: Create and upload package
142+ # run: |
143+ # . ./conan_venv/bin/activate
144+
145+ # conan create . --build=missing -s:a compiler.cppstd=17 -o:a "&:shared=False"
146+ # conan upload "viam-cpp-sdk/*" -r viamconan -c
147+
148+ # - name: Upload additional deps
149+ # if: inputs.upload_deps && !(matrix.runner == 'buildjet-8vcpu-ubuntu-2204' && matrix.image == 'ubuntu:22.04')
150+ # run: |
151+ # conan upload "boost/*" -r viamconan -c
152+ # conan upload "grpc/*" -r viamconan -c
153+ # conan upload "protobuf/*" -r viamconan -c
154+
155+ build_windows :
156+ runs-on : windows-latest
74157
75158 steps :
76159 - name : Checkout code
77160 uses : actions/checkout@v4
78161 with :
79162 ref : releases/${{ inputs.ref }}
80163
81- - name : Show platform info
82- run : |
83- uname -a
84- cat /etc/os-release
85-
86- - name : Install common deps
87- run : |
88- apt-get update
89- apt-get -y dist-upgrade
90- DEBIAN_FRONTEND=noninteractive apt-get -y --no-install-recommends install \
91- autoconf \
92- automake \
93- build-essential \
94- ca-certificates \
95- curl \
96- doxygen \
97- g++ \
98- gdb \
99- gnupg \
100- gpg \
101- less \
102- ninja-build \
103- python3 \
104- python3-pip \
105- python3-venv \
106- software-properties-common \
107- sudo \
108- wget \
109-
110- c++ --version
111- ldd --version
112-
113- - name : Install cmake (jammy)
114- if : matrix.image == 'ubuntu:22.04'
115- run : |
116- sudo wget -O - https://apt.kitware.com/keys/kitware-archive-latest.asc 2>/dev/null | sudo gpg --dearmor - | sudo tee /usr/share/keyrings/kitware-archive-keyring.gpg >/dev/null
117- sudo echo 'deb [signed-by=/usr/share/keyrings/kitware-archive-keyring.gpg] https://apt.kitware.com/ubuntu/ jammy main' | sudo tee /etc/apt/sources.list.d/kitware.list >/dev/null
118-
119- apt-get update
120- apt-get -y install cmake=3.25.2-0kitware1ubuntu22.04.1 cmake-data=3.25.2-0kitware1ubuntu22.04.1
121-
122- - name : Install cmake (bookworm)
123- if : matrix.image == 'debian:bookworm'
124- run : DEBIAN_FRONTEND=noninteractive apt-get -y --no-install-recommends install cmake
164+ - name : Install dependencies
165+ run : choco install -y conan git
125166
126167 - name : Set up python/conan
127168 env :
128169 CONAN_REMOTE_URL : ${{ secrets.conanRemote }}
129170 CONAN_LOGIN_USERNAME_VIAMCONAN : ${{ secrets.conanUsername}}
130- CONAN_PASSWORD_VIAMCONAN : ${{ secrets.conanPassword }}
171+ CONAN_USER_HOME : c:/cache
172+ CONAN_USER_HOME_SHORT : c:/cache/conan_shortpaths
173+ shell : powershell
131174 run : |
132- python3 -m venv ./conan_venv
133- . ./conan_venv/bin/activate
134-
135- pip install conan
175+ Import-Module $env:ChocolateyInstall\helpers\chocolateyProfile.psm1
176+ refreshenv
136177
137178 conan profile detect
138- conan remote add viamconan $CONAN_REMOTE_URL
179+
180+ conan remote add viamconan $env:CONAN_REMOTE_URL
139181 conan remote auth -cc core:non_interactive=True viamconan
140182
141183 - name : Create and upload package
184+ shell : powershell
142185 run : |
143- . ./conan_venv/bin/activate
186+ Import-Module $env:ChocolateyInstall\helpers\chocolateyProfile.psm1
187+ refreshenv
144188
145- conan create . --build=missing -s:a compiler.cppstd=17 -o:a "&:shared=False"
189+ conan create . --build=missing -o "&:shared=False" -s compiler.cppstd=17
146190 conan upload "viam-cpp-sdk/*" -r viamconan -c
191+ env :
192+ CONAN_USER_HOME : c:/cache
193+ CONAN_USER_HOME_SHORT : c:/cache/conan_shortpaths
147194
148195 - name : Upload additional deps
149- if : inputs.upload_deps && !(matrix.runner == 'buildjet-8vcpu-ubuntu-2204' && matrix.image == 'ubuntu:22.04')
196+ if : inputs.upload_deps
197+ shell : powershell
150198 run : |
151- . ./conan_venv/bin/activate
199+ Import-Module $env:ChocolateyInstall\helpers\chocolateyProfile.psm1
200+ refreshenv
152201
153202 conan upload "boost/*" -r viamconan -c
154203 conan upload "grpc/*" -r viamconan -c
155204 conan upload "protobuf/*" -r viamconan -c
205+ env :
206+ CONAN_USER_HOME : c:/cache
207+ CONAN_USER_HOME_SHORT : c:/cache/conan_shortpaths
0 commit comments