Files
corestate/.github/workflows/android-app.yml
Wiktor d89118eb70 feat: complete full-fledged mobile app and comprehensive system improvements
## Major Features Added:

### 📱 Complete Native Mobile App
- Full Android app with Material 3 design and Jetpack Compose
- Dashboard, Backup, Files, and Settings screens with rich functionality
- Biometric authentication, file management, and real-time sync
- Modern UI components and navigation with proper state management
- Comprehensive permissions and Android manifest configuration

### 🚀 Enhanced CI/CD Pipelines
- 7 comprehensive GitHub workflows with proper testing and deployment
- Multi-language support (Kotlin, Rust, Python, Node.js, Scala)
- Security scanning with Trivy, CodeQL, Semgrep, and infrastructure validation
- Performance testing with automated benchmarking and reporting
- ML training pipeline with model validation and artifact management

### 🏗️ Production-Ready Infrastructure
- Complete Terraform configuration with VPC, EKS, security groups, IAM
- Kubernetes deployments with proper resource management and health checks
- Service mesh integration with Prometheus monitoring
- Multi-environment support with secrets management

### 🤖 Advanced ML Capabilities
- Enhanced anomaly detection with Variational Autoencoders and Isolation Forest
- Sophisticated backup prediction with ensemble methods and temporal features
- 500+ lines of production-ready ML code with proper error handling
- Model serving infrastructure with fallback mechanisms

### 🔧 Complete Microservices Architecture
- 5 new production-ready services with Docker containers:
  - Compression Engine (Rust) - Multi-algorithm compression optimization
  - Deduplication Service (Python) - Content-defined chunking
  - Encryption Service (Node.js) - Advanced cryptography and key management
  - Index Service (Kotlin) - Elasticsearch integration for fast search
  - Enhanced existing services with comprehensive dependency management

### 📊 System Improvements
- Removed web dashboard in favor of full mobile app
- Enhanced build configurations across all services
- Comprehensive dependency updates with security patches
- Cross-platform mobile support (Android + iOS KMP ready)

## Technical Details:
- 91 files changed: 9,459 additions, 2,600 deletions
- Modern Android app with Hilt DI, Room, Compose, WebRTC, gRPC
- Production infrastructure with proper security and monitoring
- Advanced ML models with ensemble approaches and feature engineering
- Comprehensive CI/CD with security scanning and performance testing
2025-07-23 02:55:21 +02:00

132 lines
3.7 KiB
YAML

name: Android App CI
on:
push:
branches: [ main, develop ]
paths:
- 'apps/android/**'
- 'shared/**'
pull_request:
branches: [ main ]
paths:
- 'apps/android/**'
- 'shared/**'
env:
GRADLE_OPTS: "-Dorg.gradle.jvmargs=-Xmx2048m -Dorg.gradle.daemon=false"
jobs:
test:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- name: Cache Gradle packages
uses: actions/cache@v4
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Run tests
run: ./gradlew :apps:android:shared:testDebugUnitTest
- name: Upload test results
uses: actions/upload-artifact@v4
if: always()
with:
name: android-test-results
path: |
apps/android/shared/build/reports/tests/
apps/android/shared/build/test-results/
build:
needs: test
runs-on: ubuntu-latest
strategy:
matrix:
build-type: [debug, release]
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- name: Cache Gradle packages
uses: actions/cache@v4
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Build Android App (${{ matrix.build-type }})
run: |
if [ "${{ matrix.build-type }}" = "release" ]; then
./gradlew :apps:android:androidApp:assembleRelease
else
./gradlew :apps:android:androidApp:assembleDebug
fi
- name: Upload APK artifacts
uses: actions/upload-artifact@v4
with:
name: android-apk-${{ matrix.build-type }}
path: apps/android/androidApp/build/outputs/apk/${{ matrix.build-type }}/*.apk
lint:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Set up JDK 17
uses: actions/setup-java@v4
with:
java-version: '17'
distribution: 'temurin'
- name: Cache Gradle packages
uses: actions/cache@v4
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
restore-keys: |
${{ runner.os }}-gradle-
- name: Grant execute permission for gradlew
run: chmod +x gradlew
- name: Run Android Lint
run: ./gradlew :apps:android:androidApp:lintDebug
- name: Upload lint results
uses: actions/upload-artifact@v4
if: always()
with:
name: android-lint-results
path: apps/android/androidApp/build/reports/lint-results-debug.html