change to github m1 instead of selfhost m1
This commit is contained in:
parent
e084ff4f7b
commit
30ad142868
113
.github/workflows/flutter-build.yml
vendored
113
.github/workflows/flutter-build.yml
vendored
@ -320,6 +320,8 @@ jobs:
|
|||||||
./rustdesk-*.tar.gz
|
./rustdesk-*.tar.gz
|
||||||
|
|
||||||
build-for-macOS-arm64:
|
build-for-macOS-arm64:
|
||||||
|
# use build-for-macOS instead
|
||||||
|
if: false
|
||||||
name: build-for-macOS-arm64
|
name: build-for-macOS-arm64
|
||||||
runs-on: [self-hosted, macOS, ARM64]
|
runs-on: [self-hosted, macOS, ARM64]
|
||||||
steps:
|
steps:
|
||||||
@ -392,6 +394,99 @@ jobs:
|
|||||||
|
|
||||||
build-rustdesk-ios:
|
build-rustdesk-ios:
|
||||||
if: ${{ inputs.upload-artifact }}
|
if: ${{ inputs.upload-artifact }}
|
||||||
|
name: build rustdesk ios ipa ${{ matrix.job.target }} (${{ matrix.job.os }}) [${{ matrix.job.extra-build-features }}]
|
||||||
|
runs-on: ${{ matrix.job.os }}
|
||||||
|
strategy:
|
||||||
|
fail-fast: false
|
||||||
|
matrix:
|
||||||
|
job:
|
||||||
|
- {
|
||||||
|
arch: aarch64,
|
||||||
|
target: aarch64-apple-ios,
|
||||||
|
os: macos-13,
|
||||||
|
extra-build-features: "",
|
||||||
|
}
|
||||||
|
steps:
|
||||||
|
- name: Export GitHub Actions cache environment variables
|
||||||
|
uses: actions/github-script@v6
|
||||||
|
with:
|
||||||
|
script: |
|
||||||
|
core.exportVariable('ACTIONS_CACHE_URL', process.env.ACTIONS_CACHE_URL || '');
|
||||||
|
core.exportVariable('ACTIONS_RUNTIME_TOKEN', process.env.ACTIONS_RUNTIME_TOKEN || '');
|
||||||
|
|
||||||
|
- name: Install dependencies
|
||||||
|
run: |
|
||||||
|
brew install nasm
|
||||||
|
- name: Checkout source code
|
||||||
|
uses: actions/checkout@v3
|
||||||
|
- name: Install flutter
|
||||||
|
uses: subosito/flutter-action@v2
|
||||||
|
with:
|
||||||
|
channel: "stable"
|
||||||
|
flutter-version: ${{ env.FLUTTER_VERSION }}
|
||||||
|
|
||||||
|
- name: Setup vcpkg with Github Actions binary cache
|
||||||
|
uses: lukka/run-vcpkg@v11
|
||||||
|
with:
|
||||||
|
vcpkgGitCommitId: ${{ env.VCPKG_COMMIT_ID }}
|
||||||
|
|
||||||
|
- name: Install vcpkg dependencies
|
||||||
|
run: |
|
||||||
|
$VCPKG_ROOT/vcpkg install --triplet arm64-ios --x-install-root="$VCPKG_ROOT/installed"
|
||||||
|
shell: bash
|
||||||
|
|
||||||
|
- name: Install Rust toolchain
|
||||||
|
uses: dtolnay/rust-toolchain@v1
|
||||||
|
with:
|
||||||
|
toolchain: ${{ env.RUST_VERSION }}
|
||||||
|
targets: ${{ matrix.job.target }}
|
||||||
|
components: "rustfmt"
|
||||||
|
|
||||||
|
- uses: Swatinem/rust-cache@v2
|
||||||
|
with:
|
||||||
|
prefix-key: rustdesk-lib-cache-ios
|
||||||
|
key: ${{ matrix.job.target }}-${{ matrix.job.extra-build-features }}
|
||||||
|
|
||||||
|
- name: Install flutter rust bridge deps
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
cargo install flutter_rust_bridge_codegen --version ${{ env.FLUTTER_RUST_BRIDGE_VERSION }} --features "uuid"
|
||||||
|
pushd flutter && flutter pub get && popd
|
||||||
|
~/.cargo/bin/flutter_rust_bridge_codegen --rust-input ./src/flutter_ffi.rs --dart-output ./flutter/lib/generated_bridge.dart --c-output ./flutter/ios/Runner/bridge_generated.h
|
||||||
|
|
||||||
|
- name: Build rustdesk lib
|
||||||
|
run: |
|
||||||
|
rustup target add ${{ matrix.job.target }}
|
||||||
|
cargo build --features flutter,hwcodec --release --target aarch64-apple-ios --lib
|
||||||
|
|
||||||
|
- name: Build rustdesk
|
||||||
|
shell: bash
|
||||||
|
run: |
|
||||||
|
pushd flutter
|
||||||
|
# flutter build ipa --release --obfuscate --split-debug-info=./split-debug-info --no-codesign
|
||||||
|
# for easy debugging
|
||||||
|
flutter build ipa --release --no-codesign
|
||||||
|
|
||||||
|
# - name: Upload Artifacts
|
||||||
|
# # if: env.ANDROID_SIGNING_KEY != null && env.UPLOAD_ARTIFACT == 'true'
|
||||||
|
# uses: actions/upload-artifact@master
|
||||||
|
# with:
|
||||||
|
# name: rustdesk-${{ env.VERSION }}-${{ matrix.job.arch }}.apk
|
||||||
|
# path: flutter/build/ios/ipa/*.ipa
|
||||||
|
|
||||||
|
# - name: Publish ipa package
|
||||||
|
# # if: env.ANDROID_SIGNING_KEY != null && env.UPLOAD_ARTIFACT == 'true'
|
||||||
|
# uses: softprops/action-gh-release@v1
|
||||||
|
# with:
|
||||||
|
# prerelease: true
|
||||||
|
# tag_name: ${{ env.TAG_NAME }}
|
||||||
|
# files: |
|
||||||
|
# flutter/build/ios/ipa/*.ipa
|
||||||
|
|
||||||
|
|
||||||
|
build-rustdesk-ios-selfhost:
|
||||||
|
#if: ${{ inputs.upload-artifact }}
|
||||||
|
if: false
|
||||||
runs-on: [self-hosted, macOS, ARM64]
|
runs-on: [self-hosted, macOS, ARM64]
|
||||||
strategy:
|
strategy:
|
||||||
fail-fast: false
|
fail-fast: false
|
||||||
@ -458,6 +553,12 @@ jobs:
|
|||||||
extra-build-args: "",
|
extra-build-args: "",
|
||||||
arch: x86_64,
|
arch: x86_64,
|
||||||
}
|
}
|
||||||
|
- {
|
||||||
|
target: aarch64-apple-darwin,
|
||||||
|
os: macos-latest,
|
||||||
|
extra-build-args: "",
|
||||||
|
arch: aarch64,
|
||||||
|
}
|
||||||
steps:
|
steps:
|
||||||
- name: Export GitHub Actions cache environment variables
|
- name: Export GitHub Actions cache environment variables
|
||||||
uses: actions/github-script@v6
|
uses: actions/github-script@v6
|
||||||
@ -559,14 +660,14 @@ jobs:
|
|||||||
CREATE_DMG="$(command -v create-dmg)"
|
CREATE_DMG="$(command -v create-dmg)"
|
||||||
CREATE_DMG="$(readlink -f "$CREATE_DMG")"
|
CREATE_DMG="$(readlink -f "$CREATE_DMG")"
|
||||||
sed -i -e 's/MAXIMUM_UNMOUNTING_ATTEMPTS=3/MAXIMUM_UNMOUNTING_ATTEMPTS=7/' "$CREATE_DMG"
|
sed -i -e 's/MAXIMUM_UNMOUNTING_ATTEMPTS=3/MAXIMUM_UNMOUNTING_ATTEMPTS=7/' "$CREATE_DMG"
|
||||||
create-dmg --icon "RustDesk.app" 200 190 --hide-extension "RustDesk.app" --window-size 800 400 --app-drop-link 600 185 rustdesk-${{ env.VERSION }}-x64.dmg ./flutter/build/macos/Build/Products/Release/RustDesk.app
|
create-dmg --icon "RustDesk.app" 200 190 --hide-extension "RustDesk.app" --window-size 800 400 --app-drop-link 600 185 rustdesk-${{ env.VERSION }}-${{ matrix.job.arch }}.dmg ./flutter/build/macos/Build/Products/Release/RustDesk.app
|
||||||
|
|
||||||
- name: Upload unsigned macOS app
|
- name: Upload unsigned macOS app
|
||||||
if: env.UPLOAD_ARTIFACT == 'true'
|
if: env.UPLOAD_ARTIFACT == 'true'
|
||||||
uses: actions/upload-artifact@master
|
uses: actions/upload-artifact@master
|
||||||
with:
|
with:
|
||||||
name: rustdesk-unsigned-macos-x64
|
name: rustdesk-unsigned-macos-${{ matrix.job.arch }}
|
||||||
path: rustdesk-${{ env.VERSION }}-x64.dmg # can not upload the directory directly or tar.gz, which destroy the link structure, causing the codesign failed
|
path: rustdesk-${{ env.VERSION }}-${{ matrix.job.arch }}.dmg # can not upload the directory directly or tar.gz, which destroy the link structure, causing the codesign failed
|
||||||
|
|
||||||
- name: Codesign app and create signed dmg
|
- name: Codesign app and create signed dmg
|
||||||
if: env.MACOS_P12_BASE64 != null && env.UPLOAD_ARTIFACT == 'true'
|
if: env.MACOS_P12_BASE64 != null && env.UPLOAD_ARTIFACT == 'true'
|
||||||
@ -605,20 +706,20 @@ jobs:
|
|||||||
publish_unsigned_mac:
|
publish_unsigned_mac:
|
||||||
needs:
|
needs:
|
||||||
- build-for-macOS
|
- build-for-macOS
|
||||||
- build-for-macOS-arm64
|
#- build-for-macOS-arm64
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
if: ${{ inputs.upload-artifact }}
|
if: ${{ inputs.upload-artifact }}
|
||||||
steps:
|
steps:
|
||||||
- name: Download artifacts
|
- name: Download artifacts
|
||||||
uses: actions/download-artifact@master
|
uses: actions/download-artifact@master
|
||||||
with:
|
with:
|
||||||
name: rustdesk-unsigned-macos-x64
|
name: rustdesk-unsigned-macos-x86_64
|
||||||
path: ./
|
path: ./
|
||||||
|
|
||||||
- name: Download Artifacts
|
- name: Download Artifacts
|
||||||
uses: actions/download-artifact@master
|
uses: actions/download-artifact@master
|
||||||
with:
|
with:
|
||||||
name: rustdesk-unsigned-macos-arm64
|
name: rustdesk-unsigned-macos-aarch64
|
||||||
path: ./
|
path: ./
|
||||||
|
|
||||||
- name: Combine unsigned macos app
|
- name: Combine unsigned macos app
|
||||||
|
Loading…
x
Reference in New Issue
Block a user