Skip to content

Commit

Permalink
build.yml に取り込んだ修正は不要だった
Browse files Browse the repository at this point in the history
  • Loading branch information
torikizi committed Jul 30, 2024
1 parent 4bb010e commit 21b7236
Showing 1 changed file with 15 additions and 162 deletions.
177 changes: 15 additions & 162 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -1,13 +1,11 @@
name: build-workflow

on:
push:
paths-ignore:
- "doc/**"
- "**.md"
- "LICENSE"
- "NOTICE"

jobs:
build-windows:
strategy:
Expand Down Expand Up @@ -156,179 +154,35 @@ jobs:
strategy:
fail-fast: false
matrix:
platform:
- name: ubuntu-20.04_x86_64
runs-on: ubuntu-20.04
os: ubuntu
- name: ubuntu-22.04_x86_64
runs-on: ubuntu-22.04
os: ubuntu
- name: ubuntu-24.04_x86_64
runs-on: ubuntu-24.04
os: ubuntu
- name: android
runs-on: ubuntu-22.04
os: android
name: Build sora-cpp-sdk for ${{ matrix.platform.name }}
runs-on: ${{ matrix.platform.runs-on }}
name:
- ubuntu-20.04_x86_64
- ubuntu-22.04_x86_64
- ubuntu-22.04_armv8_jetson
- android
name: Build sora-cpp-sdk for ${{ matrix.name }}
runs-on: ${{ matrix.name == 'ubuntu-22.04_x86_64' && 'ubuntu-22.04' || 'ubuntu-20.04' }}
env:
TEST_SIGNALING_URL: ${{ secrets.TEST_SIGNALING_URL }}
TEST_CHANNEL_ID_PREFIX: ${{ secrets.TEST_CHANNEL_ID_PREFIX }}
TEST_SECRET_KEY: ${{ secrets.TEST_SECRET_KEY }}
TEST_MATRIX_NAME: ${{ matrix.platform.name }}
steps:
- uses: actions/checkout@v4
- name: Disk cleanup
run: |
set -x
df -h
sudo du -h -d1 /usr/local
sudo du -h -d1 /usr/local/share
sudo du -h -d1 /usr/local/lib
sudo du -h -d1 /usr/share
RMI=`docker images -q -a`
if [ -n "$RMI" ]; then
docker rmi $RMI
fi
# 4.6G
sudo rm -rf /usr/local/.ghcup
# 1.7G
sudo rm -rf /usr/share/swift
# 1.4G
sudo rm -rf /usr/share/dotnet
df -h
# Ubuntu 24.04 だと libtinfo5 が見つからない問題があるので、その修正
# ref: https://qiita.com/gengen16k/items/88cf3c18a40a94205fab
- name: Fix CUDA issues for Ubuntu 24.04
if: matrix.platform.name == 'ubuntu-24.04_x86_64'
run: |
sudo tee /etc/apt/sources.list.d/jammy.list << EOF
deb http://archive.ubuntu.com/ubuntu/ jammy universe
EOF
sudo tee /etc/apt/preferences.d/pin-jammy <<EOF
Package: *
Pin: release n=jammy
Pin-Priority: -10
Package: libtinfo5
Pin: release n=jammy
Pin-Priority: 990
EOF
- name: Install deps for ${{ matrix.platform.name }}
if: matrix.platform.os == 'ubuntu'
run: |
source VERSION
sudo apt-get update
sudo apt-get install -y software-properties-common
# X11
sudo apt-get install libx11-dev libxext-dev
# CUDA
wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/cuda-keyring_1.0-1_all.deb
sudo dpkg -i cuda-keyring_*all.deb
sudo apt-get update
DEBIAN_FRONTEND=noninteractive sudo apt-get -y install cuda=$CUDA_VERSION
# clang-18
wget https://apt.llvm.org/llvm.sh
chmod a+x llvm.sh
sudo ./llvm.sh 18
# Intel Media SDK のために libva-dev, libdrm-dev を入れる
DEBIAN_FRONTEND=noninteractive sudo apt-get -y install libva-dev libdrm-dev
- name: Install deps for Jetson series
if: matrix.name == 'ubuntu-20.04_armv8_jetson' || matrix.name == 'ubuntu-22.04_armv8_jetson'
run: |
sudo apt-get update
sudo apt-get -y install multistrap binutils-aarch64-linux-gnu
# multistrap に insecure なリポジトリからの取得を許可する設定を入れる
sudo sed -e 's/Apt::Get::AllowUnauthenticated=true/Apt::Get::AllowUnauthenticated=true";\n$config_str .= " -o Acquire::AllowInsecureRepositories=true/' -i /usr/sbin/multistrap
- name: Install deps for Android
if: matrix.platform.os == 'android'
run: |
sudo apt-get -y install ninja-build
# JDK を指定しないとデフォルトの JDK 11 で動作するため指定する
- name: Setup JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
if: matrix.platform.os == 'android'
- name: Setup Android SDK
uses: android-actions/setup-android@v3
if: matrix.platform.os == 'android'
- run: python3 run.py --test --run-e2e-test --package ${{ matrix.platform.name }}
- name: Get package name
run: |
source _package/${{ matrix.platform.name }}/release/sora.env
echo "name=${PACKAGE_NAME}" >> $GITHUB_OUTPUT
echo "boost_name=${BOOST_PACKAGE_NAME}" >> $GITHUB_OUTPUT
id: package_name
- name: Upload Artifact
uses: actions/upload-artifact@v4
with:
name: ${{ steps.package_name.outputs.name }}
path: _package/${{ matrix.platform.name }}/release/${{ steps.package_name.outputs.name }}
- name: Upload Boost Artifact
uses: actions/upload-artifact@v4
with:
name: ${{ steps.package_name.outputs.boost_name }}
path: _package/${{ matrix.platform.name }}/release/${{ steps.package_name.outputs.boost_name }}
- name: Upload Environment
uses: actions/upload-artifact@v4
with:
name: ${{ matrix.platform.name }}.env
path: _package/${{ matrix.platform.name }}/release/sora.env
# Examples のビルド
- name: Build Examples
run: |
cd examples
mkdir examples_${{ matrix.platform.name }}
for app in sdl_sample sumomo messaging_recvonly_sample; do
@@ -282,13 +290,13 @@ jobs:
python3 $app/${{ matrix.platform.name }}/run.py --local-sora-cpp-sdk-dir ..
cp _build/${{ matrix.platform.name }}/release/$app/$app examples_${{ matrix.platform.name }}
done
if: matrix.platform.os == 'ubuntu'
if: matrix.name == 'ubuntu-20.04_x86_64' || matrix.name == 'ubuntu-22.04_x86_64' || matrix.name == 'ubuntu-22.04_armv8_jetson'
- name: Upload Examples Artifact
uses: actions/upload-artifact@v4
with:
name: examples_${{ matrix.platform.name }}
path: examples/examples_${{ matrix.platform.name }}
if: matrix.platform.os == 'ubuntu'
name: examples_${{ matrix.name }}
path: examples/examples_${{ matrix.name }}
if: matrix.name == 'ubuntu-20.04_x86_64' || matrix.name == 'ubuntu-22.04_x86_64' || matrix.name == 'ubuntu-22.04_armv8_jetson'

create-release:
name: Create Release
if: contains(github.ref, 'tags/202')
needs:
- build-windows
- build-macos
- build-ubuntu
runs-on: ubuntu-latest
steps:
@@ -302,7 +310,25 @@ jobs:
- uses: actions/checkout@v4
- uses: ./.github/actions/download
with:
platform: windows_x86_64
- uses: ./.github/actions/download
with:
platform: macos_arm64
- uses: ./.github/actions/download
with:
platform: ios
- uses: ./.github/actions/download
with:
platform: ubuntu-20.04_x86_64
- uses: ./.github/actions/download
with:
platform: ubuntu-22.04_x86_64
- uses: ./.github/actions/download
with:
platform: ubuntu-24.04_x86_64
- uses: ./.github/actions/download
with:
platform: android
platform: ubuntu-22.04_armv8_jetson
- name: Env to output
run: |
echo "package_paths<<EOF" >> $GITHUB_OUTPUT
Expand All @@ -340,7 +194,6 @@ jobs:
with:
files: ${{ steps.env.outputs.package_paths }}
prerelease: ${{ contains(github.ref, 'canary') }}

notification:
name: Slack Notification
runs-on: ubuntu-latest
Expand All @@ -361,4 +214,4 @@ jobs:
SLACK_CHANNEL: sora-cpp-sdk
SLACK_COLOR: danger
SLACK_TITLE: Build failed
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}
SLACK_WEBHOOK: ${{ secrets.SLACK_WEBHOOK }}

0 comments on commit 21b7236

Please sign in to comment.