Skip to content

Merge branch 'master' into enable-predictive-text #1262

Merge branch 'master' into enable-predictive-text

Merge branch 'master' into enable-predictive-text #1262

Workflow file for this run

name: Gallery App
on:
push:
paths:
- 'app/qml/**'
- 'app/qmlV2/**'
- 'gallery/**'
- '.github/workflows/gallery.yml'
release:
types:
- published
concurrency:
group: ci-${{github.ref}}-gallery
cancel-in-progress: true
jobs:
gallery_build:
if: ( github.repository == 'MerginMaps/mobile' ) && (!contains(github.event.head_commit.message, 'Translate '))
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-13, windows-2019]
runs-on: ${{ matrix.os }}
env:
QT_VERSION: '6.6.3' # use scripts/update_qt_version.bash to change
GITHUB_TOKEN: ${{ secrets.INPUTAPP_BOT_GITHUB_TOKEN }}
CACHE_VERSION: 1
XC_VERSION: ${{ '15.2' }} # macos-only
VS_VERSION: "2019" # win-only
QT_ARCH: "win64_msvc2019_64" # win-only
steps:
- uses: actions/checkout@v3
- name: Install Qt
uses: jurplel/install-qt-action@v3
with:
version: ${{ env.QT_VERSION }}
setup-python: 'false'
modules: 'qtsensors qtconnectivity qt5compat qtmultimedia qtpositioning qtshadertools'
dir: ${{ github.workspace }}
cache: true
cache-key-prefix: ${{ runner.os }}-QtCache-v${{ env.CACHE_VERSION}}-${{ env.QT_VERSION }}-gallery
- name: Select latest Xcode (macos)
if: matrix.os == 'macos-latest'
run: "sudo xcode-select -s /Applications/Xcode_$XC_VERSION.app"
- uses: seanmiddleditch/gha-setup-ninja@master
if: matrix.os != 'windows-2019'
- name: Configure and Build Gallery App (macos & ubuntu)
if: matrix.os != 'windows-2019'
run: |
mkdir -p ${{ github.workspace }}/install-gallery
mkdir -p ${{ github.workspace }}/build-gallery
cd ${{ github.workspace }}/build-gallery
cmake \
-DCMAKE_BUILD_TYPE=Release \
-DCMAKE_PREFIX_PATH=${{ github.workspace }}/Qt/${QT_VERSION}/macos \
-DCMAKE_INSTALL_PREFIX:PATH=${{ github.workspace }}/install-gallery \
-GNinja \
-S ../gallery \
-B ./
ninja
ninja install
ls -la ${{ github.workspace }}/install-gallery
- name: Prepare vars (windows)
if: matrix.os == 'windows-2019'
id: vars
shell: bash
run: |
WORKSPACE_DIR=$(cygpath -m "${{ github.workspace }}")
echo "WORKSPACE_DIR=$WORKSPACE_DIR" >> $GITHUB_OUTPUT
echo "WORKSPACE_DIR: $WORKSPACE_DIR"
- name: Developer Command Prompt for Microsoft Visual C++ (windows)
if: matrix.os == 'windows-2019'
uses: ilammy/msvc-dev-cmd@v1
with:
vsversion: ${{ env.VS_VERSION }}
- name: Configure and Build Gallery App (windows)
if: matrix.os == 'windows-2019'
shell: cmd
run: |
mkdir install-gallery -ea 0
mkdir build-gallery -ea 0
cd build-gallery
cmake ^
-DCMAKE_BUILD_TYPE=Release ^
-DCMAKE_PREFIX_PATH:PATH=${{ env.Qt6_Dir }} ^
-DCMAKE_INSTALL_PREFIX:PATH=${{ steps.vars.outputs.WORKSPACE_DIR }}/install-gallery ^
-G "NMake Makefiles" ^
-S ${{ steps.vars.outputs.WORKSPACE_DIR }}/gallery ^
-B .
nmake
nmake install
- name: Prepare artefacts (macos & ubuntu)
if: matrix.os != 'windows-2019'
run: |
cd ${{ github.workspace }}/install-gallery
ls -la .
tar -czf ${{ github.workspace }}/merginmaps-gallery-${{ matrix.os }}.tar.gz .
- name: Prepare artefacts (windows)
if: matrix.os == 'windows-2019'
shell: cmd
run: |
cd install-gallery
dir
tar -czf ${{ github.workspace }}/merginmaps-gallery-${{ matrix.os }}.tar.gz .
- name: Upload APK to Artifacts
uses: actions/upload-artifact@v3
with:
path: ${{ github.workspace }}/merginmaps-gallery-${{ matrix.os }}.tar.gz
name: Mergin Maps Gallery ${{ matrix.os }}