Commit Graph
6685 Commits
Author SHA1 Message Date
Hans-Christoph Steiner 2bdd569eb0 Merge branch 'lint' into 'master'
lint.py: use pathlib and support Windows

See merge request fdroid/fdroidserver!947
2021-06-09 08:53:38 +00:00
linsui 6bafb036ee lint.py: use pathlib and support Windows 2021-06-09 15:46:52 +08:00
Hans-Christoph Steiner 8b17fbf703 Merge branch 'metadata' into 'master'
metadata.py: use pathlib and support Windows

See merge request fdroid/fdroidserver!939
2021-06-08 15:02:54 +00:00
Hans-Christoph Steiner 490f578d1c remove redundant call to Path() 2021-06-08 16:50:48 +02:00
linsui 8f21f1e510 metadata.py/rewritemeta.py: use pathlib and support Windows 2021-06-08 21:31:55 +08:00
Hans-Christoph Steiner 5635815898 Merge branch 'import' into 'master'
import: use pathlib and support Windows

See merge request fdroid/fdroidserver!938
2021-06-08 11:10:17 +00:00
linsui d6eece6395 import.py: use pathlib and support Windows 2021-06-08 18:33:22 +08:00
Jochen Sprickerhof 7ddcbb3e80 Merge branch 'lint_tag_UpdateCheckData' into 'master'
[lint] only check for https with UpdateCheckMode HTTP

See merge request fdroid/fdroidserver!944
2021-06-07 17:07:43 +00:00
Jochen Sprickerhof 49248ba3a9 [lint] only check for https with UpdateCheckMode HTTP
With 133b626b UpdateCheckMode is now also allowed with Tags but it uses
the files from the local repo.
2021-06-07 18:55:42 +02:00
Jochen Sprickerhof b6233fa2ce Merge branch 'fix_check_tags' into 'master'
[checkupdates] handle non matching regex

See merge request fdroid/fdroidserver!943
2021-06-07 16:12:19 +00:00
Jochen Sprickerhof a74922f56e [checkupdates] handle non matching regex 2021-06-07 17:59:43 +02:00
Jochen Sprickerhof 15a15420f7 Merge branch 'pathlib' into 'master'
fix tests for !935

See merge request fdroid/fdroidserver!942
2021-06-07 15:45:34 +00:00
linsui 84b74d481e fix tests for !935 2021-06-07 15:33:57 +00:00
Jochen Sprickerhof 3acaa7ede5 Merge branch 'pathlib' into 'master'
checkupdates.py: use pathlib and support Windows

See merge request fdroid/fdroidserver!935
2021-06-07 13:38:21 +00:00
linsui 92ec6265a3 checkupdates.py: use pathlib and support Windows 2021-06-07 21:02:03 +08:00
Jochen Sprickerhof 023319efbb Merge branch 'tag_UpdateCheckData' into 'master'
Tag update check data

See merge request fdroid/fdroidserver!937
2021-06-07 12:00:22 +00:00
Jochen Sprickerhof ed2da42eff Support hex in versionCode with UCM RepoManifest
Same a b83c3c9e.
2021-06-07 13:47:18 +02:00
Jochen Sprickerhof 133b626b22 Support UpdateCheckData in check_tags 2021-06-07 13:47:18 +02:00
Jochen Sprickerhof ba2b236e7b Drop unused package id check 2021-06-07 13:47:18 +02:00
Hans-Christoph Steiner d05ff9db1d easy changes to black code format in test cases
This does not change areas of code that should be manually reformatted.
2021-06-07 11:53:58 +02:00
Hans-Christoph Steiner d95a3029a8 Merge branch 'master' into 'master'
tests/ndk-release-checksums.py: fix parsing of NDK r10e

See merge request fdroid/fdroidserver!941
2021-06-07 08:10:43 +00:00
Hans-Christoph Steiner cb09a16133 tests/ndk-release-checksums.py: fix parsing of NDK r10e
This wasn't finding r10e properly, so it would submit merge requests
to remove r10e from _fdroidserver_.

* !940
* !930
2021-06-07 09:58:12 +02:00
Hans-Christoph Steiner d060a8c691 Merge branch 'yashpalgoyal1304-master-patch-36117' into 'master'
Added missing linebreak

See merge request fdroid/fdroidserver!936
2021-06-07 07:37:46 +00:00
Teen faa15f336c Added missing linebreak 2021-06-04 17:29:56 +00:00
Hans-Christoph Steiner 2a259552d3 Merge branch 'master' into 'master'
fix broken NDK extraction routine to correctly name resulting dir

See merge request fdroid/fdroidserver!934
2021-06-01 12:46:45 +00:00
Hans-Christoph Steiner 28a4f9481a provision-android-ndk: do all configuration via args
This makes it so it is easy to reuse this script in other contexts, like
in Docker, GitLab CI, etc.
2021-06-01 14:33:41 +02:00
Hans-Christoph Steiner d6c8ecc3bc fix broken NDK extraction routine to correctly name resulting dir
If there were other NDKs installed, this just tried to rename the first
installed NDK.  Now it tries to rename all NDKs that are not named after
the NDK version.

!926
!927
2021-06-01 14:33:39 +02:00
Jochen Sprickerhof bf4feab877 Merge branch 'mode_version' into 'master'
Support AutoUpdateMode: Version without pattern

See merge request fdroid/fdroidserver!931
2021-06-01 12:11:09 +00:00
Jochen Sprickerhof 185da60d93 Support AutoUpdateMode: Version without pattern
Since 24dd6740 UpdateCheckMode: Tags uses the found tag instead of
regenerating it from the AutoUpdateMode pattern making the pattern
superfluous. This adds support for dropping the pattern and a test case.
2021-06-01 13:59:49 +02:00
Hans-Christoph Steiner 4c339b4ef4 Merge branch 'fix_tests' into 'master'
Fix ruamel round_trip_dump will be removed

See merge request fdroid/fdroidserver!932
2021-06-01 11:57:36 +00:00
Jochen Sprickerhof 19e1e5f438 Fix ruamel round_trip_dump will be removed
https://sourceforge.net/p/ruamel-yaml/code/ci/4b91cd7e820baf97d8d28b1dcf77979530d43c3c/#diff-1
2021-05-30 12:41:20 +02:00
Hans-Christoph Steiner a6210dd7b4 Merge branch 'basebox-0.6.1' into 'master'
add checksums for basebox 0.6.1

See merge request fdroid/fdroidserver!928
2021-05-28 09:07:22 +00:00
Michael Pöhn af088c9c91 add checksums for basebox 0.6.1 2021-05-28 08:55:43 +00:00
Hans-Christoph Steiner 0f3c91555e Merge branch 'master' into 'master'
NDK fixups

See merge request fdroid/fdroidserver!929
2021-05-28 08:54:30 +00:00
Hans-Christoph Steiner 52ac0f0176 ndk-release-checksums.py: fix crash, there is no version here 2021-05-28 10:32:09 +02:00
Hans-Christoph Steiner 153b5d4392 stop modifying default_config when running fill_config_defaults()
dicts and lists are passed by reference in assignments, so this needs to
copy them instead.
2021-05-28 10:24:58 +02:00
Hans-Christoph Steiner 45bd89b3a2 build: missing NDK is now a warning not a critical error 2021-05-28 10:24:56 +02:00
Hans-Christoph Steiner adafd4560c provision-android-sdk: ensure ANDROID_HOME parent dir is accessible by all
https://gitlab.com/fdroid/fdroidserver/-/merge_requests/926#note_586778883
2021-05-28 10:24:55 +02:00
Hans-Christoph Steiner 6eb895a700 makebuilserver: only install most recent two releases 2021-05-28 10:24:53 +02:00
Hans-Christoph Steiner 22c83c9142 Merge branch 'modernize-ndk-handling' into 'master'
buildserver: standardize SDK install location /opt/android-sdk

Closes #902

See merge request fdroid/fdroidserver!927
2021-05-28 07:35:38 +00:00
Hans-Christoph Steiner 09fa49a7a3 make get_android_tools_versions() search ndk_paths from config 2021-05-28 09:13:38 +02:00
Hans-Christoph Steiner 7a1d236c8d only support zipballs in NDK provisioning
Since I discovered there is an r10e zipball, this can now get all NDKs
in zipball form.
fdroid/android-sdk-transparency-log@447fea86e7

closes #902
2021-05-28 09:13:36 +02:00
Hans-Christoph Steiner 9f77044d0d auto-detect NDKs installed in standard paths
'ndk_paths' will be automatically filled out from well known sources
like $ANDROID_HOME/ndk-bundle and $ANDROID_HOME/ndk/*.  If a required
version is missing in the buildserver VM, it will be automatically
downloaded and installed into the standard $ANDROID_HOME/ndk/
directory.  Manually setting it here will override the auto-detected
values.  The keys can either be the "release" (e.g. r21e) or the
"revision" (e.g. 21.4.7075529).

https://developer.android.com/studio/projects/configure-agp-ndk#agp_version_41
* sdkmanager installs "ndk;12.3.4567890" into $ANDROID_SDK_ROOT/ndk/
* sdkmanager installs "ndk-bundle" into $ANDROID_SDK_ROOT/ndk-bundle/
2021-05-28 09:13:34 +02:00
Hans-Christoph Steiner 4686c06f62 metadata: allow ndk: to be str or list of release or revision
There are two version numbers used for NDKs: the "release" and the
"revision".  The "release" is used in the download URL and zipball and the
"revision" is used in the source.properties and the gradle ndkVersion field.

Also, there are some builds which need multiple NDKs installed, so this
makes it possible to have a list of release/revision entries in build.ndk.
This does not yet add full support since _fdroidserver/build.py_ will also
need changes.
2021-05-28 09:13:27 +02:00
Hans-Christoph Steiner 096532dddb Merge branch 'standardize-sdk-ndk-paths' into 'master'
buildserver: standardize SDK and NDK install locations

See merge request fdroid/fdroidserver!926
2021-05-28 06:57:44 +00:00
Hans-Christoph Steiner 93145a43fb buildserver: use standardized paths for the NDKs
This should help with reproducibility since some tools like Python still
include the build paths in the binaries.
https://gitlab.com/fdroid/fdroidserver/-/merge_requests/919#note_578180986

The default ANDROID_SDK_ROOT base dir of /opt/android-sdk is hard-coded in
buildserver/Vagrantfile.  The $ANDROID_HOME/ndk subdir is where Android
Studio will install the NDK into versioned subdirs.
https://developer.android.com/studio/projects/configure-agp-ndk#agp_version_41
2021-05-26 09:21:52 +02:00
Hans-Christoph Steiner bb77d7a6d2 buildserver: standardize SDK install location /opt/android-sdk
_/opt/android-sdk_ was chosen for a number of reasons:
* _/opt_ is [standardized][1] for packages like the Android SDK, which has its own directory layout.
* _android-sdk_ is used rather than the upstream directory name from the ZIP (e.g. _android-sdk-linux_) so that the path is the same on all platforms.
* On platforms without official _/opt_ support ([macOS][2], [Windows][3], [FreeBSD][4], etc.), it does not conflict with any existing system directory.

[1]: https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch03s13.html
[2]: https://developer.apple.com/library/archive/documentation/FileManagement/Conceptual/FileSystemProgrammingGuide/FileSystemOverview/FileSystemOverview.html#//apple_ref/doc/uid/TP40010672-CH2-SW7
[3]: https://en.wikipedia.org/wiki/Directory_structure#Windows_10
[4]: https://www.freebsd.org/cgi/man.cgi?query=hier&sektion=7&format=html
2021-05-25 17:30:32 +02:00
Hans-Christoph Steiner 07da062a34 buildserver: fix ssh BatchMode config 2021-05-25 17:21:26 +02:00
Hans-Christoph Steiner be9036b1f1 Merge branch 'auto-install-ndk' into 'master'
auto-download missing NDKs if they're known and can be verified

Closes #369 and #717

See merge request fdroid/fdroidserver!919
2021-05-25 15:12:03 +00:00
Hans-Christoph Steiner 9d44fa7919 gitlab-ci: auto-generate merge request when NDK release found
Following the pattern of the gradle bot, this will check the transparency
log for any new NDK release.  If there are any, it will make a merge
request from @fdroid-bot.
2021-05-25 17:06:30 +02:00