feat: upgrade header file to 4.4.0 (#26) #68
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
on: | |
push: | |
branches: | |
- main | |
- release/** | |
tags: | |
- v*.*.** | |
pull_request: | |
branches: | |
- main | |
- release/** | |
jobs: | |
cmake_build_android: | |
name: Build Android | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: nttld/setup-ndk@v1 | |
id: setup-ndk | |
with: | |
ndk-version: r21e | |
- uses: seanmiddleditch/gha-setup-ninja@master | |
- name: Run cmake build android | |
env: | |
ANDROID_NDK: ${{ steps.setup-ndk.outputs.ndk-path }} | |
run: | | |
ls $ANDROID_NDK | |
bash scripts/build-android.sh | |
OUTPUT_ARTIFACTORY_NAME="VideoObserver_Plugin_for_Android" | |
OUTPUT_ARTIFACTORY_PATH=output/${OUTPUT_ARTIFACTORY_NAME} | |
mkdir -p ${OUTPUT_ARTIFACTORY_PATH} | |
cp -RP build/android/ALL_ARCHITECTURE/output/Release/ ${OUTPUT_ARTIFACTORY_PATH} | |
ZIP_FILE_NAME="${OUTPUT_ARTIFACTORY_NAME}.zip" | |
pushd output | |
zip -r -y "$ZIP_FILE_NAME" $OUTPUT_ARTIFACTORY_NAME | |
popd | |
- name: Release | |
uses: softprops/action-gh-release@v1 | |
if: startsWith(github.ref, 'refs/tags/') | |
with: | |
files: | | |
output/*.zip | |
- name: Release | |
uses: softprops/action-gh-release@v1 | |
if: ${{ github.event_name == 'push' }} | |
with: | |
draft: true | |
files: | | |
output/*.zip | |
cmake_build_ios: | |
name: Build ios | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Run cmake build ios | |
run: | | |
bash scripts/build-ios.sh | |
OUTPUT_ARTIFACTORY_NAME="VideoObserver_Plugin_for_iOS" | |
OUTPUT_ARTIFACTORY_PATH=output/${OUTPUT_ARTIFACTORY_NAME} | |
mkdir -p ${OUTPUT_ARTIFACTORY_PATH} | |
cp -RP build/ios/ALL_ARCHITECTURE/output/Release/ ${OUTPUT_ARTIFACTORY_PATH} | |
ZIP_FILE_NAME="${OUTPUT_ARTIFACTORY_NAME}.zip" | |
pushd output | |
zip -r -y "$ZIP_FILE_NAME" $OUTPUT_ARTIFACTORY_NAME | |
popd | |
- name: Release | |
uses: softprops/action-gh-release@v1 | |
if: startsWith(github.ref, 'refs/tags/') | |
with: | |
files: | | |
output/*.zip | |
- name: Release | |
uses: softprops/action-gh-release@v1 | |
if: ${{ github.event_name == 'push' }} | |
with: | |
draft: true | |
files: | | |
output/*.zip | |
cmake_build_macos: | |
name: Build macos | |
runs-on: macos-latest | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Run cmake build macos | |
run: | | |
bash scripts/build-mac.sh | |
OUTPUT_ARTIFACTORY_NAME="VideoObserver_Plugin_for_macOS" | |
OUTPUT_ARTIFACTORY_PATH=output/${OUTPUT_ARTIFACTORY_NAME} | |
mkdir -p ${OUTPUT_ARTIFACTORY_PATH} | |
cp -RP build/mac/MAC/output/Release/ ${OUTPUT_ARTIFACTORY_PATH} | |
ZIP_FILE_NAME="${OUTPUT_ARTIFACTORY_NAME}.zip" | |
pushd output | |
zip -r -y "$ZIP_FILE_NAME" $OUTPUT_ARTIFACTORY_NAME | |
popd | |
lipo -remove arm64 build/mac/MAC/output/Release/AgoraRawDataPlugin.dylib -o output/VideoObserverPlugin_x64.dylib | |
lipo -remove x86_64 build/mac/MAC/output/Release/AgoraRawDataPlugin.dylib -o output/VideoObserverPlugin_arm64.dylib | |
- name: Release | |
uses: softprops/action-gh-release@v1 | |
if: startsWith(github.ref, 'refs/tags/') | |
with: | |
files: | | |
output/*.zip | |
output/*.dylib | |
- name: Release | |
uses: softprops/action-gh-release@v1 | |
if: ${{ github.event_name == 'push' }} | |
with: | |
draft: true | |
files: | | |
output/*.zip | |
output/*.dylib | |
cmake_build_windows: | |
name: Build windows | |
runs-on: windows-2019 | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Run cmake build windows | |
shell: bash | |
run: | | |
scripts/build-windows.bat | |
OUTPUT_ARTIFACTORY_NAME="VideoObserver_Plugin_for_Windows" | |
OUTPUT_ARTIFACTORY_PATH=output/${OUTPUT_ARTIFACTORY_NAME} | |
mkdir -p ${OUTPUT_ARTIFACTORY_PATH} | |
cp -RP build/windows/Win32/output/Release/ ${OUTPUT_ARTIFACTORY_PATH}/Win32 | |
cp -RP build/windows/x64/output/Release/ ${OUTPUT_ARTIFACTORY_PATH}/x64 | |
ZIP_FILE_NAME="${OUTPUT_ARTIFACTORY_NAME}.zip" | |
pushd output | |
tar.exe -a -c -f "$ZIP_FILE_NAME" $OUTPUT_ARTIFACTORY_NAME | |
popd | |
cp build/windows/Win32/output/Release/AgoraRawDataPlugin.dll output/VideoObserverPlugin_ia32.dll | |
cp build/windows/x64/output/Release/AgoraRawDataPlugin.dll output/VideoObserverPlugin_x64.dll | |
- name: Release | |
uses: softprops/action-gh-release@v1 | |
if: startsWith(github.ref, 'refs/tags/') | |
with: | |
files: | | |
output/*.zip | |
output/*.dll | |
- name: Release | |
uses: softprops/action-gh-release@v1 | |
if: ${{ github.event_name == 'push' }} | |
with: | |
draft: true | |
files: | | |
output/*.zip | |
output/*.dll | |
build_flutter_apple: | |
name: Build flutter | |
runs-on: macos-latest | |
if: ${{ github.event_name == 'pull_request' }} | |
strategy: | |
matrix: | |
platform: ["ios", "macos"] | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: subosito/flutter-action@v2 | |
with: | |
flutter-version: 3.0.0 | |
cache: true | |
- run: flutter pub get | |
working-directory: frameworks/flutter/video_raw_data | |
- run: flutter build ${{ matrix.platform }} --no-codesign | |
if: ${{ matrix.platform == 'ios' }} | |
working-directory: frameworks/flutter/video_raw_data/example | |
- run: flutter build ${{ matrix.platform }} | |
if: ${{ matrix.platform == 'macos' }} | |
working-directory: frameworks/flutter/video_raw_data/example | |
build_flutter_other: | |
name: Build flutter | |
runs-on: windows-latest | |
if: ${{ github.event_name == 'pull_request' }} | |
strategy: | |
matrix: | |
platform: ["apk", "windows"] | |
steps: | |
- uses: actions/checkout@v3 | |
- uses: actions/setup-java@v1 | |
if: ${{ matrix.platform == 'apk' }} | |
with: | |
java-version: "11" | |
- uses: subosito/flutter-action@v2 | |
with: | |
flutter-version: 3.0.0 | |
cache: true | |
- run: flutter pub get | |
working-directory: frameworks/flutter/video_raw_data | |
- run: flutter build ${{ matrix.platform }} | |
working-directory: frameworks/flutter/video_raw_data/example |