Inhaltsverzeichnis
7. CI/CD
In this chapter you'll learn how to automate the OpenSSL build.
What is CI/CD?
CI = Continuous Integration CD = Continuous Delivery/Deployment
Developer → Git Push → Build → Test → Artifact → Deployment
└─────── automatic ──────────────────┘
Why Automate?
| Manual | Automatic |
| ——– | ———– |
| Humans make mistakes | Always same process |
| „Works on my machine“ | Reproducible builds |
| Waiting for build person | Immediately available |
| No documentation | Git history as proof |
Overview
| Platform | Description | Page |
| ———- | ————- | —— |
| GitHub Actions | Free for public repos | 7.1 GitHub Actions |
| Azure DevOps | Enterprise, self-hosted possible | azure-devops |
| GitLab CI | Self-hosted popular | - |
| Jenkins | Self-hosted, very flexible | - |
Simple Concept
┌──────────────┐ ┌──────────────┐ ┌──────────────┐ │ TRIGGER │────▶│ BUILD │────▶│ ARTIFACT │ │ │ │ │ │ │ │ - Git Push │ │ - Checkout │ │ - DLLs │ │ - Schedule │ │ - Configure │ │ - NuGet │ │ - Manual │ │ - nmake │ │ - File Share │ └──────────────┘ └──────────────┘ └──────────────┘
Quick Start: GitHub Actions
# .github/workflows/build-openssl.yml name: Build OpenSSL on: push: branches: [ main ] workflow_dispatch: # Manual start jobs: build-windows: runs-on: windows-latest steps: - uses: actions/checkout@v4 - name: Install Perl run: choco install strawberryperl -y - name: Install NASM run: choco install nasm -y - name: Build OpenSSL shell: cmd run: | call "C:\Program Files\Microsoft Visual Studio\2022\Enterprise\VC\Auxiliary\Build\vcvars64.bat" cd src perl Configure VC-WIN64A --prefix=%cd%\..\bin nmake nmake install_sw - name: Upload Artifact uses: actions/upload-artifact@v4 with: name: openssl-win-x64 path: bin/
Prerequisites for CI/CD
| Requirement | GitHub Actions | Azure DevOps |
| ————- | —————- | ————– |
| Account | GitHub account | Azure account |
| Repository | Yes | Yes |
| Runner | Hosted (free) | Hosted or self-hosted |
| Windows build | ✓ windows-latest | ✓ windows-latest |
| Linux build | ✓ ubuntu-latest | ✓ ubuntu-latest |
Continue to
Wolfgang van der Stille @ EMSR DATA d.o.o. - Post-Quantum Cryptography Professional
Zuletzt geändert: on 2026/01/29 at 09:23 PM