Skip to content

Reimplement jni prefixing #80

Reimplement jni prefixing

Reimplement jni prefixing #80

Workflow file for this run

name: build
on:
workflow_dispatch:
inputs:
commitHash:
description: 'webrtc-sdk commit hash'
default: ''
required: true
push:
paths-ignore:
- '**.md'
- 'LICENSE'
- 'NOTICE'
- '.gitignore'
- '.dockerignore'
branches-ignore:
- daily
tags:
- '*'
jobs:
# build-windows:
# defaults:
# run:
# working-directory: .\\build
# strategy:
# fail-fast: false
# matrix:
# name:
# - windows_x86_64
# - windows_arm64
# runs-on: windows-2019
# steps:
# - uses: actions/checkout@v2
# - name: Disk Cleanup
# run: |
# Get-PSDrive
# # Cache 済み Docker Image の削除
# # Clean unused docker images
# docker rmi $(docker images -q -a)
# # Android SDK の削除
# # Delete Android SDK
# Remove-Item -Recurse -Force $Env:ANDROID_HOME -ErrorAction Ignore
# Remove-Item -Recurse -Force $Env:ANDROID_NDK_HOME -ErrorAction Ignore
# # JVM の削除
# # Delete JVM
# Remove-Item -Recurse -Force $Env:JAVA_HOME_11_X64 -ErrorAction Ignore
# Remove-Item -Recurse -Force $Env:JAVA_HOME_8_X64 -ErrorAction Ignore
# Get-PSDrive
# - run: "& .\\build.${{ matrix.name }}.ps1 \"${{ github.event.inputs.commitHash }}\""
# - name: Upload Artifact
# uses: actions/upload-artifact@v1
# with:
# name: webrtc.${{ matrix.name }}.zip
# path: build\_package\${{ matrix.name }}\webrtc.zip
# build-macos:
# defaults:
# run:
# working-directory: ./build
# strategy:
# fail-fast: false
# matrix:
# name:
# - macos_arm64
# - macos_x86_64
# - ios
# runs-on: macos-11
# steps:
# - uses: actions/checkout@v2
# - name: Select Xcode 13.0
# run: sudo xcode-select --switch /Applications/Xcode_13.0.app/Contents/Developer
# - run: brew install ninja
# - run: ./build.${{ matrix.name }}.sh "${{ github.event.inputs.commitHash }}"
# - name: Upload Artifact
# uses: actions/upload-artifact@v1
# with:
# name: webrtc.${{ matrix.name }}.tar.gz
# path: build/_package/${{ matrix.name }}/webrtc.tar.gz
build-linux:
defaults:
run:
working-directory: ./build
strategy:
fail-fast: false
matrix:
name:
# - raspberry-pi-os_armv6
# - raspberry-pi-os_armv7
# - raspberry-pi-os_armv8
# - ubuntu-18.04_armv8
# - ubuntu-20.04_armv8
# - ubuntu-18.04_x86_64
# - ubuntu-20.04_x86_64
# - ubuntu-22.04_x86_64
- android
- android_prefixed
runs-on: buildjet-4vcpu-ubuntu-2204
steps:
- uses: actions/checkout@v2
- name: Disk Cleanup
run: |
df -h
docker container prune -f
docker image prune -a -f
# 3.9GB
sudo rm -rf /usr/local/share/boost
# 17GB
sudo rm -rf /usr/share/dotnet
df -h
- run: ./build.${{ matrix.name }}.sh "${{ github.event.inputs.commitHash }}"
- name: Upload Artifact
uses: actions/upload-artifact@v1
with:
name: webrtc.${{ matrix.name }}.tar.gz
path: build/_package/${{ matrix.name }}/webrtc.tar.gz
create-release:
name: Create Release
if: contains(github.ref, 'tags/m')
needs:
# - build-windows
# - build-macos
- build-linux
runs-on: ubuntu-20.04
steps:
- name: Create Release
id: create_release
uses: actions/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
draft: false
prerelease: false
- name: Output upload url
shell: bash
run: echo "UPLOAD_URL='${{ steps.create_release.outputs.upload_url }}'" > create-release.env
- name: Upload create-release Environment
uses: actions/upload-artifact@v1
with:
name: create-release.env
path: create-release.env
upload-assets:
strategy:
fail-fast: false
matrix:
name:
# - macos_arm64
# - macos_x86_64
# - ios
# - raspberry-pi-os_armv6
# - raspberry-pi-os_armv7
# - raspberry-pi-os_armv8
# - ubuntu-18.04_armv8
# - ubuntu-20.04_armv8
# - ubuntu-18.04_x86_64
# - ubuntu-20.04_x86_64
# - ubuntu-22.04_x86_64
- android
- android_prefixed
name: Release ${{ matrix.name }}
if: contains(github.ref, 'tags/m')
needs:
- create-release
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Download ${{ matrix.name }}
uses: actions/download-artifact@v1
with:
name: webrtc.${{ matrix.name }}.tar.gz
- uses: actions/download-artifact@v1
with:
name: create-release.env
- name: Env to output
shell: bash
run: |
source create-release.env/create-release.env
echo "::set-output name=upload_url::$UPLOAD_URL"
id: env
- name: Upload ${{ matrix.name }} Release Asset
uses: actions/[email protected]
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.env.outputs.upload_url }}
asset_path: webrtc.${{ matrix.name }}.tar.gz/webrtc.tar.gz
asset_name: webrtc.${{ matrix.name }}.tar.gz
asset_content_type: application/gzip
# Windows だけ Content-Type が違うので別で記述する
# Windows has a different Content-Type, so handle it separately.
# upload-assets-windows:
# strategy:
# fail-fast: false
# matrix:
# name:
# - windows_x86_64
# - windows_arm64
# name: Upload windows
# if: contains(github.ref, 'tags/m')
# needs:
# - create-release
# runs-on: ubuntu-latest
# steps:
# - name: Checkout code
# uses: actions/checkout@v2
# - name: Download ${{ matrix.name }}
# uses: actions/download-artifact@v1
# with:
# name: webrtc.${{ matrix.name }}.zip
# - uses: actions/download-artifact@v1
# with:
# name: create-release.env
# - name: Env to output
# shell: bash
# run: |
# source create-release.env/create-release.env
# echo "::set-output name=upload_url::$UPLOAD_URL"
# id: env
# - name: Upload windows Release Asset
# uses: actions/[email protected]
# env:
# GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
# with:
# upload_url: ${{ steps.env.outputs.upload_url }}
# asset_path: webrtc.${{ matrix.name }}.zip/webrtc.zip
# asset_name: webrtc.${{ matrix.name }}.zip
# asset_content_type: application/zip