.github: Don't upload to S3, just for this particular branch, see det… #3218
Workflow file for this run
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: Linux Release | |
on: | |
push: | |
branches: | |
- 'master' | |
- 'Stable*' | |
tags: | |
- 'v*' | |
paths-ignore: | |
- 'docs/**' | |
- '.github/workflows/**' | |
pull_request: | |
branches: | |
- '*' | |
paths-ignore: | |
- 'docs/**' | |
- '.github/workflows/**' | |
defaults: | |
run: | |
shell: bash | |
env: | |
SOURCE_DIR: ${{ github.workspace }} | |
QT_VERSION: 5.15.2 | |
ARTIFACT: QGroundControl.AppImage | |
BUILD_TYPE: ${{ fromJSON('["DailyBuild", "StableBuild"]')[ github.ref_type == 'tag' || contains(github.ref, 'Stable_' ) ] }} | |
jobs: | |
build: | |
runs-on: ubuntu-20.04 | |
steps: | |
- name: Checkout repo | |
uses: actions/checkout@v3 | |
with: | |
submodules: recursive | |
- name: Get all tags for correct version determination | |
working-directory: ${{ github.workspace }} | |
run: | | |
git fetch --all --tags -f --depth 1 | |
- name: Install Qt | |
uses: jurplel/install-qt-action@v3 | |
with: | |
version: ${{ env.QT_VERSION }} | |
host: linux | |
target: desktop | |
dir: ${{ runner.temp }} | |
modules: qtcharts | |
setup-python: true | |
- name: Install QGC source dependencies | |
run: sudo apt-get install -y libsdl2-dev | |
- name: Install Gstreamer | |
run: sudo apt-get install -y libgstreamer-plugins-base1.0-dev libgstreamer1.0-0:amd64 libgstreamer1.0-dev | |
- name: Install ccache | |
run: sudo apt-get install ccache | |
- name: Install post-link dependencies | |
run: sudo apt-get install -y binutils patchelf | |
- name: Prepare ccache timestamp | |
id: ccache_cache_timestamp | |
run: echo "name=timestamp::$(date --utc +'%Y-%m-%d-%H\;%M\;%S')" >> $GITHUB_OUTPUT | |
- name: ccache cache files | |
uses: actions/cache@v3 | |
with: | |
path: ~/.ccache | |
key: ${{ runner.os }}-ccache-${{steps.ccache_cache_timestamp.outputs.timestamp}} | |
restore-keys: ${{ runner.os }}-ccache- | |
- name: Setup ccache | |
run: | | |
mkdir -p ~/.ccache | |
echo "base_dir = ${GITHUB_WORKSPACE}" > ~/.ccache/ccache.conf | |
echo "compression = true" >> ~/.ccache/ccache.conf | |
echo "compression_level = 5" >> ~/.ccache/ccache.conf | |
ccache -s | |
ccache -z | |
- name: Create build directory | |
run: mkdir ${{ runner.temp }}/shadow_build_dir | |
- name: Build | |
working-directory: ${{ runner.temp }}/shadow_build_dir | |
run: | | |
qmake -r ${SOURCE_DIR}/qgroundcontrol.pro CONFIG+=installer CONFIG+=${BUILD_TYPE} | |
make -j2 | |
- name: ccache post-run | |
run: ccache -s | |
- name: Create AppImage | |
working-directory: ${{ runner.temp }}/shadow_build_dir | |
run: ${SOURCE_DIR}/deploy/create_linux_appimage.sh ${SOURCE_DIR} ./staging ./package; | |
- name: Save artifact | |
uses: actions/upload-artifact@master | |
with: | |
name: ${{ env.ARTIFACT }} | |
path: ${{ runner.temp }}/shadow_build_dir/package/${{ env.ARTIFACT }} |