|
@@ -70,11 +70,13 @@ jobs:
|
|
|
|
|
|
- uses: Swatinem/rust-cache@v2
|
|
- uses: Swatinem/rust-cache@v2
|
|
with:
|
|
with:
|
|
- prefix-key: ${{ matrix.job.os }}
|
|
|
|
|
|
+ prefix-key: appflowy-lib-cache
|
|
|
|
+ key: ${{ matrix.job.os }}-${{ matrix.job.target }}
|
|
|
|
|
|
- name: Install prerequisites
|
|
- name: Install prerequisites
|
|
working-directory: frontend
|
|
working-directory: frontend
|
|
run: |
|
|
run: |
|
|
|
|
+ vcpkg integrate install
|
|
cargo install --force cargo-make
|
|
cargo install --force cargo-make
|
|
cargo install --force duckscript_cli
|
|
cargo install --force duckscript_cli
|
|
|
|
|
|
@@ -157,7 +159,8 @@ jobs:
|
|
|
|
|
|
- uses: Swatinem/rust-cache@v2
|
|
- uses: Swatinem/rust-cache@v2
|
|
with:
|
|
with:
|
|
- prefix-key: ${{ matrix.job.os }}
|
|
|
|
|
|
+ prefix-key: appflowy-lib-cache
|
|
|
|
+ key: ${{ matrix.job.os }}-${{ matrix.job.target }}
|
|
|
|
|
|
- name: Install prerequisites
|
|
- name: Install prerequisites
|
|
working-directory: frontend
|
|
working-directory: frontend
|
|
@@ -217,12 +220,14 @@ jobs:
|
|
LINUX_APP_RELEASE_PATH: frontend/app_flowy/product/${{ github.ref_name }}/linux/Release
|
|
LINUX_APP_RELEASE_PATH: frontend/app_flowy/product/${{ github.ref_name }}/linux/Release
|
|
LINUX_ZIP_NAME: AppFlowy_${{ matrix.job.target }}_${{ matrix.job.os }}.tar.gz
|
|
LINUX_ZIP_NAME: AppFlowy_${{ matrix.job.target }}_${{ matrix.job.os }}.tar.gz
|
|
LINUX_PACKAGE_NAME: AppFlowy_${{ github.ref_name }}_${{ matrix.job.os }}.deb
|
|
LINUX_PACKAGE_NAME: AppFlowy_${{ github.ref_name }}_${{ matrix.job.os }}.deb
|
|
|
|
+ # PKG_CONFIG_SYSROOT_DIR: /
|
|
strategy:
|
|
strategy:
|
|
fail-fast: false
|
|
fail-fast: false
|
|
matrix:
|
|
matrix:
|
|
job:
|
|
job:
|
|
- - { arch: x86_64, target: x86_64-unknown-linux-gnu, os: ubuntu-20.04, extra-build-args: "", }
|
|
|
|
- - { arch: x86_64, target: x86_64-unknown-linux-gnu, os: ubuntu-18.04, extra-build-args: "", }
|
|
|
|
|
|
+ - { arch: x86_64, target: x86_64-unknown-linux-gnu, os: ubuntu-20.04, extra-build-args: "", flutter_profile: production-linux-x86_64 }
|
|
|
|
+ # - { arch: aarch64, target: aarch64-unknown-linux-gnu, os: ubuntu-20.04, extra-build-args: "", flutter_profile: production-linux-aarch64 }
|
|
|
|
+ - { arch: x86_64, target: x86_64-unknown-linux-gnu, os: ubuntu-18.04, extra-build-args: "", flutter_profile: production-linux-x86_64}
|
|
steps:
|
|
steps:
|
|
- name: Checkout source code
|
|
- name: Checkout source code
|
|
uses: actions/checkout@v3
|
|
uses: actions/checkout@v3
|
|
@@ -245,7 +250,8 @@ jobs:
|
|
|
|
|
|
- uses: Swatinem/rust-cache@v2
|
|
- uses: Swatinem/rust-cache@v2
|
|
with:
|
|
with:
|
|
- prefix-key: ${{ matrix.job.os }}
|
|
|
|
|
|
+ prefix-key: appflowy-lib-cache
|
|
|
|
+ key: ${{ matrix.job.os }}-${{ matrix.job.target }}
|
|
|
|
|
|
- name: Install prerequisites
|
|
- name: Install prerequisites
|
|
working-directory: frontend
|
|
working-directory: frontend
|
|
@@ -257,12 +263,19 @@ jobs:
|
|
source $HOME/.cargo/env
|
|
source $HOME/.cargo/env
|
|
cargo install --force cargo-make
|
|
cargo install --force cargo-make
|
|
cargo install --force duckscript_cli
|
|
cargo install --force duckscript_cli
|
|
|
|
+ rustup target add ${{ matrix.job.target }}
|
|
|
|
+
|
|
|
|
+ - name: Install gcc-aarch64-linux-gnu
|
|
|
|
+ if: ${{ matrix.job.target == 'aarch64-unknown-linux-gnu' }}
|
|
|
|
+ working-directory: frontend
|
|
|
|
+ run: |
|
|
|
|
+ sudo apt-get install -qy binutils-aarch64-linux-gnu gcc-aarch64-linux-gnu g++-aarch64-linux-gnu
|
|
|
|
|
|
- name: Build AppFlowy
|
|
- name: Build AppFlowy
|
|
working-directory: frontend
|
|
working-directory: frontend
|
|
run: |
|
|
run: |
|
|
flutter config --enable-linux-desktop
|
|
flutter config --enable-linux-desktop
|
|
- cargo make --env APP_VERSION=${{ github.ref_name }} --profile production-linux-x86_64 appflowy
|
|
|
|
|
|
+ cargo make --env APP_VERSION=${{ github.ref_name }} --profile ${{ matrix.job.flutter_profile}} appflowy
|
|
|
|
|
|
- name: Archive Assert
|
|
- name: Archive Assert
|
|
working-directory: ${{ env.LINUX_APP_RELEASE_PATH }}
|
|
working-directory: ${{ env.LINUX_APP_RELEASE_PATH }}
|