Skip to content

Commit

Permalink
CI: Deployment Updates
Browse files Browse the repository at this point in the history
  • Loading branch information
HTRamsey committed Jan 17, 2025
1 parent 21153a4 commit 43504cb
Show file tree
Hide file tree
Showing 39 changed files with 243 additions and 139 deletions.
2 changes: 2 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,3 +13,5 @@ docker-compose.yml
# Ignore OS-specific files
.DS_Store
*.swp

CMakeLists.txt.user*
5 changes: 5 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
blank_issues_enabled: true
contact_links:
- name: "💬 Developer Chat"
url: https://discord.gg/dronecode
about: "QGroundControl developers (and many regular/deeply-involved users) can be found on the #QGroundControl channel on the Dronecode Discord."
1 change: 1 addition & 0 deletions .github/actions/qt-android/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@ runs:
key: ${{ runner.os }}-Android-${{ matrix.BuildType }}
max-size: 1G
save: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
verbose: 1
evict-old-files: 'job'

- name: Install Qt for ${{ runner.os }}
Expand Down
11 changes: 5 additions & 6 deletions .github/actions/upload/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,16 +4,15 @@ inputs:
artifact_name:
description: Artifact name
required: true
package_name:
description: Package name
required: true
aws_key_id:
description: AWS access key ID
required: false
aws_secret_access_key:
description: AWS secret access key
required: false
source:
description: Source location
required: false
default: package
github_token:
description: GitHub Token
required: false
Expand All @@ -24,8 +23,8 @@ runs:
- name: Save artifact
uses: actions/upload-artifact@v4
with:
name: ${{ inputs.artifact_name }}
path: ${{ runner.temp }}/shadow_build_dir/${{ inputs.source }}/${{ inputs.artifact_name }}
name: ${{ inputs.package_name }}
path: ${{ runner.temp }}/shadow_build_dir/${{ inputs.artifact_name }}

- name: Configure AWS Credentials
if: ${{ github.event_name == 'push' && !github.event.pull_request.head.repo.fork && inputs.aws_key_id != '' && inputs.aws_secret_access_key != '' }}
Expand Down
6 changes: 2 additions & 4 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
---
version: 2

updates:
Expand All @@ -8,7 +7,6 @@ updates:
interval: daily
groups:
github-actions:
update-types:
- patch
- minor
patterns:
- '*'
open-pull-requests-limit: 5
28 changes: 11 additions & 17 deletions .github/workflows/android-linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,17 +7,16 @@ on:
- 'Stable*'
tags:
- 'v*'
paths-ignore:
- 'deploy/**'
- 'docs/**'
pull_request:
paths-ignore:
- 'deploy/**'
- 'docs/**'
- '.github/workflows/docs_deploy.yml'
- '.github/workflows/linux.yml'
- '.github/workflows/macos.yml'
- '.github/workflows/windows.yml'
paths:
- '.github/workflows/android-linux.yml'
- 'deploy/android/**'
- 'src/**'

concurrency:
# cancel jobs on PRs only
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}

jobs:
build:
Expand All @@ -33,6 +32,7 @@ jobs:

env:
ARTIFACT: QGroundControl.apk
PACKAGE: QGroundControl
QT_VERSION: 6.8.1
GST_VERSION: 1.22.12
QT_ANDROID_KEYSTORE_PATH: ${{ github.workspace }}/deploy/android/android_release.keystore
Expand All @@ -42,12 +42,6 @@ jobs:
QT_ANDROID_ABIS: ${{ matrix.BuildType == 'Release' && 'armeabi-v7a;arm64-v8a' || 'arm64-v8a' }}

steps:
- name: Free Disk Space (Ubuntu)
uses: jlumbroso/free-disk-space@main
with:
android: 'false'
continue-on-error: true

- name: Checkout repo
uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -97,9 +91,9 @@ jobs:
uses: ./.github/actions/upload
with:
artifact_name: ${{ env.ARTIFACT }}
package_name: ${{ env.PACKAGE }}
aws_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
source: ''
github_token: ${{ secrets.GITHUB_TOKEN }}

# - name: Deploy to Play Store
Expand Down
5 changes: 5 additions & 0 deletions .github/workflows/android-macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,11 @@ name: Android-MacOS
on:
workflow_dispatch:

concurrency:
# cancel jobs on PRs only
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}

jobs:
build:
runs-on: macos-latest
Expand Down
19 changes: 9 additions & 10 deletions .github/workflows/android-windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,17 +7,16 @@ on:
- 'Stable*'
tags:
- 'v*'
paths-ignore:
- 'deploy/**'
- 'docs/**'
pull_request:
paths-ignore:
- 'deploy/**'
- 'docs/**'
- '.github/workflows/docs_deploy.yml'
- '.github/workflows/linux.yml'
- '.github/workflows/macos.yml'
- '.github/workflows/windows.yml'
paths:
- '.github/workflows/android-windows.yml'
- 'deploy/android/**'
- 'src/**'

concurrency:
# cancel jobs on PRs only
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}

jobs:
build:
Expand Down
22 changes: 10 additions & 12 deletions .github/workflows/custom.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,19 +7,16 @@ on:
- 'Stable*'
tags:
- 'v*'
paths-ignore:
- 'android/**'
- 'deploy/**'
- 'docs/**'
pull_request:
paths-ignore:
- 'android/**'
- 'deploy/**'
- 'docs/**'
- '.github/workflows/docs_deploy.yml'
- '.github/workflows/android.yml'
- '.github/workflows/linux.yml'
- '.github/workflows/macos.yml'
paths:
- 'src/**'
- 'custom-example/**'
- 'deploy/windows/**'

concurrency:
# cancel jobs on PRs only
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}

jobs:
build:
Expand Down Expand Up @@ -84,6 +81,7 @@ jobs:
max-size: 1G
variant: sccache
save: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
verbose: 1
evict-old-files: 'job'

- name: Install Qt for Windows (x64)
Expand Down
21 changes: 9 additions & 12 deletions .github/workflows/docker-linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,19 +7,16 @@ on:
- 'Stable*'
tags:
- 'v*'
paths-ignore:
- 'android/**'
- 'deploy/**'
- 'docs/**'
pull_request:
paths-ignore:
- 'android/**'
- 'deploy/**'
- 'docs/**'
- '.github/workflows/docs_deploy.yml'
- '.github/workflows/android.yml'
- '.github/workflows/macos.yml'
- '.github/workflows/windows.yml'
paths:
- 'src/**'
- 'deploy/docker/**'
- 'deploy/linux/**'

concurrency:
# cancel jobs on PRs only
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}

jobs:
build:
Expand Down
15 changes: 10 additions & 5 deletions .github/workflows/ios.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,11 @@ name: iOS
on:
workflow_dispatch:

concurrency:
# cancel jobs on PRs only
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}

jobs:
build:
runs-on: macos-latest
Expand All @@ -17,6 +22,7 @@ jobs:

env:
ARTIFACT: QGroundControl.app
PACKAGE: QGroundControl
QT_VERSION: 6.8.1
GST_VERSION: 1.22.12

Expand All @@ -28,10 +34,7 @@ jobs:
brew uninstall google-chrome
sudo rm -rf /Users/runner/Library/Android
sudo rm -rf /Applications/Xcode_14*
sudo rm -rf /Applications/Xcode_15.0*
sudo rm -rf /Applications/Xcode_15.1*
sudo rm -rf /Applications/Xcode_15.2*
sudo rm -rf /Applications/Xcode_15.3*
sudo rm -rf /Applications/Xcode_15*
ls /Applications
df -h
Expand Down Expand Up @@ -60,9 +63,11 @@ jobs:
- name: Set Up Cache
uses: hendrikmuhs/ccache-action@main
with:
create-symlink: true
key: ${{ runner.os }}-iOS-${{ matrix.BuildType }}
max-size: 1G
save: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
verbose: 1
evict-old-files: 'job'

- name: Install Qt for MacOS
Expand Down Expand Up @@ -106,5 +111,5 @@ jobs:
- name: Save App
uses: actions/upload-artifact@v4
with:
name: ${{ env.ARTIFACT }}
name: ${{ env.PACKAGE }}
path: ${{ runner.temp }}/shadow_build_dir/*.app
32 changes: 13 additions & 19 deletions .github/workflows/linux.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,19 +7,16 @@ on:
- 'Stable*'
tags:
- 'v*'
paths-ignore:
- 'android/**'
- 'deploy/**'
- 'docs/**'
pull_request:
paths-ignore:
- 'android/**'
- 'deploy/**'
- 'docs/**'
- '.github/workflows/docs_deploy.yml'
- '.github/workflows/android.yml'
- '.github/workflows/macos.yml'
- '.github/workflows/windows.yml'
paths:
- '.github/workflows/linux.yml'
- 'deploy/linux/**'
- 'src/**'

concurrency:
# cancel jobs on PRs only
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: ${{ github.ref != 'refs/heads/main' }}

jobs:
build:
Expand All @@ -28,23 +25,19 @@ jobs:
strategy:
matrix:
BuildType: [Debug, Release]
# Arch: [x64] # Arm64

defaults:
run:
shell: bash

env:
ARTIFACT: QGroundControl-x86_64.AppImage
PACKAGE: QGroundControl-x86_64
QT_VERSION: 6.8.1
GST_VERSION: 1.22.12

steps:
- name: Free Disk Space (Ubuntu)
uses: jlumbroso/free-disk-space@main
with:
large-packages: false
continue-on-error: true

- name: Checkout repo
uses: actions/checkout@v4
with:
Expand Down Expand Up @@ -86,6 +79,7 @@ jobs:
key: ${{ runner.os }}-${{ matrix.BuildType }}
max-size: 1G
save: ${{ github.event_name == 'push' && github.ref == 'refs/heads/master' }}
verbose: 1
evict-old-files: 'job'

- name: Install Qt for Linux (x64)
Expand Down Expand Up @@ -133,7 +127,7 @@ jobs:
uses: ./.github/actions/upload
with:
artifact_name: ${{ env.ARTIFACT }}
package_name: ${{ env.PACKAGE }}
aws_key_id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws_secret_access_key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
source: ''
github_token: ${{ secrets.GITHUB_TOKEN }}
Loading

0 comments on commit 43504cb

Please sign in to comment.