Move Core Data tests out of the Library package so that we can still use
the more efficient `swift test` for most tests.
Create a PassepartoutTests target only for tests that require
`xcodebuild`, like Core Data tests.
Eventually:
- PRs only run SwiftPM tests
- Releases run ALL tests with `scan` before `gym`
Carefully drop the StoreKit and Kvitto dependencies for ProductManager
to be testable.
Rebuild test target completely to start writing meaningful tests in
general.
- Skip tests until fixed wg-go issue
- Add golang step
- Set "Apple Development" at project level
- Set Catalyst platform for gym
- Drop TARGET env variable clashing with WireGuardKit
- Disable SwiftGen script phase
- Fix TunnelKit segfault on archive
- Xcode 13.2.1 compatibility
Fix some issues with @MainActor
Use #available instead of #unavailable
- Raise timeout from 10 to 15 minutes
- Update beta description
- Tunnel bundle ids cannot have periods
- CFBundleDisplayName required in tunnels
Might be the reason behind build hanging up in CI, arguably
waiting for a keychain password prompt.
Now, the issue never happened while prepping #207.
When testing the PR though, the testing step was omitted. This
drastically reduced the time between keychain creation and the
build to reach the codesigning phase. By restoring tests in
between, the increase in time would likely incur in keychain
auto-locking up.
- Convert action to keychain creation only
- Restore xcpretty as irrelevant (2a5c231)
* Do run tests in beta
- Test and build app in same lane
- Run tests with swift directly
- Set timeout on build only
- Set GYM_OUTPUT_DIRECTORY inline
- Fix bad build number, broken in db075eb
- Ignore updates to CHANGELOG for testing
- Drop unnecessary exports
- Drop unnecessary test env
- Drop unused PLATFORM .env.* variable
* Work around gym issues in CI
- Set custom build paths for proper clean-up
- Disable xcpretty (seems to hang job)
* Add descriptive names to workflow
- Rename beta to release
- Add job names
* Optimize release workflow
- Use a matrix for multiplatform build
- Only preinstall platform-specific certificates
- Output app version/build early for job reuse
- Do not depend app review on public beta release
- Pull latest commits before pushing/tagging
In release, ci/* scripts require Ruby. Make version an argument
of the commit-release.sh script to fix dependency.
* Import secret to notify external testers or not
* [ci skip] Add CHANGELOG preface in local scripts
* [ci skip] Update links to release via CI
- Drop CocoaPods completely
- Make PassepartoutCore a Swift package
- Enable Bitcode to fix OpenSSL linkage (iOS)
- Update CI scripts without CocoaPods