Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
17 commits
Select commit Hold shift + click to select a range
2354368
ci: added own bump script instead of relying on third party repos. re…
pedroafmonteiro Nov 30, 2025
18f810a
ci: added new workflow for deploying the develop branch to android be…
pedroafmonteiro Nov 30, 2025
e7a5521
ci: changed how the deploy_beta works to use matrix strategy
pedroafmonteiro Nov 30, 2025
d03d6b7
Merge branch 'develop' into ci/new-deploy-actions
pedroafmonteiro Dec 4, 2025
fb980ca
Merge branch 'develop' into ci/new-deploy-actions
pedroafmonteiro Dec 5, 2025
6180d57
Merge branch 'develop' into ci/new-deploy-actions
pedroafmonteiro Jan 23, 2026
b20b1c3
feat: add version validating workflow with fastlane files
pedroafmonteiro Jan 23, 2026
64351ef
fix: removed unused script
pedroafmonteiro Jan 23, 2026
f15a0a1
Merge branch 'develop' into ci/new-deploy-actions
pedroafmonteiro Feb 14, 2026
bf3318f
chore: removed unused files
pedroafmonteiro Feb 14, 2026
5300ebe
feat: add bump_version script for version management
pedroafmonteiro Feb 14, 2026
31f2e72
feat: implement pull request checks workflow with version integrity, …
pedroafmonteiro Feb 14, 2026
e6e6e91
fix: update names of steps
pedroafmonteiro Feb 14, 2026
d71a516
feat: add CI workflows for beta, production, and pull request checks
pedroafmonteiro Feb 14, 2026
a51fb34
feat: updated fastlane lanes
pedroafmonteiro Feb 14, 2026
bfe33aa
fix: update references from 'main' to 'master' in CI workflows
pedroafmonteiro Feb 14, 2026
97111b6
Merge branch 'develop' into ci/new-deploy-actions
pedroafmonteiro Mar 11, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 0 additions & 6 deletions .dockerignore

This file was deleted.

18 changes: 0 additions & 18 deletions .github/workflows/app_version_integrity.yaml

This file was deleted.

40 changes: 40 additions & 0 deletions .github/workflows/beta.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: Beta

on:
push:
branches: [ develop ]

concurrency:
group: beta
cancel-in-progress: false

jobs:
bump:
name: Bump Version
runs-on: ubuntu-latest
outputs:
new_version: ${{ steps.bump.outputs.NEW_VERSION }}
steps:
- uses: actions/checkout@v4
with:
token: ${{ secrets.NIAEFEUPBOT_PAT }}

- name: Bump Version
id: bump
run: ./scripts/bump_version.sh packages/uni_app develop

- name: Commit & Push
uses: stefanzweifel/git-auto-commit-action@v4
with:
commit_message: "chore: bump build number to ${{ steps.bump.outputs.NEW_VERSION }} [skip ci]"
branch: develop
file_pattern: 'packages/uni_app/app_version.txt packages/uni_app/pubspec.yaml'

deploy_beta:
name: Deploy to Beta
needs: bump
uses: ./.github/workflows/deploy.yml
with:
environment: staging
lane: beta
secrets: inherit
139 changes: 139 additions & 0 deletions .github/workflows/checks.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,139 @@
name: Pull Request Checks

on:
pull_request:
types: [opened, synchronize, reopened, labeled, unlabeled]
push:
branches: [master, develop]

env:
JAVA_VERSION: 21.x
WORKING_DIR: packages/uni_app

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
integrity_check:
name: Version Integrity Check
if: github.event_name == 'pull_request'
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Validate Version Integrity
run: |
FILE_PATH="${{ env.WORKING_DIR }}/app_version.txt"
git fetch origin ${{ github.base_ref }}
if ! git diff --quiet origin/${{ github.base_ref }} -- $FILE_PATH; then
echo "Error: Manual changes to $FILE_PATH are not allowed."
echo "Versioning is handled automatically by the CD pipeline."
exit 1
fi

format:
name: Format
runs-on: ubuntu-latest
needs: integrity_check
defaults:
run:
working-directory: ${{ env.WORKING_DIR }}
steps:
- uses: actions/checkout@v4

- name: Set up Flutter
uses: subosito/flutter-action@v2
with:
channel: stable
flutter-version-file: ${{ env.WORKING_DIR }}/pubspec.yaml
cache: true

- name: Install Dependencies
run: flutter pub get

- name: Check Formatting
run: |
dart format $(find . -type f -name "*.dart" -a -not -name "*.g.dart" -a -not -name "*.mocks.dart") --set-exit-if-changed

lint:
name: Lint
runs-on: ubuntu-latest
needs: integrity_check
defaults:
run:
working-directory: ${{ env.WORKING_DIR }}
steps:
- uses: actions/checkout@v4

- uses: actions/setup-java@v4
with:
java-version: ${{ env.JAVA_VERSION }}
distribution: 'zulu'

- name: Set up Flutter
uses: subosito/flutter-action@v2
with:
channel: stable
flutter-version-file: ${{ env.WORKING_DIR }}/pubspec.yaml
cache: true

- name: Install Dependencies
run: flutter pub get

- name: Analyze
run: flutter analyze .

test:
name: Test
runs-on: ubuntu-latest
needs: integrity_check
defaults:
run:
working-directory: ${{ env.WORKING_DIR }}
steps:
- uses: actions/checkout@v4

- uses: actions/setup-java@v4
with:
java-version: ${{ env.JAVA_VERSION }}
distribution: 'zulu'

- name: Set up Flutter
uses: subosito/flutter-action@v2
with:
channel: stable
flutter-version-file: ${{ env.WORKING_DIR }}/pubspec.yaml
cache: true

- name: Install Dependencies
run: flutter pub get

- name: Run Tests
run: flutter test --coverage

- name: Upload Coverage
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
fail_ci_if_error: true

label_check:
name: Release Label Check
if: github.event_name == 'pull_request' && github.base_ref == 'master'
runs-on: ubuntu-latest
steps:
- name: Verify Release Label
run: |
labels="${{ join(github.event.pull_request.labels.*.name, ',') }}"
count=0
if [[ $labels == *"release:major"* ]]; then count=$((count+1)); fi
if [[ $labels == *"release:minor"* ]]; then count=$((count+1)); fi
if [[ $labels == *"release:patch"* ]]; then count=$((count+1)); fi

if [ $count -ne 1 ]; then
echo "Error: PR to master must have exactly one label: release:major, release:minor, or release:patch"
exit 1
fi
Loading
Loading