Skip to content

Shortened createBackgroundSessionProvider function so that disabling … #958

Shortened createBackgroundSessionProvider function so that disabling …

Shortened createBackgroundSessionProvider function so that disabling … #958

Workflow file for this run

name: Build
on:
[push]
jobs:
build:
name: Build and test
runs-on: [self-hosted, macOS, ARM64]
env:
DERIVED_DATA_PATH: 'DerivedData'
DEVICE: 'iPhone 15 Pro'
strategy:
matrix:
config: ['freemium', 'premium']
steps:
- uses: actions/checkout@v4
- uses: actions/cache@v4
with:
path: .build
key: ${{ runner.os }}-spm-${{ hashFiles('**/Package.resolved') }}
restore-keys: |
${{ runner.os }}-spm-
- name: Install SwiftLint
run: brew install swiftlint
- name: Run process.sh script
run: |
./Scripts/process.sh
exit $?
- name: Create CloudAccessSecrets
run: |
cd fastlane
./scripts/create-cloud-access-secrets.sh
- name: Select Xcode 15.3
run: sudo xcode-select -s /Applications/Xcode_15.3.app
- name: Configuration for freemium
if: ${{ matrix.config == 'freemium' }}
run: |
echo "BUILD_CMD=-enableCodeCoverage YES" >> $GITHUB_ENV
- name: Configuration for premium
if: ${{ matrix.config == 'premium' }}
run: |
echo "BUILD_CMD=SWIFT_ACTIVE_COMPILATION_CONDITIONS='\$(inherited) ALWAYS_PREMIUM'" >> $GITHUB_ENV
- name: Build
run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild clean build-for-testing -scheme 'AllTests' -destination "name=$DEVICE" -derivedDataPath $DERIVED_DATA_PATH ${{ env.BUILD_CMD }} | xcpretty
- name: Test
run: set -o pipefail && env NSUnbufferedIO=YES xcodebuild test-without-building -xctestrun $(find . -type f -name "*.xctestrun") -destination "name=$DEVICE" -derivedDataPath $DERIVED_DATA_PATH | xcpretty
- name: Upload code coverage report
if: ${{ matrix.config == 'freemium' }}
run: |
gem install slather
slather coverage -x --build-directory $DERIVED_DATA_PATH --ignore "$DERIVED_DATA_PATH/SourcePackages/*" --scheme AllTests Cryptomator.xcodeproj
bash <(curl -Ls https://coverage.codacy.com/get.sh)
env:
CODACY_PROJECT_TOKEN: ${{ secrets.CODACY_PROJECT_TOKEN }}
continue-on-error: true