From a8cea516b2aaab29f68855c4a5ce634b91c637b4 Mon Sep 17 00:00:00 2001 From: torikizi <51085972+torikizi@users.noreply.github.com> Date: Thu, 30 Jan 2025 11:46:25 +0900 Subject: [PATCH 01/29] =?UTF-8?q?=E3=83=AA=E3=83=AA=E3=83=BC=E3=82=B9?= =?UTF-8?q?=E3=81=AB=20sumomo=20=E3=83=90=E3=82=A4=E3=83=8A=E3=83=AA?= =?UTF-8?q?=E3=82=92=E5=90=AB=E3=82=81=E3=82=8B=E3=82=88=E3=81=86=E3=81=AB?= =?UTF-8?q?=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a3f90e16..edbd6c81 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -348,6 +348,30 @@ jobs: - uses: ./.github/actions/download with: platform: android + # Examples のダウンロード + - name: Download Examples + uses: actions/download-artifact@v4 + with: + pattern: examples_* + merge-multiple: false + - name: Archive Examples + run: | + for d in examples_*; do + mkdir -p "archive/$d" + mv "$d" "archive/$d/" + if [[ "$d" == "examples_macos_arm64" ]]; then + mv "archive/$d/$d/sumomo" "archive/$d/sumomo" + rm -rf "archive/$d/$d" + (cd archive && tar czf "../sumomo_macos_arm64.tar.gz" "$d") + echo "sumomo_macos_arm64.tar.gz" >> package_paths.env + elif [[ "$d" == *"windows"* ]]; then + (cd archive && zip -r "../sumomo_windows_x86_64.zip" "$d") + echo "sumomo_windows_x86_64.zip" >> package_paths.env + else + (cd archive && tar czf "../sumomo_${d#examples_}.tar.gz" "$d") + echo "sumomo_${d#examples_}.tar.gz" >> package_paths.env + fi + done - name: Env to output run: | echo "package_paths<> $GITHUB_OUTPUT From ba26d431b5c37a9f9bc221dd3586790234b012dc Mon Sep 17 00:00:00 2001 From: torikizi <51085972+torikizi@users.noreply.github.com> Date: Fri, 31 Jan 2025 10:01:17 +0900 Subject: [PATCH 02/29] =?UTF-8?q?CHANGES=20=E3=82=92=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGES.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGES.md b/CHANGES.md index 237f104b..203f5905 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -14,6 +14,10 @@ - [UPDATE] CMake を 3.31.4 にあげる - @voluntas +### misc + +- [ADD] リリース時に sumomo バイナリを含めるようにする + - @torikizi ## 2025.1.0 From ca6651ebb0ca413e6f542a6d1d437afff028187c Mon Sep 17 00:00:00 2001 From: torikizi <51085972+torikizi@users.noreply.github.com> Date: Sat, 1 Feb 2025 14:27:06 +0900 Subject: [PATCH 03/29] =?UTF-8?q?sumomo=20=E3=81=A0=E3=81=91=E3=82=92?= =?UTF-8?q?=E6=8A=9C=E3=81=8D=E5=87=BA=E3=81=97=E3=81=A6=E3=82=A2=E3=83=BC?= =?UTF-8?q?=E3=82=AB=E3=82=A4=E3=83=96=E3=81=AB=E3=81=99=E3=82=8B=E5=87=A6?= =?UTF-8?q?=E7=90=86=E3=82=92=E8=A6=8B=E7=9B=B4=E3=81=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 40 ++++++++++++++++++++++++++----------- 1 file changed, 28 insertions(+), 12 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index edbd6c81..dce901af 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -354,22 +354,38 @@ jobs: with: pattern: examples_* merge-multiple: false + # sumomo のみを抜き出して、アーカイブにする - name: Archive Examples run: | - for d in examples_*; do - mkdir -p "archive/$d" - mv "$d" "archive/$d/" - if [[ "$d" == "examples_macos_arm64" ]]; then - mv "archive/$d/$d/sumomo" "archive/$d/sumomo" - rm -rf "archive/$d/$d" - (cd archive && tar czf "../sumomo_macos_arm64.tar.gz" "$d") - echo "sumomo_macos_arm64.tar.gz" >> package_paths.env - elif [[ "$d" == *"windows"* ]]; then - (cd archive && zip -r "../sumomo_windows_x86_64.zip" "$d") + # アーカイブ用の親ディレクトリを作成 + mkdir -p archive + # プラットフォームごとに処理を実行 + for platform in \ + windows_x86_64 \ + macos_arm64 \ + ubuntu-20.04_x86_64 \ + ubuntu-22.04_x86_64 \ + ubuntu-24.04_x86_64 \ + ubuntu-24.04_armv8; do + # ダウンロード済みの artifact ディレクトリ + src_dir="examples_${platform}" + # アーカイブ用のディレクトリは、sumomo_ とする + archive_dir="archive/sumomo_${platform}" + mkdir -p "$archive_dir" + # プラットフォームごとに sumomo の実行ファイルをコピー + if [[ "$platform" == "windows_x86_64" ]]; then + cp "${src_dir}/sumomo.exe" "$archive_dir/" + # Windows は zip 形式にする + (cd archive && zip -r "../sumomo_windows_x86_64.zip" "sumomo_${platform}") echo "sumomo_windows_x86_64.zip" >> package_paths.env + elif [[ "$platform" == "macos_arm64" ]]; then + cp "${src_dir}/sumomo" "$archive_dir/" + (cd archive && tar czf "../sumomo_macos_arm64.tar.gz" "sumomo_${platform}") + echo "sumomo_macos_arm64.tar.gz" >> package_paths.env else - (cd archive && tar czf "../sumomo_${d#examples_}.tar.gz" "$d") - echo "sumomo_${d#examples_}.tar.gz" >> package_paths.env + cp "${src_dir}/sumomo" "$archive_dir/" + (cd archive && tar czf "../sumomo_${platform}.tar.gz" "sumomo_${platform}") + echo "sumomo_${platform}.tar.gz" >> package_paths.env fi done - name: Env to output From 825b7255a18f54d3b5b5cdca15df9893a9404f99 Mon Sep 17 00:00:00 2001 From: torikizi <51085972+torikizi@users.noreply.github.com> Date: Sat, 1 Feb 2025 15:34:44 +0900 Subject: [PATCH 04/29] =?UTF-8?q?=E3=82=B5=E3=83=96=E3=82=B7=E3=82=A7?= =?UTF-8?q?=E3=83=AB=E3=82=92=E4=BD=BF=E3=82=8F=E3=81=9A=E4=B8=80=E3=81=A4?= =?UTF-8?q?=E3=81=9A=E3=81=A4=E5=AE=9F=E8=A1=8C=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 18 +++++++++++++++--- 1 file changed, 15 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index dce901af..9f8d0edc 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -375,15 +375,27 @@ jobs: # プラットフォームごとに sumomo の実行ファイルをコピー if [[ "$platform" == "windows_x86_64" ]]; then cp "${src_dir}/sumomo.exe" "$archive_dir/" - # Windows は zip 形式にする - (cd archive && zip -r "../sumomo_windows_x86_64.zip" "sumomo_${platform}") + # Windows は zip 形式でアーカイブするため、archive ディレクトリに移動して実行 + cd archive + zip -r "../sumomo_windows_x86_64.zip" "sumomo_${platform}" + # アーカイブ作成後、元のディレクトリに戻る + cd .. echo "sumomo_windows_x86_64.zip" >> package_paths.env elif [[ "$platform" == "macos_arm64" ]]; then cp "${src_dir}/sumomo" "$archive_dir/" - (cd archive && tar czf "../sumomo_macos_arm64.tar.gz" "sumomo_${platform}") + # macOS は tar.gz 形式でアーカイブするため、archive ディレクトリに移動して実行 + cd archive + tar czf "../sumomo_macos_arm64.tar.gz" "sumomo_${platform}" + # アーカイブ作成後、元のディレクトリに戻る + cd .. echo "sumomo_macos_arm64.tar.gz" >> package_paths.env else cp "${src_dir}/sumomo" "$archive_dir/" + # tar.gz 形式でアーカイブする + cd archive + tar czf "../sumomo_${platform}.tar.gz" "sumomo_${platform}" + # アーカイブ作成後、元のディレクトリに戻る + cd .. (cd archive && tar czf "../sumomo_${platform}.tar.gz" "sumomo_${platform}") echo "sumomo_${platform}.tar.gz" >> package_paths.env fi From 6ea4e036be400ed6050d7dc09fde77a4c39d2945 Mon Sep 17 00:00:00 2001 From: torikizi <51085972+torikizi@users.noreply.github.com> Date: Wed, 5 Feb 2025 10:45:05 +0900 Subject: [PATCH 05/29] =?UTF-8?q?examples=20=E3=81=AE=E3=83=93=E3=83=AB?= =?UTF-8?q?=E3=83=89=E3=81=A8=E3=83=AA=E3=83=AA=E3=83=BC=E3=82=B9=E3=82=92?= =?UTF-8?q?=20SDK=20=E3=81=A8=E5=88=86=E3=81=91=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 268 +++++++++++++++++++++++------------- 1 file changed, 170 insertions(+), 98 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9f8d0edc..e55d6e3d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -82,20 +82,6 @@ jobs: with: name: ${{ matrix.name }}.env path: _package/${{ matrix.name }}/release/sora.env - # Examples のビルド - - name: Build Examples - run: | - cd examples - mkdir examples_${{ matrix.name }} - foreach ($app in @('sdl_sample', 'sumomo', 'messaging_recvonly_sample')) { - python3 "$app\${{ matrix.name }}\run.py" --local-sora-cpp-sdk-dir .. - cp "_build\${{ matrix.name }}\release\$app\Release\$app.exe" "examples_${{ matrix.name }}" - } - - name: Upload Examples Artifact - uses: actions/upload-artifact@v4 - with: - name: examples_${{ matrix.name }} - path: examples/examples_${{ matrix.name }} build-macos: strategy: fail-fast: false @@ -140,22 +126,6 @@ jobs: with: name: ${{ matrix.name }}.env path: _package/${{ matrix.name }}/release/sora.env - # Examples のビルド - - name: Build Examples - run: | - cd examples - mkdir examples_${{ matrix.name }} - for app in sdl_sample sumomo messaging_recvonly_sample; do - python3 $app/${{ matrix.name }}/run.py --local-sora-cpp-sdk-dir .. - cp _build/${{ matrix.name }}/release/$app/$app examples_${{ matrix.name }} - done - if: matrix.name == 'macos_arm64' - - name: Upload Examples Artifact - uses: actions/upload-artifact@v4 - with: - name: examples_${{ matrix.name }} - path: examples/examples_${{ matrix.name }} - if: matrix.name == 'macos_arm64' build-ubuntu: strategy: fail-fast: false @@ -297,22 +267,6 @@ jobs: 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 - 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' - - 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' create-release: name: Create Release @@ -348,58 +302,6 @@ jobs: - uses: ./.github/actions/download with: platform: android - # Examples のダウンロード - - name: Download Examples - uses: actions/download-artifact@v4 - with: - pattern: examples_* - merge-multiple: false - # sumomo のみを抜き出して、アーカイブにする - - name: Archive Examples - run: | - # アーカイブ用の親ディレクトリを作成 - mkdir -p archive - # プラットフォームごとに処理を実行 - for platform in \ - windows_x86_64 \ - macos_arm64 \ - ubuntu-20.04_x86_64 \ - ubuntu-22.04_x86_64 \ - ubuntu-24.04_x86_64 \ - ubuntu-24.04_armv8; do - # ダウンロード済みの artifact ディレクトリ - src_dir="examples_${platform}" - # アーカイブ用のディレクトリは、sumomo_ とする - archive_dir="archive/sumomo_${platform}" - mkdir -p "$archive_dir" - # プラットフォームごとに sumomo の実行ファイルをコピー - if [[ "$platform" == "windows_x86_64" ]]; then - cp "${src_dir}/sumomo.exe" "$archive_dir/" - # Windows は zip 形式でアーカイブするため、archive ディレクトリに移動して実行 - cd archive - zip -r "../sumomo_windows_x86_64.zip" "sumomo_${platform}" - # アーカイブ作成後、元のディレクトリに戻る - cd .. - echo "sumomo_windows_x86_64.zip" >> package_paths.env - elif [[ "$platform" == "macos_arm64" ]]; then - cp "${src_dir}/sumomo" "$archive_dir/" - # macOS は tar.gz 形式でアーカイブするため、archive ディレクトリに移動して実行 - cd archive - tar czf "../sumomo_macos_arm64.tar.gz" "sumomo_${platform}" - # アーカイブ作成後、元のディレクトリに戻る - cd .. - echo "sumomo_macos_arm64.tar.gz" >> package_paths.env - else - cp "${src_dir}/sumomo" "$archive_dir/" - # tar.gz 形式でアーカイブする - cd archive - tar czf "../sumomo_${platform}.tar.gz" "sumomo_${platform}" - # アーカイブ作成後、元のディレクトリに戻る - cd .. - (cd archive && tar czf "../sumomo_${platform}.tar.gz" "sumomo_${platform}") - echo "sumomo_${platform}.tar.gz" >> package_paths.env - fi - done - name: Env to output run: | echo "package_paths<> $GITHUB_OUTPUT @@ -412,6 +314,176 @@ jobs: files: ${{ steps.env.outputs.package_paths }} prerelease: ${{ contains(github.ref, 'canary') }} + # Windows の Examples ビルド + build-windows-examples: + needs: create-release + runs-on: windows-2022 + defaults: + run: + working-directory: ${{ github.workspace }}/examples + strategy: + matrix: + example: + - name: sumomo + steps: + - uses: actions/checkout@v4 + - name: Build Example + run: | + python3 "${{ matrix.example.name }}/windows_x86_64/run.py" + - name: Package Binary + run: | + # アップロード用のディレクトリ作成してバイナリをコピー + mkdir -p ${{ matrix.example.name }}_windows_x86_64 + cp _build/windows_x86_64/release/${{ matrix.example.name }}/Release/sumomo.exe sumomo_windows_x86_64/sumomo.exe + # PowerShell のコマンドを使って zip 作成する + Compress-Archive -Path sumomo_windows_x86_64 -DestinationPath sumomo_windows_x86_64.zip + - name: Upload Examples Artifact + uses: actions/upload-artifact@v4 + with: + # .zip まで含めないとアップロード時には設定されない + name: ${{ matrix.example.name }}_windows_x86_64.zip + path: examples/${{ matrix.example.name }}_windows_x86_64.zip + + # macOS の Examples ビルド + build-macos-examples: + needs: create-release + runs-on: macos-14 + defaults: + run: + working-directory: ${{ github.workspace }}/examples + strategy: + matrix: + example: + - name: sumomo + steps: + - uses: actions/checkout@v4 + # Select Xcode 15.4(build-macosと同じバージョンを使う) + - name: Select Xcode 15.4 + run: sudo xcode-select --switch /Applications/Xcode_15.4.app/Contents/Developer + - name: Build Example + run: | + python3 "${{ matrix.example.name }}/macos_arm64/run.py" + - name: Package Binary + run: | + # アップロード用のディレクトリ作成してバイナリをコピー + mkdir -p sumomo_macos_arm64 + cp _build/macos_arm64/release/${{ matrix.example.name }}/${{ matrix.example.name }} sumomo_macos_arm64/sumomo + tar -czf sumomo_macos_arm64.tar.gz sumomo_macos_arm64 + - name: Upload Examples Artifact + uses: actions/upload-artifact@v4 + with: + # .tar.gz まで含めないとアップロード時には設定されない + name: ${{ matrix.example.name }}_macos_arm64.tar.gz + path: examples/${{ matrix.example.name }}_macos_arm64.tar.gz + + # Ubuntu の Examples ビルド + build-ubuntu-examples: + needs: create-release + strategy: + fail-fast: false + matrix: + platform: + - name: ubuntu-20.04_x86_64 + runs-on: ubuntu-20.04 + os: ubuntu + arch: x86_64 + example: + - name: sumomo + - name: ubuntu-22.04_x86_64 + runs-on: ubuntu-22.04 + os: ubuntu + arch: x86_64 + example: + - name: sumomo + - name: ubuntu-24.04_x86_64 + runs-on: ubuntu-24.04 + os: ubuntu + arch: x86_64 + example: + - name: sumomo + - name: ubuntu-24.04_armv8 + runs-on: ubuntu-24.04 + os: ubuntu + arch: armv8 + example: + - name: sumomo + name: Build Examples for ${{ matrix.platform.name }} + runs-on: ${{ matrix.platform.runs-on }} + defaults: + run: + working-directory: ${{ github.workspace }}/examples + steps: + - uses: actions/checkout@v4 + - name: Install deps + run: | + sudo apt-get update + sudo apt-get install -y libgl-dev + # Ubuntu 24.04 x86_64 向けの依存関係をインストール + - name: Install deps for Ubuntu 24.04 x86_64 + if: matrix.platform.name == 'ubuntu-24.04_x86_64' + run: | + sudo apt-get install -y libx11-dev libxext-dev + # Ubuntu 24.04 ARM 向けの依存関係をインストール + - name: Install deps for Ubuntu 24.04 ARM + if: matrix.platform.name == 'ubuntu-24.04_armv8' + run: | + sudo apt-get install -y multistrap binutils-aarch64-linux-gnu libx11-dev libxext-dev + # 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: Build Example + run: | + pwd + python3 "${{ matrix.platform.example[0].name }}/${{ matrix.platform.name }}/run.py" + - name: Package Binary + run: | + # アップロード用のディレクトリ作成してバイナリをコピー + mkdir -p sumomo_${{ matrix.platform.name }} + cp _build/${{ matrix.platform.name }}/release/${{ matrix.platform.example[0].name }}/${{ matrix.platform.example[0].name }} sumomo_${{ matrix.platform.name }}/sumomo + tar -czf sumomo_${{ matrix.platform.name }}.tar.gz sumomo_${{ matrix.platform.name }} + # ビルドしたexamplesをアップロード + - name: Upload Examples Artifact + uses: actions/upload-artifact@v4 + with: + name: sumomo_${{ matrix.platform.name }}.tar.gz + path: examples/sumomo_${{ matrix.platform.name }}.tar.gz + + # Examples をリリース + create-release-example: + name: Create Release Examples + needs: + - build-windows-examples + - build-macos-examples + - build-ubuntu-examples + runs-on: ubuntu-24.04 + strategy: + matrix: + platform: + - name: windows_x86_64 + file_ext: zip + - name: macos_arm64 + file_ext: tar.gz + - name: ubuntu-20.04_x86_64 + file_ext: tar.gz + - name: ubuntu-22.04_x86_64 + file_ext: tar.gz + - name: ubuntu-24.04_x86_64 + file_ext: tar.gz + - name: ubuntu-24.04_armv8 + file_ext: tar.gz + file_name: + - sumomo + steps: + - uses: actions/checkout@v4 + # ビルドした Examples のアーティファクトをダウンロード + - uses: actions/download-artifact@v4 + with: + name: ${{ matrix.file_name }}_${{ matrix.platform.name }}.${{ matrix.platform.file_ext }} + # GitHub Releaseを作成し、Examplesをアップロード + - name: Release Examples + uses: softprops/action-gh-release@v2 + with: + files: ${{ matrix.file_name }}_${{ matrix.platform.name }}.${{ matrix.platform.file_ext }} + notification: name: Slack Notification runs-on: ubuntu-24.04 From 79d0085ecf13f72a045da139e7ed0612eee0cbc1 Mon Sep 17 00:00:00 2001 From: torikizi <51085972+torikizi@users.noreply.github.com> Date: Wed, 5 Feb 2025 10:54:02 +0900 Subject: [PATCH 06/29] =?UTF-8?q?CHANGES=20=E3=82=92=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGES.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/CHANGES.md b/CHANGES.md index 203f5905..18e909b1 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -16,6 +16,11 @@ ### misc +- [CHANGE] SDK ビルドと examples をビルドを分ける + - push 時に実行していた examples のビルドをリリース時にのみ実行するように変更 + - @torikizi +- [CHANGE] examples のビルドを sumomo だけにする + - @torikizi - [ADD] リリース時に sumomo バイナリを含めるようにする - @torikizi From 9edd9c556d92b8bedd2e923ae84bcb5c2df8c0a9 Mon Sep 17 00:00:00 2001 From: torikizi <51085972+torikizi@users.noreply.github.com> Date: Wed, 5 Feb 2025 16:38:16 +0900 Subject: [PATCH 07/29] =?UTF-8?q?=E5=A4=89=E6=9B=B4=E5=B1=A5=E6=AD=B4?= =?UTF-8?q?=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGES.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/CHANGES.md b/CHANGES.md index 18e909b1..e47d75ed 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -18,8 +18,12 @@ - [CHANGE] SDK ビルドと examples をビルドを分ける - push 時に実行していた examples のビルドをリリース時にのみ実行するように変更 + - 修正が入ったら canary リリースをするため、push 時に examples のビルドは行わないようにする - @torikizi - [CHANGE] examples のビルドを sumomo だけにする + - sumomo / sdl_sample / messaging_sample の 3 つのサンプルが存在している + - sdl_sample にある機能は全て sumomo にもあるため、sdl_sample のビルドを削除する + - messaging_sample は sumomo にはない機能があるが、今後 sumomo にも追加する予定があるため、このタイミングで削除する - @torikizi - [ADD] リリース時に sumomo バイナリを含めるようにする - @torikizi From 89d62277162dee8924711aa64f4701f5139b6ae0 Mon Sep 17 00:00:00 2001 From: torikizi <51085972+torikizi@users.noreply.github.com> Date: Wed, 5 Feb 2025 16:38:37 +0900 Subject: [PATCH 08/29] =?UTF-8?q?build.yml=20=E3=81=AE=E4=BF=AE=E6=AD=A3?= =?UTF-8?q?=E3=82=92=E8=A6=8B=E7=9B=B4=E3=81=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 53 +++++++++++++------------------------ 1 file changed, 18 insertions(+), 35 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index e55d6e3d..dc5a4655 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -329,14 +329,13 @@ jobs: - uses: actions/checkout@v4 - name: Build Example run: | - python3 "${{ matrix.example.name }}/windows_x86_64/run.py" + python3 ${{ matrix.example.name }}/windows_x86_64/run.py - name: Package Binary run: | # アップロード用のディレクトリ作成してバイナリをコピー mkdir -p ${{ matrix.example.name }}_windows_x86_64 - cp _build/windows_x86_64/release/${{ matrix.example.name }}/Release/sumomo.exe sumomo_windows_x86_64/sumomo.exe - # PowerShell のコマンドを使って zip 作成する - Compress-Archive -Path sumomo_windows_x86_64 -DestinationPath sumomo_windows_x86_64.zip + cp _build/windows_x86_64/release/${{ matrix.example.name }}/Release/${{ matrix.example.name }}.exe ${{ matrix.example.name }}_windows_x86_64/${{ matrix.example.name }}.exe + Compress-Archive -Path ${{ matrix.example.name }}_windows_x86_64 -DestinationPath ${{ matrix.example.name }}_windows_x86_64.zip - name: Upload Examples Artifact uses: actions/upload-artifact@v4 with: @@ -366,9 +365,9 @@ jobs: - name: Package Binary run: | # アップロード用のディレクトリ作成してバイナリをコピー - mkdir -p sumomo_macos_arm64 - cp _build/macos_arm64/release/${{ matrix.example.name }}/${{ matrix.example.name }} sumomo_macos_arm64/sumomo - tar -czf sumomo_macos_arm64.tar.gz sumomo_macos_arm64 + mkdir -p ${{ matrix.example.name }}_macos_arm64 + cp _build/macos_arm64/release/${{ matrix.example.name }}/${{ matrix.example.name }} ${{ matrix.example.name }}_macos_arm64/${{ matrix.example.name }} + tar -czf ${{ matrix.example.name }}_macos_arm64.tar.gz ${{ matrix.example.name }}_macos_arm64 - name: Upload Examples Artifact uses: actions/upload-artifact@v4 with: @@ -385,28 +384,14 @@ jobs: platform: - name: ubuntu-20.04_x86_64 runs-on: ubuntu-20.04 - os: ubuntu - arch: x86_64 - example: - - name: sumomo - name: ubuntu-22.04_x86_64 runs-on: ubuntu-22.04 - os: ubuntu - arch: x86_64 - example: - - name: sumomo - name: ubuntu-24.04_x86_64 runs-on: ubuntu-24.04 - os: ubuntu - arch: x86_64 - example: - - name: sumomo - name: ubuntu-24.04_armv8 runs-on: ubuntu-24.04 - os: ubuntu - arch: armv8 - example: - - name: sumomo + example: + - name: sumomo name: Build Examples for ${{ matrix.platform.name }} runs-on: ${{ matrix.platform.runs-on }} defaults: @@ -418,12 +403,11 @@ jobs: run: | sudo apt-get update sudo apt-get install -y libgl-dev - # Ubuntu 24.04 x86_64 向けの依存関係をインストール - - name: Install deps for Ubuntu 24.04 x86_64 + # Ubuntu 24.04 の x86_64 と armv8 でそれぞれ必要なパッケージがあるのでインストール + - name: Install Ubuntu 24.04 x86_64 specific deps if: matrix.platform.name == 'ubuntu-24.04_x86_64' run: | sudo apt-get install -y libx11-dev libxext-dev - # Ubuntu 24.04 ARM 向けの依存関係をインストール - name: Install deps for Ubuntu 24.04 ARM if: matrix.platform.name == 'ubuntu-24.04_armv8' run: | @@ -433,14 +417,13 @@ jobs: - name: Build Example run: | pwd - python3 "${{ matrix.platform.example[0].name }}/${{ matrix.platform.name }}/run.py" + python3 "${{ matrix.example.name }}/${{ matrix.platform.name }}/run.py" - name: Package Binary run: | # アップロード用のディレクトリ作成してバイナリをコピー - mkdir -p sumomo_${{ matrix.platform.name }} - cp _build/${{ matrix.platform.name }}/release/${{ matrix.platform.example[0].name }}/${{ matrix.platform.example[0].name }} sumomo_${{ matrix.platform.name }}/sumomo - tar -czf sumomo_${{ matrix.platform.name }}.tar.gz sumomo_${{ matrix.platform.name }} - # ビルドしたexamplesをアップロード + mkdir -p ${{ matrix.example.name }}_${{ matrix.platform.name }} + cp _build/${{ matrix.platform.name }}/release/${{ matrix.example.name }}/${{ matrix.example.name }} ${{ matrix.example.name }}_${{ matrix.platform.name }}/${{ matrix.example.name }} + tar -czf ${{ matrix.example.name }}_${{ matrix.platform.name }}.tar.gz ${{ matrix.example.name }}_${{ matrix.platform.name }} - name: Upload Examples Artifact uses: actions/upload-artifact@v4 with: @@ -470,19 +453,19 @@ jobs: file_ext: tar.gz - name: ubuntu-24.04_armv8 file_ext: tar.gz - file_name: - - sumomo + example: + - name: sumomo steps: - uses: actions/checkout@v4 # ビルドした Examples のアーティファクトをダウンロード - uses: actions/download-artifact@v4 with: - name: ${{ matrix.file_name }}_${{ matrix.platform.name }}.${{ matrix.platform.file_ext }} + name: ${{ matrix.example.name }}_${{ matrix.platform.name }}.${{ matrix.platform.file_ext }} # GitHub Releaseを作成し、Examplesをアップロード - name: Release Examples uses: softprops/action-gh-release@v2 with: - files: ${{ matrix.file_name }}_${{ matrix.platform.name }}.${{ matrix.platform.file_ext }} + files: ${{ matrix.example.name }}_${{ matrix.platform.name }}.${{ matrix.platform.file_ext }} notification: name: Slack Notification From 22db937b2cb7692deab1608dea2ca3cbc61b3b40 Mon Sep 17 00:00:00 2001 From: torikizikaeru <51085972+torikizi@users.noreply.github.com> Date: Wed, 5 Feb 2025 18:23:12 +0900 Subject: [PATCH 09/29] =?UTF-8?q?Ubuntu24.04=20=E5=85=B1=E9=80=9A=E3=83=91?= =?UTF-8?q?=E3=83=83=E3=82=B1=E3=83=BC=E3=82=B8=E3=81=AA=E3=81=AE=E3=81=A7?= =?UTF-8?q?=20runs-on=20=E3=82=92=E6=8C=87=E5=AE=9A=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: V --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index dc5a4655..176c0eb7 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -405,7 +405,7 @@ jobs: sudo apt-get install -y libgl-dev # Ubuntu 24.04 の x86_64 と armv8 でそれぞれ必要なパッケージがあるのでインストール - name: Install Ubuntu 24.04 x86_64 specific deps - if: matrix.platform.name == 'ubuntu-24.04_x86_64' + if: matrix.platform.runs-on == 'ubuntu-24.04' run: | sudo apt-get install -y libx11-dev libxext-dev - name: Install deps for Ubuntu 24.04 ARM From 0d6bb6735ffb17260ae5c2226dd90581de61b309 Mon Sep 17 00:00:00 2001 From: torikizikaeru <51085972+torikizi@users.noreply.github.com> Date: Wed, 5 Feb 2025 18:23:52 +0900 Subject: [PATCH 10/29] =?UTF-8?q?matrix=20=E3=81=AE=E5=AE=9A=E7=BE=A9?= =?UTF-8?q?=E3=82=92=E4=BD=BF=E7=94=A8=E3=81=A7=E3=81=8D=E3=81=A6=E3=81=84?= =?UTF-8?q?=E3=81=AA=E3=81=84=E7=AE=87=E6=89=80=E3=81=8C=E6=AE=8B=E3=81=A3?= =?UTF-8?q?=E3=81=A6=E3=81=84=E3=81=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: V --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 176c0eb7..188f8ea0 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -428,7 +428,7 @@ jobs: uses: actions/upload-artifact@v4 with: name: sumomo_${{ matrix.platform.name }}.tar.gz - path: examples/sumomo_${{ matrix.platform.name }}.tar.gz + path: examples/${{ matrix.example.name }}_${{ matrix.platform.name }}.tar.gz # Examples をリリース create-release-example: From 3bee9ea1965b89f739e836bc51231b82f75746c6 Mon Sep 17 00:00:00 2001 From: torikizi <51085972+torikizi@users.noreply.github.com> Date: Wed, 5 Feb 2025 19:21:04 +0900 Subject: [PATCH 11/29] =?UTF-8?q?=E3=82=B3=E3=83=A1=E3=83=B3=E3=83=88?= =?UTF-8?q?=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 34 +++++++++++++++++++--------------- 1 file changed, 19 insertions(+), 15 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 188f8ea0..42037188 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -332,7 +332,8 @@ jobs: python3 ${{ matrix.example.name }}/windows_x86_64/run.py - name: Package Binary run: | - # アップロード用のディレクトリ作成してバイナリをコピー + # アップロード用にディレクトリを作って、その中にバイナリをコピーする + # sumomo_windows_x86_64.zip を作ってアップロードする mkdir -p ${{ matrix.example.name }}_windows_x86_64 cp _build/windows_x86_64/release/${{ matrix.example.name }}/Release/${{ matrix.example.name }}.exe ${{ matrix.example.name }}_windows_x86_64/${{ matrix.example.name }}.exe Compress-Archive -Path ${{ matrix.example.name }}_windows_x86_64 -DestinationPath ${{ matrix.example.name }}_windows_x86_64.zip @@ -361,10 +362,11 @@ jobs: run: sudo xcode-select --switch /Applications/Xcode_15.4.app/Contents/Developer - name: Build Example run: | - python3 "${{ matrix.example.name }}/macos_arm64/run.py" + python3 ${{ matrix.example.name }}/macos_arm64/run.py - name: Package Binary run: | - # アップロード用のディレクトリ作成してバイナリをコピー + # アップロード用に、ディレクトリを作って、その中にバイナリをコピーする + # sumomo_macos_arm64.tar.gz を作ってアップロードする mkdir -p ${{ matrix.example.name }}_macos_arm64 cp _build/macos_arm64/release/${{ matrix.example.name }}/${{ matrix.example.name }} ${{ matrix.example.name }}_macos_arm64/${{ matrix.example.name }} tar -czf ${{ matrix.example.name }}_macos_arm64.tar.gz ${{ matrix.example.name }}_macos_arm64 @@ -381,6 +383,8 @@ jobs: strategy: fail-fast: false matrix: + example: + - name: sumomo platform: - name: ubuntu-20.04_x86_64 runs-on: ubuntu-20.04 @@ -390,8 +394,6 @@ jobs: runs-on: ubuntu-24.04 - name: ubuntu-24.04_armv8 runs-on: ubuntu-24.04 - example: - - name: sumomo name: Build Examples for ${{ matrix.platform.name }} runs-on: ${{ matrix.platform.runs-on }} defaults: @@ -403,31 +405,33 @@ jobs: run: | sudo apt-get update sudo apt-get install -y libgl-dev - # Ubuntu 24.04 の x86_64 と armv8 でそれぞれ必要なパッケージがあるのでインストール - - name: Install Ubuntu 24.04 x86_64 specific deps + # Ubuntu 24.04 のみ追加で必要なパッケージがあるのでインストール + - name: Install deps Ubuntu 24.04 if: matrix.platform.runs-on == 'ubuntu-24.04' run: | sudo apt-get install -y libx11-dev libxext-dev - - name: Install deps for Ubuntu 24.04 ARM + # ARM の場合はさらに追加のパッケージが必要なのでインストール + - name: Install deps Ubuntu 24.04 ARM if: matrix.platform.name == 'ubuntu-24.04_armv8' run: | - sudo apt-get install -y multistrap binutils-aarch64-linux-gnu libx11-dev libxext-dev + sudo apt-get install -y 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: Build Example run: | - pwd - python3 "${{ matrix.example.name }}/${{ matrix.platform.name }}/run.py" + python3 ${{ matrix.example.name }}/${{ matrix.platform.name }}/run.py - name: Package Binary run: | - # アップロード用のディレクトリ作成してバイナリをコピー + # アップロード用にディレクトリを作って、その中にバイナリをコピーする + # ubuntu-24.04_x86_64 の場合 sumomo_ubuntu-24.04_x86_64.tar.gz を作ってアップロードする mkdir -p ${{ matrix.example.name }}_${{ matrix.platform.name }} cp _build/${{ matrix.platform.name }}/release/${{ matrix.example.name }}/${{ matrix.example.name }} ${{ matrix.example.name }}_${{ matrix.platform.name }}/${{ matrix.example.name }} tar -czf ${{ matrix.example.name }}_${{ matrix.platform.name }}.tar.gz ${{ matrix.example.name }}_${{ matrix.platform.name }} - name: Upload Examples Artifact uses: actions/upload-artifact@v4 with: - name: sumomo_${{ matrix.platform.name }}.tar.gz + # .tar.gz まで含めないとアップロード時には設定されない + name: ${{ matrix.example.name }}_${{ matrix.platform.name }}.tar.gz path: examples/${{ matrix.example.name }}_${{ matrix.platform.name }}.tar.gz # Examples をリリース @@ -440,6 +444,8 @@ jobs: runs-on: ubuntu-24.04 strategy: matrix: + example: + - name: sumomo platform: - name: windows_x86_64 file_ext: zip @@ -453,8 +459,6 @@ jobs: file_ext: tar.gz - name: ubuntu-24.04_armv8 file_ext: tar.gz - example: - - name: sumomo steps: - uses: actions/checkout@v4 # ビルドした Examples のアーティファクトをダウンロード From 89d511a319df0969d2ba22e18fa492311a4ff704 Mon Sep 17 00:00:00 2001 From: torikizi <51085972+torikizi@users.noreply.github.com> Date: Wed, 5 Feb 2025 23:39:27 +0900 Subject: [PATCH 12/29] =?UTF-8?q?=E9=80=9A=E7=9F=A5=E3=81=AE=E8=A6=8B?= =?UTF-8?q?=E7=9B=B4=E3=81=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 42037188..dd38df62 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -380,6 +380,10 @@ jobs: # Ubuntu の Examples ビルド build-ubuntu-examples: needs: create-release + runs-on: ${{ matrix.platform.runs-on }} + defaults: + run: + working-directory: ${{ github.workspace }}/examples strategy: fail-fast: false matrix: @@ -394,11 +398,6 @@ jobs: runs-on: ubuntu-24.04 - name: ubuntu-24.04_armv8 runs-on: ubuntu-24.04 - name: Build Examples for ${{ matrix.platform.name }} - runs-on: ${{ matrix.platform.runs-on }} - defaults: - run: - working-directory: ${{ github.workspace }}/examples steps: - uses: actions/checkout@v4 - name: Install deps @@ -479,6 +478,10 @@ jobs: - build-macos - build-ubuntu - create-release + - build-windows-examples + - build-macos-examples + - build-ubuntu-examples + - create-release-example if: always() steps: - uses: rtCamp/action-slack-notify@v2 @@ -486,7 +489,11 @@ jobs: needs.build-windows.result == 'failure' || needs.build-macos.result == 'failure' || needs.build-ubuntu.result == 'failure' || - needs.create-release.result == 'failure' + needs.create-release.result == 'failure' || + needs.build-windows-examples.result == 'failure' || + needs.build-macos-examples.result == 'failure' || + needs.build-ubuntu-examples.result == 'failure' || + needs.create-release-example.result == 'failure' env: SLACK_CHANNEL: sora-cpp-sdk SLACK_COLOR: danger From df076ba5f98833a34214499dc09a4e668ffe792a Mon Sep 17 00:00:00 2001 From: torikizi <51085972+torikizi@users.noreply.github.com> Date: Thu, 6 Feb 2025 11:43:40 +0900 Subject: [PATCH 13/29] =?UTF-8?q?=E3=82=B3=E3=83=A1=E3=83=B3=E3=83=88?= =?UTF-8?q?=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index dd38df62..9eb051f6 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -340,7 +340,6 @@ jobs: - name: Upload Examples Artifact uses: actions/upload-artifact@v4 with: - # .zip まで含めないとアップロード時には設定されない name: ${{ matrix.example.name }}_windows_x86_64.zip path: examples/${{ matrix.example.name }}_windows_x86_64.zip @@ -373,7 +372,6 @@ jobs: - name: Upload Examples Artifact uses: actions/upload-artifact@v4 with: - # .tar.gz まで含めないとアップロード時には設定されない name: ${{ matrix.example.name }}_macos_arm64.tar.gz path: examples/${{ matrix.example.name }}_macos_arm64.tar.gz @@ -429,7 +427,6 @@ jobs: - name: Upload Examples Artifact uses: actions/upload-artifact@v4 with: - # .tar.gz まで含めないとアップロード時には設定されない name: ${{ matrix.example.name }}_${{ matrix.platform.name }}.tar.gz path: examples/${{ matrix.example.name }}_${{ matrix.platform.name }}.tar.gz @@ -460,11 +457,10 @@ jobs: file_ext: tar.gz steps: - uses: actions/checkout@v4 - # ビルドした Examples のアーティファクトをダウンロード + # ビルドした Examples のアーティファクトのダウンロードとリリース - uses: actions/download-artifact@v4 with: name: ${{ matrix.example.name }}_${{ matrix.platform.name }}.${{ matrix.platform.file_ext }} - # GitHub Releaseを作成し、Examplesをアップロード - name: Release Examples uses: softprops/action-gh-release@v2 with: From b33addf08d24b3df789219f53aa2d83c95f6a4a8 Mon Sep 17 00:00:00 2001 From: torikizi <51085972+torikizi@users.noreply.github.com> Date: Thu, 6 Feb 2025 11:49:59 +0900 Subject: [PATCH 14/29] =?UTF-8?q?SDK=20=E3=81=AE=20examples=20=E3=83=93?= =?UTF-8?q?=E3=83=AB=E3=83=89=E3=82=92=E6=88=BB=E3=81=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 46 +++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9eb051f6..eae02e9d 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -82,6 +82,20 @@ jobs: with: name: ${{ matrix.name }}.env path: _package/${{ matrix.name }}/release/sora.env + # Examples のビルド + - name: Build Examples + run: | + cd examples + mkdir examples_${{ matrix.name }} + foreach ($app in @('sdl_sample', 'sumomo', 'messaging_recvonly_sample')) { + python3 "$app\${{ matrix.name }}\run.py" --local-sora-cpp-sdk-dir .. + cp "_build\${{ matrix.name }}\release\$app\Release\$app.exe" "examples_${{ matrix.name }}" + } + - name: Upload Examples Artifact + uses: actions/upload-artifact@v4 + with: + name: examples_${{ matrix.name }} + path: examples/examples_${{ matrix.name }} build-macos: strategy: fail-fast: false @@ -126,6 +140,22 @@ jobs: with: name: ${{ matrix.name }}.env path: _package/${{ matrix.name }}/release/sora.env + # Examples のビルド + - name: Build Examples + run: | + cd examples + mkdir examples_${{ matrix.name }} + for app in sdl_sample sumomo messaging_recvonly_sample; do + python3 $app/${{ matrix.name }}/run.py --local-sora-cpp-sdk-dir .. + cp _build/${{ matrix.name }}/release/$app/$app examples_${{ matrix.name }} + done + if: matrix.name == 'macos_arm64' + - name: Upload Examples Artifact + uses: actions/upload-artifact@v4 + with: + name: examples_${{ matrix.name }} + path: examples/examples_${{ matrix.name }} + if: matrix.name == 'macos_arm64' build-ubuntu: strategy: fail-fast: false @@ -267,6 +297,22 @@ jobs: 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 + 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' + - 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' create-release: name: Create Release From 97a4d3841e3d8bb9039f9fa297d899cea9136ccf Mon Sep 17 00:00:00 2001 From: torikizi <51085972+torikizi@users.noreply.github.com> Date: Thu, 6 Feb 2025 15:03:59 +0900 Subject: [PATCH 15/29] =?UTF-8?q?CHANGES=20=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGES.md | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) diff --git a/CHANGES.md b/CHANGES.md index e47d75ed..efc7b9ee 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -13,19 +13,10 @@ - [UPDATE] CMake を 3.31.4 にあげる - @voluntas - -### misc - -- [CHANGE] SDK ビルドと examples をビルドを分ける - - push 時に実行していた examples のビルドをリリース時にのみ実行するように変更 - - 修正が入ったら canary リリースをするため、push 時に examples のビルドは行わないようにする - - @torikizi -- [CHANGE] examples のビルドを sumomo だけにする - - sumomo / sdl_sample / messaging_sample の 3 つのサンプルが存在している - - sdl_sample にある機能は全て sumomo にもあるため、sdl_sample のビルドを削除する - - messaging_sample は sumomo にはない機能があるが、今後 sumomo にも追加する予定があるため、このタイミングで削除する - - @torikizi - [ADD] リリース時に sumomo バイナリを含めるようにする + - リアルタイムメッセージング以外の機能がほぼ全て含まれている sumomo をリリース時に含めるようにする + - sumomo はリリースバイナリを使用してビルドする + - リリースバイナリに含まれることで、ローカルビルドをせず機能確認をすることができるようになる - @torikizi ## 2025.1.0 From f87a35d727fa4c11761ad52e391075d4ab953266 Mon Sep 17 00:00:00 2001 From: torikizi <51085972+torikizi@users.noreply.github.com> Date: Thu, 6 Feb 2025 17:12:29 +0900 Subject: [PATCH 16/29] =?UTF-8?q?Xcode=20=E3=81=AE=E6=8C=87=E5=AE=9A?= =?UTF-8?q?=E3=82=92=E5=A4=96=E3=81=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 5 ----- 1 file changed, 5 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index eae02e9d..db074b71 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -112,8 +112,6 @@ jobs: TEST_MATRIX_NAME: ${{ matrix.name }} steps: - uses: actions/checkout@v4 - - name: Select Xcode 15.4 - run: sudo xcode-select --switch /Applications/Xcode_15.4.app/Contents/Developer - name: Env to output run: | echo "user=`users`" >> $GITHUB_OUTPUT @@ -402,9 +400,6 @@ jobs: - name: sumomo steps: - uses: actions/checkout@v4 - # Select Xcode 15.4(build-macosと同じバージョンを使う) - - name: Select Xcode 15.4 - run: sudo xcode-select --switch /Applications/Xcode_15.4.app/Contents/Developer - name: Build Example run: | python3 ${{ matrix.example.name }}/macos_arm64/run.py From b66298feb926d18a324d6fb910258c0758bf216f Mon Sep 17 00:00:00 2001 From: torikizi <51085972+torikizi@users.noreply.github.com> Date: Thu, 6 Feb 2025 17:15:46 +0900 Subject: [PATCH 17/29] =?UTF-8?q?Xcode=20=E3=81=AE=E3=83=90=E3=83=BC?= =?UTF-8?q?=E3=82=B8=E3=83=A7=E3=83=B3=E6=8C=87=E5=AE=9A=E3=82=92=E5=A4=96?= =?UTF-8?q?=E3=81=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGES.md | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/CHANGES.md b/CHANGES.md index efc7b9ee..e3e32f6f 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -11,8 +11,11 @@ ## develop +- [CHANGE] macOS ビルド時に Xcode のバージョンを指定していたのを削除 + - libwebrtc の制約で Xcode のバージョンを指定していたが、最新では制約がなくなり、指定しなくてもビルドできるようになったため + - @torikizi - [UPDATE] CMake を 3.31.4 にあげる - - @voluntas + - @voluntas - [ADD] リリース時に sumomo バイナリを含めるようにする - リアルタイムメッセージング以外の機能がほぼ全て含まれている sumomo をリリース時に含めるようにする - sumomo はリリースバイナリを使用してビルドする From 74f312cb724e44fae9b6470dbd30a98676918fbf Mon Sep 17 00:00:00 2001 From: torikizi <51085972+torikizi@users.noreply.github.com> Date: Thu, 6 Feb 2025 19:30:25 +0900 Subject: [PATCH 18/29] =?UTF-8?q?Ubuntu=20=E3=81=AE=20examples=20=E3=81=AE?= =?UTF-8?q?=E3=83=93=E3=83=AB=E3=83=89=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index db074b71..af92487a 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -442,12 +442,13 @@ jobs: - name: Install deps run: | sudo apt-get update - sudo apt-get install -y libgl-dev - # Ubuntu 24.04 のみ追加で必要なパッケージがあるのでインストール - - name: Install deps Ubuntu 24.04 - if: matrix.platform.runs-on == 'ubuntu-24.04' - run: | + + # X11 sudo apt-get install -y libx11-dev libxext-dev + + # OpenGL + sudo apt-get install -y libgl-dev + # ARM の場合はさらに追加のパッケージが必要なのでインストール - name: Install deps Ubuntu 24.04 ARM if: matrix.platform.name == 'ubuntu-24.04_armv8' From d724f90d7a2d18f61b17b4b63fcbc1c4f5e3489f Mon Sep 17 00:00:00 2001 From: torikizi <51085972+torikizi@users.noreply.github.com> Date: Fri, 7 Feb 2025 10:36:15 +0900 Subject: [PATCH 19/29] =?UTF-8?q?=E3=82=B3=E3=83=A1=E3=83=B3=E3=83=88?= =?UTF-8?q?=E3=82=92=E5=B0=91=E3=81=97=E8=A6=8B=E7=9B=B4=E3=81=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index af92487a..4c3ec2fe 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -449,7 +449,7 @@ jobs: # OpenGL sudo apt-get install -y libgl-dev - # ARM の場合はさらに追加のパッケージが必要なのでインストール + # ARM はクロスコンパイルのために追加のパッケージが必要なのでインストールする - name: Install deps Ubuntu 24.04 ARM if: matrix.platform.name == 'ubuntu-24.04_armv8' run: | @@ -499,7 +499,6 @@ jobs: file_ext: tar.gz steps: - uses: actions/checkout@v4 - # ビルドした Examples のアーティファクトのダウンロードとリリース - uses: actions/download-artifact@v4 with: name: ${{ matrix.example.name }}_${{ matrix.platform.name }}.${{ matrix.platform.file_ext }} From 6c5f641db2addccd30545bb0cecde931d502fe27 Mon Sep 17 00:00:00 2001 From: voluntas Date: Fri, 7 Feb 2025 11:16:29 +0900 Subject: [PATCH 20/29] =?UTF-8?q?=E4=B8=8D=E8=A6=81=E3=81=AA=E3=82=B3?= =?UTF-8?q?=E3=83=A1=E3=83=B3=E3=83=88=E3=82=92=E5=89=8A=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 3 --- 1 file changed, 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4c3ec2fe..9c64ea63 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -387,7 +387,6 @@ jobs: name: ${{ matrix.example.name }}_windows_x86_64.zip path: examples/${{ matrix.example.name }}_windows_x86_64.zip - # macOS の Examples ビルド build-macos-examples: needs: create-release runs-on: macos-14 @@ -416,7 +415,6 @@ jobs: name: ${{ matrix.example.name }}_macos_arm64.tar.gz path: examples/${{ matrix.example.name }}_macos_arm64.tar.gz - # Ubuntu の Examples ビルド build-ubuntu-examples: needs: create-release runs-on: ${{ matrix.platform.runs-on }} @@ -472,7 +470,6 @@ jobs: name: ${{ matrix.example.name }}_${{ matrix.platform.name }}.tar.gz path: examples/${{ matrix.example.name }}_${{ matrix.platform.name }}.tar.gz - # Examples をリリース create-release-example: name: Create Release Examples needs: From 46e80f9ed0d99b35b8377aeabf4d570aa8957e1e Mon Sep 17 00:00:00 2001 From: voluntas Date: Fri, 7 Feb 2025 11:23:36 +0900 Subject: [PATCH 21/29] =?UTF-8?q?=E3=82=B3=E3=83=A1=E3=83=B3=E3=83=88?= =?UTF-8?q?=E3=81=A8=E5=A4=89=E6=9B=B4=E5=B1=A5=E6=AD=B4=E3=82=92=E6=95=B4?= =?UTF-8?q?=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 17 +++++++++++------ CHANGES.md | 13 ++++++------- 2 files changed, 17 insertions(+), 13 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 9c64ea63..6bd705de 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -376,10 +376,12 @@ jobs: python3 ${{ matrix.example.name }}/windows_x86_64/run.py - name: Package Binary run: | - # アップロード用にディレクトリを作って、その中にバイナリをコピーする - # sumomo_windows_x86_64.zip を作ってアップロードする + # アップロード用のディレクトリを作成する mkdir -p ${{ matrix.example.name }}_windows_x86_64 + # バイナリをアップロード用のディレクトリにコピーする cp _build/windows_x86_64/release/${{ matrix.example.name }}/Release/${{ matrix.example.name }}.exe ${{ matrix.example.name }}_windows_x86_64/${{ matrix.example.name }}.exe + # バイナリを圧縮する + # 例: sumomo_windows_x86_64.zip Compress-Archive -Path ${{ matrix.example.name }}_windows_x86_64 -DestinationPath ${{ matrix.example.name }}_windows_x86_64.zip - name: Upload Examples Artifact uses: actions/upload-artifact@v4 @@ -404,10 +406,11 @@ jobs: python3 ${{ matrix.example.name }}/macos_arm64/run.py - name: Package Binary run: | - # アップロード用に、ディレクトリを作って、その中にバイナリをコピーする - # sumomo_macos_arm64.tar.gz を作ってアップロードする + # アップロード用のディレクトリを作成する mkdir -p ${{ matrix.example.name }}_macos_arm64 cp _build/macos_arm64/release/${{ matrix.example.name }}/${{ matrix.example.name }} ${{ matrix.example.name }}_macos_arm64/${{ matrix.example.name }} + # バイナリを圧縮する + # 例: sumomo_macos_arm64.tar.gz tar -czf ${{ matrix.example.name }}_macos_arm64.tar.gz ${{ matrix.example.name }}_macos_arm64 - name: Upload Examples Artifact uses: actions/upload-artifact@v4 @@ -459,10 +462,12 @@ jobs: python3 ${{ matrix.example.name }}/${{ matrix.platform.name }}/run.py - name: Package Binary run: | - # アップロード用にディレクトリを作って、その中にバイナリをコピーする - # ubuntu-24.04_x86_64 の場合 sumomo_ubuntu-24.04_x86_64.tar.gz を作ってアップロードする + # アップロード用のディレクトリを作成する mkdir -p ${{ matrix.example.name }}_${{ matrix.platform.name }} + # バイナリをアップロード用のディレクトリにコピーする cp _build/${{ matrix.platform.name }}/release/${{ matrix.example.name }}/${{ matrix.example.name }} ${{ matrix.example.name }}_${{ matrix.platform.name }}/${{ matrix.example.name }} + # バイナリを圧縮する + # 例: sumomo_ubuntu-24.04_x86_64.tar.gz tar -czf ${{ matrix.example.name }}_${{ matrix.platform.name }}.tar.gz ${{ matrix.example.name }}_${{ matrix.platform.name }} - name: Upload Examples Artifact uses: actions/upload-artifact@v4 diff --git a/CHANGES.md b/CHANGES.md index 6885ccba..726a2d27 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -28,11 +28,11 @@ - @melpon - [CHANGE] `SoraVideoEncoderFactoryConfig` の `force_i420_conversion_for_simulcast_adapter` を `force_i420_conversion` に変更 - @melpon -- [CHANGE] macOS ビルド時に Xcode のバージョンを指定していたのを削除 - - libwebrtc の制約で Xcode のバージョンを指定していたが、最新では制約がなくなり、指定しなくてもビルドできるようになったため +- [CHANGE] GitHub Actions で macOS 向けビルドで Xcode のバージョンを指定したのを削除する + - libwebrtc の制約で Xcode のバージョンを指定していたが、 m132.6834.5.5 の時点では制約がなくなり、指定しなくてもビルドできるようになったため - @torikizi - [UPDATE] CMake を 3.31.4 にあげる - - @voluntas + - @voluntas - [ADD] 有効なエンコーダの一覧を取得する `GetVideoCodecCapability()` 関数を追加 - @melpon - [ADD] 利用するエンコーダ/デコーダの実装を細かく指定するためのクラス `VideoCodecPreference` を追加 @@ -40,10 +40,9 @@ - @melpon - [ADD] OpenH264 デコーダに対応する - @melpon -- [ADD] リリース時に sumomo バイナリを含めるようにする +- [ADD] タグが打たれた場合に sumomo バイナリを Release に追加する - リアルタイムメッセージング以外の機能がほぼ全て含まれている sumomo をリリース時に含めるようにする - - sumomo はリリースバイナリを使用してビルドする - - リリースバイナリに含まれることで、ローカルビルドをせず機能確認をすることができるようになる + - Release 用の sumomo は C++ SDK のリリースバイナリを使用してビルドする - @torikizi ## 2025.1.0 @@ -110,7 +109,7 @@ - @melpon - [ADD] sumomo にビデオデバイスとオーディオデバイスを設定するオプションを追加 - @melpon -- [ADD] SoraSignalingConfig に degradation_preference を追加 +- [ADD] SoraSignalingConfig に degradation_preference を追加 - @melpon - [ADD] sumomo と test/hello に degradation_preference を設定するオプションを追加 - @melpon From 5c19bd66b0b0ff09ef11d2fb8815723e162be02a Mon Sep 17 00:00:00 2001 From: voluntas Date: Fri, 7 Feb 2025 11:25:45 +0900 Subject: [PATCH 22/29] =?UTF-8?q?=E3=82=A4=E3=83=B3=E3=83=87=E3=83=B3?= =?UTF-8?q?=E3=83=88=E3=81=8C=E3=81=8A=E3=81=8B=E3=81=97=E3=81=84=E3=81=AE?= =?UTF-8?q?=E3=82=92=E4=BF=AE=E6=AD=A3=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6bd705de..3797a5b5 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -96,6 +96,7 @@ jobs: with: name: examples_${{ matrix.name }} path: examples/examples_${{ matrix.name }} + build-macos: strategy: fail-fast: false @@ -154,6 +155,7 @@ jobs: name: examples_${{ matrix.name }} path: examples/examples_${{ matrix.name }} if: matrix.name == 'macos_arm64' + build-ubuntu: strategy: fail-fast: false @@ -295,7 +297,6 @@ jobs: with: name: ${{ matrix.platform.name }}.env path: _package/${{ matrix.platform.name }}/release/sora.env - # Examples のビルド - name: Build Examples run: | cd examples @@ -358,7 +359,6 @@ jobs: files: ${{ steps.env.outputs.package_paths }} prerelease: ${{ contains(github.ref, 'canary') }} - # Windows の Examples ビルド build-windows-examples: needs: create-release runs-on: windows-2022 @@ -368,7 +368,7 @@ jobs: strategy: matrix: example: - - name: sumomo + - name: sumomo steps: - uses: actions/checkout@v4 - name: Build Example @@ -398,7 +398,7 @@ jobs: strategy: matrix: example: - - name: sumomo + - name: sumomo steps: - uses: actions/checkout@v4 - name: Build Example From 38fc98c34104dfb42d4290bb6b0b8b75cdafb3ce Mon Sep 17 00:00:00 2001 From: voluntas Date: Fri, 7 Feb 2025 11:26:41 +0900 Subject: [PATCH 23/29] =?UTF-8?q?archive=20=E3=81=A7=E7=B5=B1=E4=B8=80?= =?UTF-8?q?=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 24 +++++++++--------------- 1 file changed, 9 insertions(+), 15 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 3797a5b5..6ef934ed 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -486,28 +486,22 @@ jobs: matrix: example: - name: sumomo - platform: - - name: windows_x86_64 - file_ext: zip - - name: macos_arm64 - file_ext: tar.gz - - name: ubuntu-20.04_x86_64 - file_ext: tar.gz - - name: ubuntu-22.04_x86_64 - file_ext: tar.gz - - name: ubuntu-24.04_x86_64 - file_ext: tar.gz - - name: ubuntu-24.04_armv8 - file_ext: tar.gz + archive: + - windows_x86_64.zip + - macos_arm64.tar.gz + - ubuntu-20.04_x86_64.tar.gz + - ubuntu-22.04_x86_64.tar.gz + - ubuntu-24.04_x86_64.tar.gz + - ubuntu-24.04_armv8.tar.gz steps: - uses: actions/checkout@v4 - uses: actions/download-artifact@v4 with: - name: ${{ matrix.example.name }}_${{ matrix.platform.name }}.${{ matrix.platform.file_ext }} + name: ${{ matrix.example.name }}_${{ matrix.archive.name }} - name: Release Examples uses: softprops/action-gh-release@v2 with: - files: ${{ matrix.example.name }}_${{ matrix.platform.name }}.${{ matrix.platform.file_ext }} + files: ${{ matrix.example.name }}_${{ matrix.archive.name }} notification: name: Slack Notification From 34de5071e6b2003ef9dd9dc0a0f7c2108e5da991 Mon Sep 17 00:00:00 2001 From: voluntas Date: Fri, 7 Feb 2025 11:27:16 +0900 Subject: [PATCH 24/29] =?UTF-8?q?name=20=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 6ef934ed..34a1bdb3 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -485,7 +485,7 @@ jobs: strategy: matrix: example: - - name: sumomo + - sumomo archive: - windows_x86_64.zip - macos_arm64.tar.gz @@ -497,11 +497,11 @@ jobs: - uses: actions/checkout@v4 - uses: actions/download-artifact@v4 with: - name: ${{ matrix.example.name }}_${{ matrix.archive.name }} + name: ${{ matrix.example }}_${{ matrix.archive }} - name: Release Examples uses: softprops/action-gh-release@v2 with: - files: ${{ matrix.example.name }}_${{ matrix.archive.name }} + files: ${{ matrix.example }}_${{ matrix.archive }} notification: name: Slack Notification From 921a80097a36a5a76e95eb4013ff52b4ae051238 Mon Sep 17 00:00:00 2001 From: voluntas Date: Fri, 7 Feb 2025 11:29:56 +0900 Subject: [PATCH 25/29] =?UTF-8?q?strategy=20=E3=82=92=E4=B8=8A=E3=81=AB?= =?UTF-8?q?=E3=81=99=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 54 ++++++++++++++++++------------------- 1 file changed, 27 insertions(+), 27 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 34a1bdb3..803bfb78 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -361,74 +361,70 @@ jobs: build-windows-examples: needs: create-release - runs-on: windows-2022 defaults: run: working-directory: ${{ github.workspace }}/examples strategy: matrix: example: - - name: sumomo + - sumomo + runs-on: windows-2022 steps: - uses: actions/checkout@v4 - name: Build Example run: | - python3 ${{ matrix.example.name }}/windows_x86_64/run.py + python3 ${{ matrix.example }}/windows_x86_64/run.py - name: Package Binary run: | # アップロード用のディレクトリを作成する - mkdir -p ${{ matrix.example.name }}_windows_x86_64 + mkdir -p ${{ matrix.example }}_windows_x86_64 # バイナリをアップロード用のディレクトリにコピーする - cp _build/windows_x86_64/release/${{ matrix.example.name }}/Release/${{ matrix.example.name }}.exe ${{ matrix.example.name }}_windows_x86_64/${{ matrix.example.name }}.exe + cp _build/windows_x86_64/release/${{ matrix.example }}/Release/${{ matrix.example }}.exe ${{ matrix.example }}_windows_x86_64/${{ matrix.example }}.exe # バイナリを圧縮する # 例: sumomo_windows_x86_64.zip - Compress-Archive -Path ${{ matrix.example.name }}_windows_x86_64 -DestinationPath ${{ matrix.example.name }}_windows_x86_64.zip + Compress-Archive -Path ${{ matrix.example }}_windows_x86_64 -DestinationPath ${{ matrix.example }}_windows_x86_64.zip - name: Upload Examples Artifact uses: actions/upload-artifact@v4 with: - name: ${{ matrix.example.name }}_windows_x86_64.zip - path: examples/${{ matrix.example.name }}_windows_x86_64.zip + name: ${{ matrix.example }}_windows_x86_64.zip + path: examples/${{ matrix.example }}_windows_x86_64.zip build-macos-examples: needs: create-release - runs-on: macos-14 defaults: run: working-directory: ${{ github.workspace }}/examples strategy: matrix: example: - - name: sumomo + - sumomo + runs-on: macos-14 steps: - uses: actions/checkout@v4 - name: Build Example run: | - python3 ${{ matrix.example.name }}/macos_arm64/run.py + python3 ${{ matrix.example }}/macos_arm64/run.py - name: Package Binary run: | # アップロード用のディレクトリを作成する - mkdir -p ${{ matrix.example.name }}_macos_arm64 - cp _build/macos_arm64/release/${{ matrix.example.name }}/${{ matrix.example.name }} ${{ matrix.example.name }}_macos_arm64/${{ matrix.example.name }} + mkdir -p ${{ matrix.example }}_macos_arm64 + cp _build/macos_arm64/release/${{ matrix.example }}/${{ matrix.example }} ${{ matrix.example }}_macos_arm64/${{ matrix.example }} # バイナリを圧縮する # 例: sumomo_macos_arm64.tar.gz - tar -czf ${{ matrix.example.name }}_macos_arm64.tar.gz ${{ matrix.example.name }}_macos_arm64 + tar -czf ${{ matrix.example }}_macos_arm64.tar.gz ${{ matrix.example }}_macos_arm64 - name: Upload Examples Artifact uses: actions/upload-artifact@v4 with: - name: ${{ matrix.example.name }}_macos_arm64.tar.gz - path: examples/${{ matrix.example.name }}_macos_arm64.tar.gz + name: ${{ matrix.example }}_macos_arm64.tar.gz + path: examples/${{ matrix.example }}_macos_arm64.tar.gz build-ubuntu-examples: needs: create-release - runs-on: ${{ matrix.platform.runs-on }} - defaults: - run: - working-directory: ${{ github.workspace }}/examples strategy: fail-fast: false matrix: example: - - name: sumomo + - sumomo platform: - name: ubuntu-20.04_x86_64 runs-on: ubuntu-20.04 @@ -438,6 +434,10 @@ jobs: runs-on: ubuntu-24.04 - name: ubuntu-24.04_armv8 runs-on: ubuntu-24.04 + defaults: + run: + working-directory: ${{ github.workspace }}/examples + runs-on: ${{ matrix.platform.runs-on }} steps: - uses: actions/checkout@v4 - name: Install deps @@ -459,21 +459,21 @@ jobs: sudo sed -e 's/Apt::Get::AllowUnauthenticated=true/Apt::Get::AllowUnauthenticated=true";\n$config_str .= " -o Acquire::AllowInsecureRepositories=true/' -i /usr/sbin/multistrap - name: Build Example run: | - python3 ${{ matrix.example.name }}/${{ matrix.platform.name }}/run.py + python3 ${{ matrix.example }}/${{ matrix.platform.name }}/run.py - name: Package Binary run: | # アップロード用のディレクトリを作成する - mkdir -p ${{ matrix.example.name }}_${{ matrix.platform.name }} + mkdir -p ${{ matrix.example }}_${{ matrix.platform.name }} # バイナリをアップロード用のディレクトリにコピーする - cp _build/${{ matrix.platform.name }}/release/${{ matrix.example.name }}/${{ matrix.example.name }} ${{ matrix.example.name }}_${{ matrix.platform.name }}/${{ matrix.example.name }} + cp _build/${{ matrix.platform.name }}/release/${{ matrix.example }}/${{ matrix.example }} ${{ matrix.example }}_${{ matrix.platform.name }}/${{ matrix.example }} # バイナリを圧縮する # 例: sumomo_ubuntu-24.04_x86_64.tar.gz - tar -czf ${{ matrix.example.name }}_${{ matrix.platform.name }}.tar.gz ${{ matrix.example.name }}_${{ matrix.platform.name }} + tar -czf ${{ matrix.example }}_${{ matrix.platform }}.tar.gz ${{ matrix.example }}_${{ matrix.platform }} - name: Upload Examples Artifact uses: actions/upload-artifact@v4 with: - name: ${{ matrix.example.name }}_${{ matrix.platform.name }}.tar.gz - path: examples/${{ matrix.example.name }}_${{ matrix.platform.name }}.tar.gz + name: ${{ matrix.example }}_${{ matrix.platform.name }}.tar.gz + path: examples/${{ matrix.example }}_${{ matrix.platform.name }}.tar.gz create-release-example: name: Create Release Examples From 875d1cb1ffd3e4c2791b4f2e6289e80257a74170 Mon Sep 17 00:00:00 2001 From: voluntas Date: Fri, 7 Feb 2025 11:31:58 +0900 Subject: [PATCH 26/29] =?UTF-8?q?strategy=20=E3=82=92=E4=B8=8A=E3=81=AB?= =?UTF-8?q?=E6=8C=81=E3=81=A3=E3=81=A6=E3=81=8F=E3=82=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 803bfb78..4a2657fd 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -361,13 +361,13 @@ jobs: build-windows-examples: needs: create-release - defaults: - run: - working-directory: ${{ github.workspace }}/examples strategy: matrix: example: - sumomo + defaults: + run: + working-directory: ${{ github.workspace }}/examples runs-on: windows-2022 steps: - uses: actions/checkout@v4 @@ -391,13 +391,13 @@ jobs: build-macos-examples: needs: create-release - defaults: - run: - working-directory: ${{ github.workspace }}/examples strategy: matrix: example: - sumomo + defaults: + run: + working-directory: ${{ github.workspace }}/examples runs-on: macos-14 steps: - uses: actions/checkout@v4 From b2687cef809b79c93d81c287ecfaec64d5f8210e Mon Sep 17 00:00:00 2001 From: voluntas Date: Fri, 7 Feb 2025 11:37:06 +0900 Subject: [PATCH 27/29] =?UTF-8?q?=E4=B8=8D=E8=A6=81=E3=81=AA=E3=82=B3?= =?UTF-8?q?=E3=83=A1=E3=83=B3=E3=83=88=E5=89=8A=E9=99=A4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 4a2657fd..451ff3b7 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -82,7 +82,6 @@ jobs: with: name: ${{ matrix.name }}.env path: _package/${{ matrix.name }}/release/sora.env - # Examples のビルド - name: Build Examples run: | cd examples @@ -139,7 +138,6 @@ jobs: with: name: ${{ matrix.name }}.env path: _package/${{ matrix.name }}/release/sora.env - # Examples のビルド - name: Build Examples run: | cd examples @@ -481,7 +479,6 @@ jobs: - build-windows-examples - build-macos-examples - build-ubuntu-examples - runs-on: ubuntu-24.04 strategy: matrix: example: @@ -493,6 +490,7 @@ jobs: - ubuntu-22.04_x86_64.tar.gz - ubuntu-24.04_x86_64.tar.gz - ubuntu-24.04_armv8.tar.gz + runs-on: ubuntu-24.04 steps: - uses: actions/checkout@v4 - uses: actions/download-artifact@v4 From 83a455983f4459abb71c8bdf3393ef98876bb898 Mon Sep 17 00:00:00 2001 From: voluntas Date: Fri, 7 Feb 2025 11:38:48 +0900 Subject: [PATCH 28/29] =?UTF-8?q?=E3=82=B3=E3=82=B9=E3=83=A1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- CHANGES.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGES.md b/CHANGES.md index 726a2d27..75551b50 100644 --- a/CHANGES.md +++ b/CHANGES.md @@ -41,8 +41,8 @@ - [ADD] OpenH264 デコーダに対応する - @melpon - [ADD] タグが打たれた場合に sumomo バイナリを Release に追加する - - リアルタイムメッセージング以外の機能がほぼ全て含まれている sumomo をリリース時に含めるようにする - Release 用の sumomo は C++ SDK のリリースバイナリを使用してビルドする + - リアルタイムメッセージング以外の機能がほぼ全て含まれている sumomo をリリース時に含めるようにする - @torikizi ## 2025.1.0 From 378ad70c6d811d8eed58a5811212cc06c1179dda Mon Sep 17 00:00:00 2001 From: torikizi <51085972+torikizi@users.noreply.github.com> Date: Fri, 7 Feb 2025 12:20:43 +0900 Subject: [PATCH 29/29] =?UTF-8?q?Ubuntu=20=E3=81=AF=20matrix.name=20?= =?UTF-8?q?=E3=81=BE=E3=81=A7=E6=8C=87=E5=AE=9A=E3=81=8C=E5=BF=85=E8=A6=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 451ff3b7..c6f8f01f 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -466,7 +466,7 @@ jobs: cp _build/${{ matrix.platform.name }}/release/${{ matrix.example }}/${{ matrix.example }} ${{ matrix.example }}_${{ matrix.platform.name }}/${{ matrix.example }} # バイナリを圧縮する # 例: sumomo_ubuntu-24.04_x86_64.tar.gz - tar -czf ${{ matrix.example }}_${{ matrix.platform }}.tar.gz ${{ matrix.example }}_${{ matrix.platform }} + tar -czf ${{ matrix.example }}_${{ matrix.platform.name }}.tar.gz ${{ matrix.example }}_${{ matrix.platform.name }} - name: Upload Examples Artifact uses: actions/upload-artifact@v4 with: