Skip to content

Commit 77db78b

Browse files
Merge pull request #1211 from charlespierce/openssl_3
Build Volta for OpenSSL 3 / Ubuntu 22.04
2 parents 67efa91 + 5916405 commit 77db78b

File tree

4 files changed

+68
-23
lines changed

4 files changed

+68
-23
lines changed

.github/workflows/release.yml

Lines changed: 42 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ jobs:
1717
uses: actions/checkout@v2
1818
- name: Set up docker image
1919
run: docker build -t volta .
20-
working-directory: ./ci/docker
20+
working-directory: ./ci/docker-centos
2121
- name: Compile and package Volta
2222
run: docker run --volume ${PWD}:/root/workspace --workdir /root/workspace --rm --init --tty volta /root/workspace/ci/build-and-package.sh volta-centos
2323
- name: Confirm correct OpenSSL Version
@@ -30,6 +30,27 @@ jobs:
3030
name: linux-centos
3131
path: target/release/volta-centos.tar.gz
3232

33+
linux-ssl-3:
34+
name: Build - OpenSSL 3
35+
runs-on: ubuntu-latest
36+
steps:
37+
- name: Check out code
38+
uses: actions/checkout@v2
39+
- name: Set up docker image
40+
run: docker build -t volta .
41+
working-directory: ./ci/docker-ubuntu
42+
- name: Compile and package Volta
43+
run: docker run --volume ${PWD}:/root/workspace --workdir /root/workspace --rm --init --tty volta /root/workspace/ci/build-and-package.sh volta-openssl-3
44+
- name: Confirm correct OpenSSL Version
45+
run: |
46+
objdump -p target/release/volta
47+
readelf -d target/release/volta
48+
- name: Upload release artifact
49+
uses: actions/upload-artifact@v2
50+
with:
51+
name: linux-openssl-3
52+
path: target/release/volta-openssl-3.tar.gz
53+
3354
linux:
3455
strategy:
3556
matrix:
@@ -49,7 +70,7 @@ jobs:
4970
path: openssl
5071
- name: Set up docker image
5172
run: docker build -t volta .
52-
working-directory: ./ci/docker
73+
working-directory: ./ci/docker-centos
5374
- name: Compile and package OpenSSL & Volta
5475
run: docker run --volume ${PWD}:/root/workspace --workdir /root/workspace --rm --init --tty volta /root/workspace/ci/build-with-openssl.sh volta-openssl-${{ matrix.openssl }}
5576
- name: Confirm OpenSSL Version
@@ -180,6 +201,11 @@ jobs:
180201
with:
181202
name: linux-centos
182203
path: release
204+
- name: Fetch OpenSSL 3 artifact
205+
uses: actions/download-artifact@v2
206+
with:
207+
name: linux-openssl-3
208+
path: release
183209
- name: Fetch OpenSSL 1.0.* artifact
184210
uses: actions/download-artifact@v2
185211
with:
@@ -229,7 +255,16 @@ jobs:
229255
upload_url: ${{ steps.create_release.outputs.upload_url }}
230256
asset_path: ./release/volta-centos.tar.gz
231257
asset_name: volta-${{ steps.release_info.outputs.version }}-linux-openssl-rhel.tar.gz
232-
asset_content_type: applictaion/gzip
258+
asset_content_type: application/gzip
259+
- name: Upload OpenSSL 3 artifact
260+
uses: actions/upload-release-asset@v1
261+
env:
262+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
263+
with:
264+
upload_url: ${{ steps.create_release.outputs.upload_url }}
265+
asset_path: ./release/volta-openssl-3.tar.gz
266+
asset_name: volta-${{ steps.release_info.outputs.version }}-linux-openssl-3.0.tar.gz
267+
asset_content_type: application/gzip
233268
- name: Upload OpenSSL 1.0.* artifact
234269
uses: actions/upload-release-asset@v1
235270
env:
@@ -238,7 +273,7 @@ jobs:
238273
upload_url: ${{ steps.create_release.outputs.upload_url }}
239274
asset_path: ./release/volta-openssl-1_0_1.tar.gz
240275
asset_name: volta-${{ steps.release_info.outputs.version }}-linux-openssl-1.0.tar.gz
241-
asset_content_type: applictaion/gzip
276+
asset_content_type: application/gzip
242277
- name: Upload OpenSSL 1.1.* artifact
243278
uses: actions/upload-release-asset@v1
244279
env:
@@ -247,7 +282,7 @@ jobs:
247282
upload_url: ${{ steps.create_release.outputs.upload_url }}
248283
asset_path: ./release/volta-openssl-1_1_0.tar.gz
249284
asset_name: volta-${{ steps.release_info.outputs.version }}-linux-openssl-1.1.tar.gz
250-
asset_content_type: applictaion/gzip
285+
asset_content_type: application/gzip
251286
- name: Upload MacOS artifact
252287
uses: actions/upload-release-asset@v1
253288
env:
@@ -256,7 +291,7 @@ jobs:
256291
upload_url: ${{ steps.create_release.outputs.upload_url }}
257292
asset_path: ./release/volta-macos.tar.gz
258293
asset_name: volta-${{ steps.release_info.outputs.version }}-macos.tar.gz
259-
asset_content_type: applictaion/gzip
294+
asset_content_type: application/gzip
260295
- name: Upload MacOS (ARM) artifact
261296
uses: actions/upload-release-asset@v1
262297
env:
@@ -274,7 +309,7 @@ jobs:
274309
upload_url: ${{ steps.create_release.outputs.upload_url }}
275310
asset_path: ./release/volta-windows.msi
276311
asset_name: volta-${{ steps.release_info.outputs.version }}-windows-x86_64.msi
277-
asset_content_type: applictaion/x-msi
312+
asset_content_type: application/x-msi
278313
- name: Upload Windows zip
279314
uses: actions/upload-release-asset@v1
280315
env:

Cargo.lock

Lines changed: 17 additions & 16 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

ci/docker-ubuntu/Dockerfile

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
FROM ubuntu:22.04
2+
3+
# Install build tools
4+
RUN apt-get update -y; \
5+
apt-get install -y curl build-essential pkg-config libssl-dev
6+
7+
# Install Rust
8+
RUN curl https://sh.rustup.rs -sSf | sh -s -- -y --default-toolchain stable
9+
ENV PATH="/root/.cargo/bin:${PATH}"

0 commit comments

Comments
 (0)