diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 7d3865c..f38e047 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -133,6 +133,32 @@ pack_Android_APK: paths: - Borepin/Borepin.Android/bin/Release/org.fab_infra.fabaccess-Signed.apk +pack_FDroid_APK: + stage: pack + needs: + - build_Android + rules: + - if: $CI_COMMIT_TAG != null && $CI_COMMIT_TAG =~ /v\d+\.\d+(\.\d+)?/ + tags: + - fabinfra + - internal + - windows + - powershell + - xamarin + before_script: + - '$Env:VERSION_NUMBER="$CI_COMMIT_TAG".SubString(1)' + - '$Env:BUILD_NUMBER="$CI_PIPELINE_ID"' + - '$Env:ANDROID_PKG_FORMAT="apk"' + script: + - '& "$WIN_NUGET_PATH" restore' + - '[System.IO.File]::WriteAllBytes("$(pwd)/fabaccess.keystore", [System.Convert]::FromBase64String($FDroidKeyStore))' + - '& "$WIN_MSBUILD_PATH" /t:Restore /t:Borepin_Android:SetVersion /p:Configuration=Release /target:Borepin_Android /target:Borepin_Android:SignAndroidPackage /p:AndroidKeyStore="True" /p:AndroidSigningKeyStore="$(pwd)/fabaccess.keystore" /p:AndroidSigningKeyPass="$FDroidKeyStore_Password" /p:AndroidSigningKeyAlias="$FDroidKeyStore_ID" /p:AndroidSigningStorePass="$FDroidKeyStore_Password"' + - 'rm "$(pwd)/fabaccess.keystore"' + artifacts: + expire_in: 1 week + paths: + - Borepin/Borepin.Android/bin/Release/org.fab_infra.fabaccess-Signed.apk + pack_iOS: stage: pack needs: @@ -183,13 +209,13 @@ deploy_Android_Internal: pages: stage: deploy needs: - - pack_Android_APK + - pack_FDroid_APK - pack_iOS rules: - if: $CI_COMMIT_TAG != null && $CI_COMMIT_TAG =~ /v\d+\.\d+(\.\d+)?/ tags: - docker - image: registry.gitlab.com/fabinfra/gtk-sharp-build:latest + image: registry.gitlab.com/fdroid/docker-executable-fdroidserver:latest variables: LC_ALL: 'en_US.UTF-8' LANG: 'en_US.UTF-8' @@ -197,9 +223,17 @@ pages: before_script: - 'export VERSION_NUMBER=${CI_COMMIT_TAG:1}' - 'export BUILD_NUMBER="$CI_PIPELINE_ID"' + - cp -r fdroid/* . + - echo "keystorepass: ${FDroid_KeyStore_Password}" >> config.yml + - echo "keypass: ${FDroid_KeyStore_Password}" >> config.yml + - echo ${FDroid_KeyStore} | base64 -d > keystore.p12 script: + - mkdir repo + - cp Borepin/Borepin.Android/bin/Release/org.fab_infra.fabaccess-Signed.apk repo/ + - fdroid update - 'mkdir -p public' - - 'cp Borepin/Borepin.Android/bin/Release/org.fab_infra.fabaccess-Signed.apk public/' + - 'cp -r repo/* public/' + - rm keystore.p12 artifacts: paths: - public diff --git a/fdroid/config.yml b/fdroid/config.yml new file mode 100644 index 0000000..9f41209 --- /dev/null +++ b/fdroid/config.yml @@ -0,0 +1,9 @@ +repo_keyalias: Persephone + +keydname: CN=Persephone, OU=F-Droid + + + +repo_url: "https://fdroid.fab-access.org" +repo_name: "FabAccess F-Droid Repo" +repo_description: F-Droid repo for FabAccess. diff --git a/fdroid/metadata/org.fab_infra.fabaccess.yml b/fdroid/metadata/org.fab_infra.fabaccess.yml new file mode 100644 index 0000000..20f1bb7 --- /dev/null +++ b/fdroid/metadata/org.fab_infra.fabaccess.yml @@ -0,0 +1,8 @@ +AuthorName: 'RLKM UG (haftungsbeschränkt)' +Categories: +- Productivity +IssueTracker: 'https://gitlab.com/fabinfra/fabaccess/borepin/-/issues' +Name: FabAccess +SourceCode: 'https://gitlab.com/fabinfra/fabaccess/borepin' +Summary: 'FabAccess is a federatable management system for FabLabs, Makerspaces and Hackerspaces. FabAccess aims to manage access to machines in order to avoid accidents.' +WebSite: 'https://fab-access.org' \ No newline at end of file