Skip to content

OpenSSL

OpenSSL #11

Workflow file for this run

on:
workflow_dispatch:
inputs:
openssl_version:
description: "Version of openssl we'll build."
type: string
required: true
github_tag:
description: "Tag to upload the release to."
type: string
required: true
name: OpenSSL
jobs:
build:
strategy:
fail-fast: false
matrix:
include:
- os: ubuntu-24.04
name: linux-x86_64
- os: ubuntu-24.04-arm
name: linux-aarch64
- os: macos-15-intel
name: darwin-x86_64
- os: macos-15
name: darwin-aarch64
runs-on: ${{ matrix.os }}
name: Build ${{ matrix.name }}
env:
PYTHONUNBUFFERED: 1
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install dependencies (Linux)
if: ${{ runner.os == 'Linux' }}
run: |
sudo apt-get update
sudo apt-get install -y build-essential perl zstd
- name: Install dependencies (macOS)
if: ${{ runner.os == 'macOS' }}
run: |
brew install zstd
- name: Build OpenSSL
run: ./openssl/build.py --openssl-version ${{ inputs.openssl_version }} --artifact-dir ./artifacts
- name: Upload artifacts
uses: actions/upload-artifact@v4
with:
name: openssl-${{ matrix.name }}
path: "artifacts/*.tar.zst"
retention-days: 90
release:
needs: build
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- name: Download all artifacts
uses: actions/download-artifact@v4
with:
path: artifacts
- name: Prepare release files
run: |
mkdir release
find artifacts -name "*.tar.zst" -exec cp {} release/ \;
ls -lh release/
- name: Create Release
uses: softprops/action-gh-release@v2
with:
tag_name: ${{ inputs.github_tag }}
name: OpenSSL ${{ inputs.openssl_version }}
files: release/*.tar.zst
draft: false
prerelease: false