Commit graph

82 commits

Author SHA1 Message Date
Vadim
411ec927a9 fixed integration tests 2024-03-17 15:24:16 +01:00
Vadim
8e03d3e400 disable pre-release integration tests by default 2024-03-17 13:23:10 +01:00
Vadim
a01924ab19 typo 2024-03-17 10:19:57 +01:00
Vadim
667f95662e reverted temporary settings 2024-03-17 10:18:07 +01:00
Vadim
2e6495d2db auth with username + password 2024-03-17 09:44:55 +01:00
Vadim
4874dd3368 Update create_release.yml 2024-03-16 23:03:51 +01:00
Vadim
be456a9a8f decode to repo 2024-03-16 21:10:15 +01:00
Vadim
7870138bfd switched to ubuntu for upload 2024-03-16 20:37:57 +01:00
Vadim
58565162eb try manual ipa upload 2024-03-16 20:09:40 +01:00
Vadim
ba0ed69d18 removed flavor from ipa artefact name 2024-03-16 18:12:00 +01:00
Vadim
4c46cc444c try to force ipa upload 2024-03-16 17:43:10 +01:00
Vadim
b61ed93a88 typo 2024-03-16 11:30:24 +01:00
Vadim
1dbcf27cf9 test ipa upload 2024-03-16 11:29:07 +01:00
Vadim
2fb3bdb970 upload ipa to app store 2024-03-16 11:27:46 +01:00
Vadim
257403455c increment build number for ios 2024-03-16 11:27:36 +01:00
Vadim
7fa781f4ca enabled releases 2024-03-15 08:34:19 +01:00
Vadim
f05be2ff39 fixed android folders... 2024-03-14 21:47:47 +01:00
Vadim
d98b2a62ff added option to skip integration tests 2024-03-14 20:54:56 +01:00
Vadim
846a2b2254 enabled integration tests 2024-03-14 20:41:13 +01:00
Vadim
e701d65c4b fixed android keystore path 2024-03-14 20:36:28 +01:00
Vadim
5a8eee10a4 simplified release workflow tree 2024-03-14 20:36:02 +01:00
Vadim
aad833b266 fixed invalid workflow 2024-03-14 20:32:31 +01:00
Vadim
1674d7192e separated android and ios builds 2024-03-14 20:29:36 +01:00
Vadim
14ba91edba style 2024-03-14 20:13:41 +01:00
Vadim
fb94f88401 Restore firebase_app_id_file.json 2024-03-14 20:12:59 +01:00
Vadim
60343d3974 Restore GoogleService-Info.plist 2024-03-14 19:39:08 +01:00
Vadim
ef1a28c1e7 incremented macos runner version 2024-03-14 19:02:38 +01:00
Vadim
e56a8d2500 checkout actions 2024-03-14 17:17:00 +01:00
Vadim
1e84f0dffa typo 2024-03-14 17:15:46 +01:00
Vadim
6ee8e21693 temporary skip tests 2024-03-14 17:14:38 +01:00
Vadim
ff36f37faa temporeraly skip release jobs 2024-03-14 15:54:34 +01:00
Vadim
682658a283 reuse Build iOS workflow 2024-03-14 15:19:15 +01:00
Vadim
6f0efe4b39 added stage backend option 2024-03-14 15:15:08 +01:00
Vadim
4ed3d4efb9 reuse Build Android workflow 2024-03-14 15:10:18 +01:00
Vadim
f314102c4b run integration tests before build 2024-03-14 15:09:21 +01:00
Vadim
7787558713
ML-160 Integration tests (#161)
* test granting and revoking pro features

* extracted common widget tester actions

* test disabling & enabling of the metering screen layout features

* added integration tests to CI

* added integration tests to PR check

* allow matrix jobs to fail

* use base64 -d

* downgraded iphone version to the supported one

* use proper android device name

* typo in macos version

* upgraded iphone version to the supported one

* updated android compileSdkVersion

* added google services json restoration

* combined all tests in one file

* removed ipa signing for ios test

* debug prints :)

* lints

* refined tester extension and expectations

* e2e test (wip)

* added more expectations to e2e test

* changed pickers order a bit in e2e test

* added equipment profiles creation to e2e test

* added film selection to e2e test

* set android emulator API level to 32

* use flutter drive for integration tests

* removed app pre-build

* try running tests only for one platform

* added no-dds to flutter drive

* try running only on ios

* bumped macos version

* increased tests timeout

* set IPHONEOS_DEPLOYMENT_TARGET = 12.0

* removed prints

* Update Podfile

* restore firebase_app_id_file.json

* Delete run_integration_tests.sh

* run e2e with all tests

* reverted pr-check
2024-03-13 15:34:26 +01:00
Vadim
134af8ad28
ML-141 Prepare iOS release (#144)
* implemented `MockCameraContainerBloc` to stub camera on simulator

* [iOS] fixed camera preview aspect ratio

* place screenshots in platform-specific folders

* [iOS] updated buildable name

* [iOS] fixed stub image cover fit

* [iOS] implemented screenshots generator for all target devices

* store screenshots in _generated_ folder

* Update .gitignore

* Created "Build Prod .ipa" workflow

* added. certs to .ipa workflow

* test ipa building

* fixed provision cert path

* set provision profile in XCode

* set automatic signing for dev builds

* set ios version in Podfile

* renamed provision file

* renamed provision profile

* fixed cert folder...

* changed provision path

* typo

* typo

* try automatic signing

* use manual profile installation

* added export options

* typo

* increased timeout

* increased ipa timeout

* Update README.md

* typo

* [iOS] separated camera handling logic

* [iOS] fixed vibration

* migrated to http server iap

* [iOS] fixed histogram

* replaced distribution profile with development profile

* removed constants from env to the separate file

* removed duplicate launch schema

* fixed PR check workflow

* [iOS] set `ITSAppUsesNonExemptEncryption` to NO

* [iOS] removed java reference from "Build .ipa" workflow
2024-02-21 12:33:25 +01:00
Vadim
f3b08868be
ML-62 Providers tests + Platform & Application mocks (#131)
- Fixed test coverage calculation
- Removed `mockito` from the application mock
- Implemented platform channel mocks to mimic incident light metering
- Covered providers with unit tests
- Covered metering screen pickers with widget tests
- Laid foundation for integration tests
2023-10-20 16:12:43 +02:00
Vadim
cc660de0c4
Fixed PR check (#122)
* updated stub script to work with tags

* depend on step conclusion

* check PR number
2023-09-20 11:58:04 +02:00
Vadim
cc9f162933
ML-107 Films filter (#118)
* added stub `FilmsProvider`

* moved dialogs to the shared folder

* typo

* separated `EquipmentSettingsSection`

* copy

* `IAPBuilder` -> `IAPListTile`

* moved `Film` to resources repo

* fixed films selection

* untied iso and selected film

* removed film from exposure pairs building

* indicate push/pull

* copy

* Update .gitignore

* fixed extreme exposure pairs reciprocity display

* sync with iap changes

* sync iap stub with iap changes

* added reciprocity description

* added workspace file

* Update .gitignore
2023-09-14 16:59:16 +02:00
Vadim
bf3c8aa7c7 Fixed _Build .apk_ flow 2023-09-02 13:08:58 +02:00
Vadim
da4fcfc857
Fixed IAP stub in workflows (#110)
* try using script for iap stub

* typo

* typo

* typo

* removed working dir

* added comment to stub_iap.sh

* checkout first

* increment build number by script

* Update increment_build_number.sh

* fixed iap repo

* stub
2023-09-02 12:45:57 +02:00
Vadim
4bb080a144
Implemented IAP & Equipment profiles (#89)
* added equipment profiles to layout config

* calculate layout height based on `MeteringScreenLayoutFeature`

* Update cd_dev.yml

* Fixed equipment profile tile padding

* import

* `webfactory/ssh-agent`

* Update pubspec.yaml

* fixed `MeteringScreenLayoutConfigJson` tests

* fixed `UserPreferencesService` tests

* reset selected equipment profile when layout feature is disabled

* `IAPProductType.equipment` -> `IAPProductType.paidFeatures`

* updated packages versions

* Update shared_prefs_service.dart

* Fixed & tested exposure pairs list builder

* typo

* typo

* added iap repo stub

* Renamed `EquipmentProfileData` ->`EquipmentProfile`

* Moved `EquipmentProfileProvider` to iap repo

* Update README.md

* Fixed `EquipmentProfileListener`

* Improved `EquipmentProfilesListTile` statuses visualization

* Update README.md

* Update ci.yml

* Post-merge fixes

* typo

* Added workflow checks

* more sophisticated iap icons

* Include IAP by default

* added loader for `IAPProductStatus.pending`

* typo

* Added equipment profiles list placeholder

* typo

* separated `IconPlaceholder`

* improved `buildExposureValues` testing

* cleanup
2023-09-02 10:32:08 +02:00
Vadim
e1c320b804 Replaced user config with github-actions[bot] 2023-08-28 16:01:04 +02:00
Vadim
4917ee8aef
ML-61 Try to automate GP & Github releases via Github Actions (#103)
* Added option to create separate releases

* Removed branch condition

* Added default values to releases checkboxes

* Removed user fraction

* Remove .md extension for GP release

* More refined releases conditions

* Parse release name

* Create Google Play release name

* Checkout first

* Update create_release.yml

* Increment build number only for GH release

* Release with status `complete`

* typo
2023-08-10 12:42:31 +02:00
Vadim
dafbc68288 Increased build job timeout 2023-08-09 17:06:47 +02:00
Vadim
bdb0442dd1 Fixed release jobs dependencies 2023-08-09 16:49:02 +02:00
Vadim
d41fa6fa84
ML-61 Download each artifact separately (#102)
* Download each artifact separately

* typo

* Updated setup-java action

* Extract merged native libs directly in GP release job
2023-08-09 16:39:41 +02:00
Vadim
b9412c7441
ML-61 Create Google Play release from Github actions (#101)
* Delete all artefacts after GP release

* Update create_release.yml

* Added release notes formatting

* Preserve release zip if GP release creation failed

* Create whatsnew folder
2023-08-09 12:24:12 +02:00
Vadim
886188bb9e
ML-95 Live histogram (#97)
* Added histogram and separated camera view builder

* Added histogram to `MeteringScreenLayoutConfig`

* `ResolutionPreset.medium` -> `ResolutionPreset.low`

* Adjusted histogram paddings
2023-08-06 16:28:20 +02:00