Skip to content

Merge branch 'acidanthera:master' into YamingNetwork #228

Merge branch 'acidanthera:master' into YamingNetwork

Merge branch 'acidanthera:master' into YamingNetwork #228

Workflow file for this run

name: CI
on:
push:
pull_request:
workflow_dispatch:
release:
types: [published]
env:
PROJECT_TYPE: UEFI
FORCE_INSTALL: 1
HAS_OPENSSL_BUILD: 1
HAS_OPENSSL_W32BUILD: 0
WERROR: 1
jobs:
build-macos:
name: macOS XCODE5
runs-on: macos-latest
env:
JOB_TYPE: BUILD
HOMEBREW_NO_INSTALL_CLEANUP: 1
HOMEBREW_NO_AUTO_UPDATE: 1
steps:
- uses: actions/checkout@v4
- name: 添加Linux工具链
run: brew tap FiloSottile/homebrew-musl-cross
- name: 安装Linux工具链
run: brew install musl-cross
env:
HOMEBREW_NO_INSTALL_CLEANUP: 1
HOMEBREW_NO_AUTO_UPDATE: 1
- name: install tools
run: brew install openssl mingw-w64
- name: ci-bootstrap
run: |
src=$(/usr/bin/curl -LfsS https://raw.githubusercontent.com/wy414012/ocbuild/Yaming/ci-bootstrap.sh) && eval "$src" || exit 1
- run: ./build_duet.tool
- run: ./build_oc.tool
- name: set key
env:
SSH_PRIVATE_KEY: ${{ secrets.GIT_PRIVATE_KEY }}
run: |
mkdir -p ~/.ssh
echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_ed25519
chmod 600 ~/.ssh/id_ed25519
echo "StrictHostKeyChecking no" >> ~/.ssh/config
- name: push web server
env:
SECRET_CHECK_SCRIPT_URL: ${{ secrets.SECRET_CHECK_SCRIPT_URL }}
run: scp -r ./Binaries/*.zip ${SECRET_CHECK_SCRIPT_URL}OC/macos_build/
- name: upload artifact
uses: actions/upload-artifact@v4
with:
name: macOS XCODE5 Artifacts
path: Binaries/*.zip
- name: push release
if: github.event_name == 'release'
uses: svenstaro/upload-release-action@04733e069f2d7f7f0b4aebc4fbdbce8613b03ccd # v2.9.0
with:
repo_token: ${{ secrets.GITHUB_TOKEN }}
file: Binaries/*.zip
tag: ${{ github.ref }}
file_glob: true
build-linux-clangpdb:
name: Linux CLANGPDB
runs-on: ubuntu-24.04
env:
TOOLCHAINS: CLANGPDB
steps:
- uses: actions/checkout@v4
- name: Apply Docker AppArmor settings
run: |
src=$(/usr/bin/curl -LfsS https://raw.githubusercontent.com/acidanthera/ocbuild/master/docker-apparmor.sh) && eval "$src" || exit 1
- name: Use Docker in rootless mode.
uses: ScribeMD/[email protected]
- name: ./build_duet.tool
run: docker compose run build-duet
- name: ./build_oc.tool
run: docker compose run build-oc
- name: set keys
env:
SSH_PRIVATE_KEY: ${{ secrets.GIT_PRIVATE_KEY }}
run: |
mkdir -p ~/.ssh
echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_ed25519
chmod 600 ~/.ssh/id_ed25519
echo "StrictHostKeyChecking no" >> ~/.ssh/config
- name: push web-server
env:
SECRET_CHECK_SCRIPT_URL: ${{ secrets.SECRET_CHECK_SCRIPT_URL }}
run: scp -r ./Binaries/*.zip ${SECRET_CHECK_SCRIPT_URL}OC/linux_build/CLANGPDB/
- name: Upload to Artifacts
uses: actions/upload-artifact@v4
with:
name: Linux CLANGPDB Artifacts
path: Binaries/*.zip
build-linux-gcc5:
name: Linux GCC
runs-on: ubuntu-24.04
env:
TOOLCHAINS: GCC
steps:
- uses: actions/checkout@v4
- name: Apply Docker AppArmor settings
run: |
src=$(/usr/bin/curl -LfsS https://raw.githubusercontent.com/acidanthera/ocbuild/master/docker-apparmor.sh) && eval "$src" || exit 1
- name: Use Docker in rootless mode.
uses: ScribeMD/[email protected]
- name: ./build_duet.tool
run: docker compose run build-duet
- name: ./build_oc.tool
run: docker compose run build-oc
- name: set keys
env:
SSH_PRIVATE_KEY: ${{ secrets.GIT_PRIVATE_KEY }}
run: |
mkdir -p ~/.ssh
echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_ed25519
chmod 600 ~/.ssh/id_ed25519
echo "StrictHostKeyChecking no" >> ~/.ssh/config
- name: push web-server
env:
SECRET_CHECK_SCRIPT_URL: ${{ secrets.SECRET_CHECK_SCRIPT_URL }}
run: scp -r ./Binaries/*.zip ${SECRET_CHECK_SCRIPT_URL}OC/linux_build/GCC5/
- name: Upload to Artifacts
uses: actions/upload-artifact@v4
with:
name: Linux GCC Artifacts
path: Binaries/*.zip
build-linux-clangdwarf:
name: Linux CLANGDWARF
runs-on: ubuntu-24.04
env:
TOOLCHAINS: CLANGDWARF
steps:
- uses: actions/checkout@v4
- name: Apply Docker AppArmor settings
run: |
src=$(/usr/bin/curl -LfsS https://raw.githubusercontent.com/acidanthera/ocbuild/master/docker-apparmor.sh) && eval "$src" || exit 1
- name: Use Docker in rootless mode.
uses: ScribeMD/[email protected]
- name: ./build_duet.tool
run: docker compose run build-duet
- name: ./build_oc.tool
run: docker compose run build-oc
- name: set keys
env:
SSH_PRIVATE_KEY: ${{ secrets.GIT_PRIVATE_KEY }}
run: |
mkdir -p ~/.ssh
echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_ed25519
chmod 600 ~/.ssh/id_ed25519
echo "StrictHostKeyChecking no" >> ~/.ssh/config
- name: push web-server
env:
SECRET_CHECK_SCRIPT_URL: ${{ secrets.SECRET_CHECK_SCRIPT_URL }}
run: scp -r ./Binaries/*.zip ${SECRET_CHECK_SCRIPT_URL}OC/linux_build/CLANGDWARF/
- name: 上传工件
uses: actions/upload-artifact@v4
with:
name: Linux CLANGDWARF Artifacts
path: Binaries/*.zip
build-linux-docs:
name: Linux Docs
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v4
- name: Apply Docker AppArmor settings
run: |
src=$(/usr/bin/curl -LfsS https://raw.githubusercontent.com/acidanthera/ocbuild/master/docker-apparmor.sh) && eval "$src" || exit 1
- name: Use Docker in rootless mode.
uses: ScribeMD/[email protected]
- name: Docs
run: docker compose run build-docs
build-windows:
name: Windows VS2022
runs-on: windows-latest
env:
HAS_OPENSSL_BUILD: 0
CC: gcc
defaults:
run:
shell: bash
steps:
- uses: actions/checkout@v4
- name: install tools
run: |
choco install make nasm zip iasl --no-progress
- name: ci-bootstrap
run: |
src=$(curl -LfsS https://raw.githubusercontent.com/wy414012/ocbuild/Yaming/ci-bootstrap.sh) && eval "$src" || exit 1
- run: ./build_duet.tool
- run: ./build_oc.tool
- name: set keys
env:
SSH_PRIVATE_KEY: ${{ secrets.GIT_PRIVATE_KEY }}
run: |
mkdir -p ~/.ssh
echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_ed25519
chmod 600 ~/.ssh/id_ed25519
echo "StrictHostKeyChecking no" >> ~/.ssh/config
- name: push web-server
env:
SECRET_CHECK_SCRIPT_URL: ${{ secrets.SECRET_CHECK_SCRIPT_URL }}
run: scp -r ./Binaries/*.zip ${SECRET_CHECK_SCRIPT_URL}OC/windows_build/
- name: upload artifact
uses: actions/upload-artifact@v4
with:
name: Windows Artifacts
path: Binaries/*.zip