diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index dc8e36e79e63dc4cdacf5e956df3f8bec6c19bbf..abff886cd8518a3f36d4e4c0881c0f9d9796e762 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -104,7 +104,7 @@ build-apk-release: - sigap-release.aab expire_in: 1 days only: - - /^release-.*$/ + - release build-plist-prod: stage: build @@ -128,7 +128,7 @@ build-plist-release: - GoogleService-Info.plist expire_in: 1 days only: - - /^release-.*$/ + - release build-web-release: stage: deploy @@ -148,4 +148,4 @@ build-web-release: - scp -r "$username_prod@$prod_ip":~/web build/web - ssh "$username_prod@$prod_ip" 'sudo bash /var/www/sites/siaga-wabah/deployment.sh' only: - - /^release-.*$/ \ No newline at end of file + - release \ No newline at end of file diff --git a/codemagic.yaml b/codemagic.yaml deleted file mode 100644 index a764b6d5a7c6b37a22eb968208f57b5a65c096c6..0000000000000000000000000000000000000000 --- a/codemagic.yaml +++ /dev/null @@ -1,147 +0,0 @@ -# Automatically generated on 2020-03-28 UTC from https://codemagic.io/app/5e7ccb63c986420018c1367d/settings -# Note that this configuration is not an exact match to UI settings. Review and adjust as necessary. - -workflows: - master-workflow: - name: Master Workflow - environment: - vars: - GSERVICE_JSON_PROD: ewogICJwcm9qZWN0X2luZm8iOiB7CiAgICAicHJvamVjdF9udW1iZXIiOiAiMzU3NTY0NjUyOTM2IiwKICAgICJmaXJlYmFzZV91cmwiOiAiaHR0cHM6Ly93YXNwYWRhYmVuY2FuYS1wcm9kLmZpcmViYXNlaW8uY29tIiwKICAgICJwcm9qZWN0X2lkIjogIndhc3BhZGFiZW5jYW5hLXByb2QiLAogICAgInN0b3JhZ2VfYnVja2V0IjogIndhc3BhZGFiZW5jYW5hLXByb2QuYXBwc3BvdC5jb20iCiAgfSwKICAiY2xpZW50IjogWwogICAgewogICAgICAiY2xpZW50X2luZm8iOiB7CiAgICAgICAgIm1vYmlsZXNka19hcHBfaWQiOiAiMTozNTc1NjQ2NTI5MzY6YW5kcm9pZDo4YjNmNWM1ZWVhYWE1MDJmYThhZTNkIiwKICAgICAgICAiYW5kcm9pZF9jbGllbnRfaW5mbyI6IHsKICAgICAgICAgICJwYWNrYWdlX25hbWUiOiAiaWQuYWMudWkuY3Muc2lnYXAiCiAgICAgICAgfQogICAgICB9LAogICAgICAib2F1dGhfY2xpZW50IjogWwogICAgICAgIHsKICAgICAgICAgICJjbGllbnRfaWQiOiAiMzU3NTY0NjUyOTM2LW8zYTBpdHBlNzYxZjgzbTN0Y2hvOGlldmt2dTdvNHI5LmFwcHMuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiwKICAgICAgICAgICJjbGllbnRfdHlwZSI6IDMKICAgICAgICB9CiAgICAgIF0sCiAgICAgICJhcGlfa2V5IjogWwogICAgICAgIHsKICAgICAgICAgICJjdXJyZW50X2tleSI6ICJBSXphU3lBRE9qaHNSWURZREdOWVpJU0pTLTVIamtIRHI0S0hJMVEiCiAgICAgICAgfQogICAgICBdLAogICAgICAic2VydmljZXMiOiB7CiAgICAgICAgImFwcGludml0ZV9zZXJ2aWNlIjogewogICAgICAgICAgIm90aGVyX3BsYXRmb3JtX29hdXRoX2NsaWVudCI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJjbGllbnRfaWQiOiAiMzU3NTY0NjUyOTM2LW8zYTBpdHBlNzYxZjgzbTN0Y2hvOGlldmt2dTdvNHI5LmFwcHMuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiwKICAgICAgICAgICAgICAiY2xpZW50X3R5cGUiOiAzCiAgICAgICAgICAgIH0KICAgICAgICAgIF0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICBdLAogICJjb25maWd1cmF0aW9uX3ZlcnNpb24iOiAiMSIKfQ== - GSERVICE_PLIST_PROD: PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCFET0NUWVBFIHBsaXN0IFBVQkxJQyAiLS8vQXBwbGUvL0RURCBQTElTVCAxLjAvL0VOIiAiaHR0cDovL3d3dy5hcHBsZS5jb20vRFREcy9Qcm9wZXJ0eUxpc3QtMS4wLmR0ZCI+CjxwbGlzdCB2ZXJzaW9uPSIxLjAiPgo8ZGljdD4KCTxrZXk+Q0xJRU5UX0lEPC9rZXk+Cgk8c3RyaW5nPjM1NzU2NDY1MjkzNi1yOWY4ZDUyNnFhYW9pbGU5cDNwdDZwODQ0NnNhOG8yOC5hcHBzLmdvb2dsZXVzZXJjb250ZW50LmNvbTwvc3RyaW5nPgoJPGtleT5SRVZFUlNFRF9DTElFTlRfSUQ8L2tleT4KCTxzdHJpbmc+Y29tLmdvb2dsZXVzZXJjb250ZW50LmFwcHMuMzU3NTY0NjUyOTM2LXI5ZjhkNTI2cWFhb2lsZTlwM3B0NnA4NDQ2c2E4bzI4PC9zdHJpbmc+Cgk8a2V5PkFQSV9LRVk8L2tleT4KCTxzdHJpbmc+QUl6YVN5QjZSXzV0YXZnOFRoR0t2MEdhRGxGMHlsUEo0cUhuNGlNPC9zdHJpbmc+Cgk8a2V5PkdDTV9TRU5ERVJfSUQ8L2tleT4KCTxzdHJpbmc+MzU3NTY0NjUyOTM2PC9zdHJpbmc+Cgk8a2V5PlBMSVNUX1ZFUlNJT048L2tleT4KCTxzdHJpbmc+MTwvc3RyaW5nPgoJPGtleT5CVU5ETEVfSUQ8L2tleT4KCTxzdHJpbmc+aWQuYWMudWkuY3Muc2lnYXA8L3N0cmluZz4KCTxrZXk+UFJPSkVDVF9JRDwva2V5PgoJPHN0cmluZz53YXNwYWRhYmVuY2FuYS1wcm9kPC9zdHJpbmc+Cgk8a2V5PlNUT1JBR0VfQlVDS0VUPC9rZXk+Cgk8c3RyaW5nPndhc3BhZGFiZW5jYW5hLXByb2QuYXBwc3BvdC5jb208L3N0cmluZz4KCTxrZXk+SVNfQURTX0VOQUJMRUQ8L2tleT4KCTxmYWxzZT48L2ZhbHNlPgoJPGtleT5JU19BTkFMWVRJQ1NfRU5BQkxFRDwva2V5PgoJPGZhbHNlPjwvZmFsc2U+Cgk8a2V5PklTX0FQUElOVklURV9FTkFCTEVEPC9rZXk+Cgk8dHJ1ZT48L3RydWU+Cgk8a2V5PklTX0dDTV9FTkFCTEVEPC9rZXk+Cgk8dHJ1ZT48L3RydWU+Cgk8a2V5PklTX1NJR05JTl9FTkFCTEVEPC9rZXk+Cgk8dHJ1ZT48L3RydWU+Cgk8a2V5PkdPT0dMRV9BUFBfSUQ8L2tleT4KCTxzdHJpbmc+MTozNTc1NjQ2NTI5MzY6aW9zOmU5NDJjZGUzZDdmNzIyMDZhOGFlM2Q8L3N0cmluZz4KCTxrZXk+REFUQUJBU0VfVVJMPC9rZXk+Cgk8c3RyaW5nPmh0dHBzOi8vd2FzcGFkYWJlbmNhbmEtcHJvZC5maXJlYmFzZWlvLmNvbTwvc3RyaW5nPgo8L2RpY3Q+CjwvcGxpc3Q+ - flutter: beta - xcode: latest - cocoapods: default - triggering: - events: - - push - branch_patterns: - - pattern: master - include: true - source: true - scripts: - - | - # set up debug keystore - rm -f ~/.android/debug.keystore - keytool -genkeypair \ - -alias androiddebugkey \ - -keypass android \ - -keystore ~/.android/debug.keystore \ - -storepass android \ - -dname 'CN=Android Debug,O=Android,C=US' \ - -keyalg 'RSA' \ - -keysize 2048 \ - -validity 10000 - - | - # set up local properties - echo "flutter.sdk=$HOME/programs/flutter" > "$FCI_BUILD_DIR/android/local.properties" - - flutter packages pub get - - flutter config --enable-web - - | - #!/bin/sh - - ls - echo $GSERVICE_PLIST_PROD | base64 -d > ./ios/Runner/GoogleService-Info.plist - echo $GSERVICE_JSON_PROD | base64 -d > ./android/app/google-services.json - rm ./web/index.html - echo $PROD_INDEX_HTML | base64 -d > ./web/index.html - - flutter build appbundle --release - - | - # generate universal apk signed with debug key - universal-apk generate \ - --ks ~/.android/debug.keystore \ - --ks-pass android \ - --ks-key-alias androiddebugkey \ - --key-pass android \ - --pattern 'build/**/outputs/**/*.aab' - - find . -name "Podfile" -execdir pod install \; - - flutter build ios --release --no-codesign - - | - # build web - flutter build web --release - cd build/web - 7z a -r ../web.zip ./* - artifacts: - - build/**/outputs/**/*.apk - - build/**/outputs/**/*.aab - - build/**/outputs/**/mapping.txt - - build/ios/ipa/*.ipa - - /tmp/xcodebuild_logs/*.log - - build/web.zip - - flutter_drive.log - publishing: - email: - recipients: - - hafiyyan94@gmail.com - staging-workflow: - name: Staging Workflow - environment: - vars: - GSERVICE_JSON_PROD: ewogICJwcm9qZWN0X2luZm8iOiB7CiAgICAicHJvamVjdF9udW1iZXIiOiAiMzU3NTY0NjUyOTM2IiwKICAgICJmaXJlYmFzZV91cmwiOiAiaHR0cHM6Ly93YXNwYWRhYmVuY2FuYS1wcm9kLmZpcmViYXNlaW8uY29tIiwKICAgICJwcm9qZWN0X2lkIjogIndhc3BhZGFiZW5jYW5hLXByb2QiLAogICAgInN0b3JhZ2VfYnVja2V0IjogIndhc3BhZGFiZW5jYW5hLXByb2QuYXBwc3BvdC5jb20iCiAgfSwKICAiY2xpZW50IjogWwogICAgewogICAgICAiY2xpZW50X2luZm8iOiB7CiAgICAgICAgIm1vYmlsZXNka19hcHBfaWQiOiAiMTozNTc1NjQ2NTI5MzY6YW5kcm9pZDo4YjNmNWM1ZWVhYWE1MDJmYThhZTNkIiwKICAgICAgICAiYW5kcm9pZF9jbGllbnRfaW5mbyI6IHsKICAgICAgICAgICJwYWNrYWdlX25hbWUiOiAiaWQuYWMudWkuY3Muc2lnYXAiCiAgICAgICAgfQogICAgICB9LAogICAgICAib2F1dGhfY2xpZW50IjogWwogICAgICAgIHsKICAgICAgICAgICJjbGllbnRfaWQiOiAiMzU3NTY0NjUyOTM2LW8zYTBpdHBlNzYxZjgzbTN0Y2hvOGlldmt2dTdvNHI5LmFwcHMuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiwKICAgICAgICAgICJjbGllbnRfdHlwZSI6IDMKICAgICAgICB9CiAgICAgIF0sCiAgICAgICJhcGlfa2V5IjogWwogICAgICAgIHsKICAgICAgICAgICJjdXJyZW50X2tleSI6ICJBSXphU3lBRE9qaHNSWURZREdOWVpJU0pTLTVIamtIRHI0S0hJMVEiCiAgICAgICAgfQogICAgICBdLAogICAgICAic2VydmljZXMiOiB7CiAgICAgICAgImFwcGludml0ZV9zZXJ2aWNlIjogewogICAgICAgICAgIm90aGVyX3BsYXRmb3JtX29hdXRoX2NsaWVudCI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJjbGllbnRfaWQiOiAiMzU3NTY0NjUyOTM2LW8zYTBpdHBlNzYxZjgzbTN0Y2hvOGlldmt2dTdvNHI5LmFwcHMuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiwKICAgICAgICAgICAgICAiY2xpZW50X3R5cGUiOiAzCiAgICAgICAgICAgIH0KICAgICAgICAgIF0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICBdLAogICJjb25maWd1cmF0aW9uX3ZlcnNpb24iOiAiMSIKfQ== - GSERVICE_PLIST_PROD: PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCFET0NUWVBFIHBsaXN0IFBVQkxJQyAiLS8vQXBwbGUvL0RURCBQTElTVCAxLjAvL0VOIiAiaHR0cDovL3d3dy5hcHBsZS5jb20vRFREcy9Qcm9wZXJ0eUxpc3QtMS4wLmR0ZCI+CjxwbGlzdCB2ZXJzaW9uPSIxLjAiPgo8ZGljdD4KCTxrZXk+Q0xJRU5UX0lEPC9rZXk+Cgk8c3RyaW5nPjM1NzU2NDY1MjkzNi1yOWY4ZDUyNnFhYW9pbGU5cDNwdDZwODQ0NnNhOG8yOC5hcHBzLmdvb2dsZXVzZXJjb250ZW50LmNvbTwvc3RyaW5nPgoJPGtleT5SRVZFUlNFRF9DTElFTlRfSUQ8L2tleT4KCTxzdHJpbmc+Y29tLmdvb2dsZXVzZXJjb250ZW50LmFwcHMuMzU3NTY0NjUyOTM2LXI5ZjhkNTI2cWFhb2lsZTlwM3B0NnA4NDQ2c2E4bzI4PC9zdHJpbmc+Cgk8a2V5PkFQSV9LRVk8L2tleT4KCTxzdHJpbmc+QUl6YVN5QjZSXzV0YXZnOFRoR0t2MEdhRGxGMHlsUEo0cUhuNGlNPC9zdHJpbmc+Cgk8a2V5PkdDTV9TRU5ERVJfSUQ8L2tleT4KCTxzdHJpbmc+MzU3NTY0NjUyOTM2PC9zdHJpbmc+Cgk8a2V5PlBMSVNUX1ZFUlNJT048L2tleT4KCTxzdHJpbmc+MTwvc3RyaW5nPgoJPGtleT5CVU5ETEVfSUQ8L2tleT4KCTxzdHJpbmc+aWQuYWMudWkuY3Muc2lnYXA8L3N0cmluZz4KCTxrZXk+UFJPSkVDVF9JRDwva2V5PgoJPHN0cmluZz53YXNwYWRhYmVuY2FuYS1wcm9kPC9zdHJpbmc+Cgk8a2V5PlNUT1JBR0VfQlVDS0VUPC9rZXk+Cgk8c3RyaW5nPndhc3BhZGFiZW5jYW5hLXByb2QuYXBwc3BvdC5jb208L3N0cmluZz4KCTxrZXk+SVNfQURTX0VOQUJMRUQ8L2tleT4KCTxmYWxzZT48L2ZhbHNlPgoJPGtleT5JU19BTkFMWVRJQ1NfRU5BQkxFRDwva2V5PgoJPGZhbHNlPjwvZmFsc2U+Cgk8a2V5PklTX0FQUElOVklURV9FTkFCTEVEPC9rZXk+Cgk8dHJ1ZT48L3RydWU+Cgk8a2V5PklTX0dDTV9FTkFCTEVEPC9rZXk+Cgk8dHJ1ZT48L3RydWU+Cgk8a2V5PklTX1NJR05JTl9FTkFCTEVEPC9rZXk+Cgk8dHJ1ZT48L3RydWU+Cgk8a2V5PkdPT0dMRV9BUFBfSUQ8L2tleT4KCTxzdHJpbmc+MTozNTc1NjQ2NTI5MzY6aW9zOmU5NDJjZGUzZDdmNzIyMDZhOGFlM2Q8L3N0cmluZz4KCTxrZXk+REFUQUJBU0VfVVJMPC9rZXk+Cgk8c3RyaW5nPmh0dHBzOi8vd2FzcGFkYWJlbmNhbmEtcHJvZC5maXJlYmFzZWlvLmNvbTwvc3RyaW5nPgo8L2RpY3Q+CjwvcGxpc3Q+ - GSERVICE_JSON_STAGING: ewogICJwcm9qZWN0X2luZm8iOiB7CiAgICAicHJvamVjdF9udW1iZXIiOiAiNzE3NzI2OTc3NTAyIiwKICAgICJmaXJlYmFzZV91cmwiOiAiaHR0cHM6Ly93YXNwYWRhYmVuY2FuYS1zdGFnaW5nLmZpcmViYXNlaW8uY29tIiwKICAgICJwcm9qZWN0X2lkIjogIndhc3BhZGFiZW5jYW5hLXN0YWdpbmciLAogICAgInN0b3JhZ2VfYnVja2V0IjogIndhc3BhZGFiZW5jYW5hLXN0YWdpbmcuYXBwc3BvdC5jb20iCiAgfSwKICAiY2xpZW50IjogWwogICAgewogICAgICAiY2xpZW50X2luZm8iOiB7CiAgICAgICAgIm1vYmlsZXNka19hcHBfaWQiOiAiMTo3MTc3MjY5Nzc1MDI6YW5kcm9pZDpiMzBmNzc0ZGVlMjBkZTFkYmEyMTRmIiwKICAgICAgICAiYW5kcm9pZF9jbGllbnRfaW5mbyI6IHsKICAgICAgICAgICJwYWNrYWdlX25hbWUiOiAiaWQuYWMudWkuY3Muc2lnYXAiCiAgICAgICAgfQogICAgICB9LAogICAgICAib2F1dGhfY2xpZW50IjogWwogICAgICAgIHsKICAgICAgICAgICJjbGllbnRfaWQiOiAiNzE3NzI2OTc3NTAyLXU5ZWxmazJkcm8wcGRlczlpZDk0ZXFvMGtkNGZncGc4LmFwcHMuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiwKICAgICAgICAgICJjbGllbnRfdHlwZSI6IDMKICAgICAgICB9CiAgICAgIF0sCiAgICAgICJhcGlfa2V5IjogWwogICAgICAgIHsKICAgICAgICAgICJjdXJyZW50X2tleSI6ICJBSXphU3lESWlXTE5YRTlCeWJLcjRIaUlJZ2FVVVRsdTVBTlNHRE0iCiAgICAgICAgfQogICAgICBdLAogICAgICAic2VydmljZXMiOiB7CiAgICAgICAgImFwcGludml0ZV9zZXJ2aWNlIjogewogICAgICAgICAgIm90aGVyX3BsYXRmb3JtX29hdXRoX2NsaWVudCI6IFsKICAgICAgICAgICAgewogICAgICAgICAgICAgICJjbGllbnRfaWQiOiAiNzE3NzI2OTc3NTAyLXU5ZWxmazJkcm8wcGRlczlpZDk0ZXFvMGtkNGZncGc4LmFwcHMuZ29vZ2xldXNlcmNvbnRlbnQuY29tIiwKICAgICAgICAgICAgICAiY2xpZW50X3R5cGUiOiAzCiAgICAgICAgICAgIH0KICAgICAgICAgIF0KICAgICAgICB9CiAgICAgIH0KICAgIH0KICBdLAogICJjb25maWd1cmF0aW9uX3ZlcnNpb24iOiAiMSIKfQo= - GSERVICE_PLIST_STAGING: PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPCFET0NUWVBFIHBsaXN0IFBVQkxJQyAiLS8vQXBwbGUvL0RURCBQTElTVCAxLjAvL0VOIiAiaHR0cDovL3d3dy5hcHBsZS5jb20vRFREcy9Qcm9wZXJ0eUxpc3QtMS4wLmR0ZCI+CjxwbGlzdCB2ZXJzaW9uPSIxLjAiPgo8ZGljdD4KCTxrZXk+Q0xJRU5UX0lEPC9rZXk+Cgk8c3RyaW5nPjcxNzcyNjk3NzUwMi00OTdkcWtsY2RqZ25nNDV1dTljOG44YnBjOWY4czd2Zi5hcHBzLmdvb2dsZXVzZXJjb250ZW50LmNvbTwvc3RyaW5nPgoJPGtleT5SRVZFUlNFRF9DTElFTlRfSUQ8L2tleT4KCTxzdHJpbmc+Y29tLmdvb2dsZXVzZXJjb250ZW50LmFwcHMuNzE3NzI2OTc3NTAyLTQ5N2Rxa2xjZGpnbmc0NXV1OWM4bjhicGM5ZjhzN3ZmPC9zdHJpbmc+Cgk8a2V5PkFQSV9LRVk8L2tleT4KCTxzdHJpbmc+QUl6YVN5Qmpob1ZBNkpUZm9IV1kwRDNKa2JYaVRDQXVCMDBpOVNZPC9zdHJpbmc+Cgk8a2V5PkdDTV9TRU5ERVJfSUQ8L2tleT4KCTxzdHJpbmc+NzE3NzI2OTc3NTAyPC9zdHJpbmc+Cgk8a2V5PlBMSVNUX1ZFUlNJT048L2tleT4KCTxzdHJpbmc+MTwvc3RyaW5nPgoJPGtleT5CVU5ETEVfSUQ8L2tleT4KCTxzdHJpbmc+aWQuYWMudWkuY3Muc2lnYXA8L3N0cmluZz4KCTxrZXk+UFJPSkVDVF9JRDwva2V5PgoJPHN0cmluZz53YXNwYWRhYmVuY2FuYS1zdGFnaW5nPC9zdHJpbmc+Cgk8a2V5PlNUT1JBR0VfQlVDS0VUPC9rZXk+Cgk8c3RyaW5nPndhc3BhZGFiZW5jYW5hLXN0YWdpbmcuYXBwc3BvdC5jb208L3N0cmluZz4KCTxrZXk+SVNfQURTX0VOQUJMRUQ8L2tleT4KCTxmYWxzZT48L2ZhbHNlPgoJPGtleT5JU19BTkFMWVRJQ1NfRU5BQkxFRDwva2V5PgoJPGZhbHNlPjwvZmFsc2U+Cgk8a2V5PklTX0FQUElOVklURV9FTkFCTEVEPC9rZXk+Cgk8dHJ1ZT48L3RydWU+Cgk8a2V5PklTX0dDTV9FTkFCTEVEPC9rZXk+Cgk8dHJ1ZT48L3RydWU+Cgk8a2V5PklTX1NJR05JTl9FTkFCTEVEPC9rZXk+Cgk8dHJ1ZT48L3RydWU+Cgk8a2V5PkdPT0dMRV9BUFBfSUQ8L2tleT4KCTxzdHJpbmc+MTo3MTc3MjY5Nzc1MDI6aW9zOjA0MTgwMzZiMDYzMTE3OWZiYTIxNGY8L3N0cmluZz4KCTxrZXk+REFUQUJBU0VfVVJMPC9rZXk+Cgk8c3RyaW5nPmh0dHBzOi8vd2FzcGFkYWJlbmNhbmEtc3RhZ2luZy5maXJlYmFzZWlvLmNvbTwvc3RyaW5nPgo8L2RpY3Q+CjwvcGxpc3Q+ - PROD_INDEX_HTML: PCFET0NUWVBFIGh0bWw+CjxodG1sPgo8aGVhZD4KICAgIDxtZXRhIGNoYXJzZXQ9IlVURi04Ii8+CiAgICA8bWV0YSBjb250ZW50PSJJRT1FZGdlIiBodHRwLWVxdWl2PSJYLVVBLUNvbXBhdGlibGUiLz4KICAgIDxtZXRhIG5hbWU9ImRlc2NyaXB0aW9uIiBjb250ZW50PSJBIG5ldyBGbHV0dGVyIHByb2plY3QuIi8+CgogICAgPCEtLSBpT1MgbWV0YSB0YWdzICYgaWNvbnMgLS0+CiAgICA8bWV0YSBuYW1lPSJhcHBsZS1tb2JpbGUtd2ViLWFwcC1jYXBhYmxlIiBjb250ZW50PSJ5ZXMiLz4KICAgIDxtZXRhIG5hbWU9ImFwcGxlLW1vYmlsZS13ZWItYXBwLXN0YXR1cy1iYXItc3R5bGUiIGNvbnRlbnQ9ImJsYWNrIi8+CiAgICA8bWV0YSBuYW1lPSJhcHBsZS1tb2JpbGUtd2ViLWFwcC10aXRsZSIgY29udGVudD0ibW9iaWxlX2FwcHMiLz4KICAgIDxsaW5rIHJlbD0iYXBwbGUtdG91Y2gtaWNvbiIgaHJlZj0iaWNvbnMvSWNvbi0xOTIucG5nIi8+CgogICAgPCEtLSBGYXZpY29uIC0tPgogICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiB0eXBlPSJpbWFnZS9wbmciIGhyZWY9ImZhdmljb24ucG5nIi8+CgogICAgPHRpdGxlPlNpZ2FwIFdhYmFoPC90aXRsZT4KICAgIDxsaW5rIHJlbD0ibWFuaWZlc3QiIGhyZWY9Im1hbmlmZXN0Lmpzb24iLz4KCiAgICA8bWV0YSBuYW1lPSJnb29nbGUtc2lnbmluLWNsaWVudF9pZCIKICAgICAgICAgIGNvbnRlbnQ9IjM0MTIyMTM2MzAwNS1ldjVpam43ZTh2bjNxbnJnanRtZmpjaTVhbjRtdGppai5hcHBzLmdvb2dsZXVzZXJjb250ZW50LmNvbSIvPgo8L2hlYWQ+Cjxib2R5Pgo8IS0tIEZpcmViYXNlIGRlcGVuZGVuY2llcyBiZWdpbiBoZXJlLS0+CjwhLS0gVGhlIGNvcmUgRmlyZWJhc2UgSlMgU0RLIGlzIGFsd2F5cyByZXF1aXJlZCBhbmQgbXVzdCBiZSBsaXN0ZWQgZmlyc3QgLS0+CjxzY3JpcHQgc3JjPSJodHRwczovL3d3dy5nc3RhdGljLmNvbS9maXJlYmFzZWpzLzcuMTIuMC9maXJlYmFzZS1hcHAuanMiPjwvc2NyaXB0PgoKPCEtLSBUT0RPOiBBZGQgU0RLcyBoZXJlIGlmIHdlIHVzZSBtb3JlIEZpcmViYXNlIHByb2R1Y3RzCmh0dHBzOi8vZmlyZWJhc2UuZ29vZ2xlLmNvbS9kb2NzL3dlYi9zZXR1cCNhdmFpbGFibGUtbGlicmFyaWVzIC0tPgo8c2NyaXB0IHNyYz0iaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vZmlyZWJhc2Vqcy83LjEyLjAvZmlyZWJhc2UtYW5hbHl0aWNzLmpzIj48L3NjcmlwdD4KPHNjcmlwdCBzcmM9Imh0dHBzOi8vd3d3LmdzdGF0aWMuY29tL2ZpcmViYXNlanMvNy4xMi4wL2ZpcmViYXNlLWF1dGguanMiPjwvc2NyaXB0Pgo8c2NyaXB0IHNyYz0iaHR0cHM6Ly93d3cuZ3N0YXRpYy5jb20vZmlyZWJhc2Vqcy83LjEyLjAvZmlyZWJhc2UtZmlyZXN0b3JlLmpzIj48L3NjcmlwdD4KCjxzY3JpcHQ+CiAgICAgIC8vIFlvdXIgd2ViIGFwcCdzIEZpcmViYXNlIGNvbmZpZ3VyYXRpb24KICAgICAgY29uc3QgZmlyZWJhc2VDb25maWcgPSB7CiAgICAgICAgYXBpS2V5OiAiQUl6YVN5Q1hlVjZSNlpvaVVrTGtYaGRObF9lNDhiUXZpUWJWRlVRIiwKICAgICAgICBhdXRoRG9tYWluOiAid2FzcGFkYWJlbmNhbmEtcHJvZC5maXJlYmFzZWFwcC5jb20iLAogICAgICAgIGRhdGFiYXNlVVJMOiAiaHR0cHM6Ly93YXNwYWRhYmVuY2FuYS1wcm9kLmZpcmViYXNlaW8uY29tIiwKICAgICAgICBwcm9qZWN0SWQ6ICJ3YXNwYWRhYmVuY2FuYS1wcm9kIiwKICAgICAgICBzdG9yYWdlQnVja2V0OiAid2FzcGFkYWJlbmNhbmEtcHJvZC5hcHBzcG90LmNvbSIsCiAgICAgICAgbWVzc2FnaW5nU2VuZGVySWQ6ICIzNTc1NjQ2NTI5MzYiLAogICAgICAgIGFwcElkOiAiMTozNTc1NjQ2NTI5MzY6d2ViOjBhNDI0NjAzYjQ4ZWZhYjNhOGFlM2QiLAogICAgICAgIG1lYXN1cmVtZW50SWQ6ICJHLUNaNTRNOFMzWkQiCiAgICAgIH07CiAgICAgIC8vIEluaXRpYWxpemUgRmlyZWJhc2UKICAgICAgZmlyZWJhc2UuaW5pdGlhbGl6ZUFwcChmaXJlYmFzZUNvbmZpZyk7CiAgICAgIGZpcmViYXNlLmFuYWx5dGljcygpOwoKPC9zY3JpcHQ+CjwhLS0gRmlyZWJhc2UgZGVwZW5kZW5jaWVzIGVuZC0tPgoKPCEtLSBUaGlzIHNjcmlwdCBpbnN0YWxscyBzZXJ2aWNlX3dvcmtlci5qcyB0byBwcm92aWRlIFBXQSBmdW5jdGlvbmFsaXR5IHRvCiAgIGFwcGxpY2F0aW9uLiBGb3IgbW9yZSBpbmZvcm1hdGlvbiwgc2VlOgogICBodHRwczovL2RldmVsb3BlcnMuZ29vZ2xlLmNvbS93ZWIvZnVuZGFtZW50YWxzL3ByaW1lcnMvc2VydmljZS13b3JrZXJzIC0tPgo8c2NyaXB0PgogICAgICBpZiAoInNlcnZpY2VXb3JrZXIiIGluIG5hdmlnYXRvcikgewogICAgICAgIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCJsb2FkIiwgZnVuY3Rpb24oKSB7CiAgICAgICAgICBuYXZpZ2F0b3Iuc2VydmljZVdvcmtlci5yZWdpc3RlcigiL2ZsdXR0ZXJfc2VydmljZV93b3JrZXIuanMiKTsKICAgICAgICB9KTsKICAgICAgfQoKPC9zY3JpcHQ+Cgo8c2NyaXB0IHNyYz0ibWFpbi5kYXJ0LmpzIiB0eXBlPSJhcHBsaWNhdGlvbi9qYXZhc2NyaXB0Ij48L3NjcmlwdD4KPC9ib2R5Pgo8L2h0bWw+Cg== - flutter: beta - xcode: latest - cocoapods: default - triggering: - events: - - push - branch_patterns: - - pattern: staging-prod-config - include: true - source: true - scripts: - - | - # set up debug keystore - rm -f ~/.android/debug.keystore - keytool -genkeypair \ - -alias androiddebugkey \ - -keypass android \ - -keystore ~/.android/debug.keystore \ - -storepass android \ - -dname 'CN=Android Debug,O=Android,C=US' \ - -keyalg 'RSA' \ - -keysize 2048 \ - -validity 10000 - - | - # set up local properties - echo "flutter.sdk=$HOME/programs/flutter" > "$FCI_BUILD_DIR/android/local.properties" - - flutter packages pub get - - flutter config --enable-web - - | - #!/bin/sh - - ls - echo $GSERVICE_PLIST_STAGING | base64 -d > ./ios/Runner/GoogleService-Info.plist - echo $GSERVICE_JSON_STAGING | base64 -d > ./android/app/google-services.json - rm ./web/index.html - echo $PROD_INDEX_HTML | base64 -d > ./web/index.html - - flutter build appbundle --release --obfuscate --split-debug-info=./logs - - | - # generate universal apk signed with debug key - universal-apk generate \ - --ks ~/.android/debug.keystore \ - --ks-pass android \ - --ks-key-alias androiddebugkey \ - --key-pass android \ - --pattern 'build/**/outputs/**/*.aab' - - find . -name "Podfile" -execdir pod install \; - - flutter build ios --release --obfuscate --split-debug-info=./logs --no-codesign - - | - # build web - flutter build web --release - cd build/web - 7z a -r ../web.zip ./* - artifacts: - - build/**/outputs/**/*.apk - - build/**/outputs/**/*.aab - - build/**/outputs/**/mapping.txt - - build/ios/ipa/*.ipa - - /tmp/xcodebuild_logs/*.log - - build/web.zip - - flutter_drive.log - publishing: - email: - recipients: - - hafiyyan94@gmail.com