Commit graph

3493 commits

Author SHA1 Message Date
Hans-Christoph Steiner
04cedd1808 build: pass --refresh-scanner thru to buildserver VM 2024-02-16 11:43:42 +01:00
proletarius101
947217549a feat: add servergitmirrors as a dict support 2024-02-14 16:50:39 +00:00
linsui
2f313a0bd6 scanner: refresh data without scaning 2024-01-29 23:13:13 +08:00
Hans-Christoph Steiner
031a130395 scanner: add refresh_config config item for buildserver
Includes some cosmetic changes from black.
2024-01-25 17:04:38 +01:00
linsui
6fb2e07dda fdroid build: add --refresh-scanner option
Apply 1 suggestion(s) to 1 file(s)
2024-01-25 14:03:12 +01:00
linsui
fe7e4f8226 scanner: refresh data before loading data 2024-01-25 14:03:12 +01:00
Gregor Düster
b9c7e8f63a Fix "fdroid --version"
Fixes https://gitlab.com/fdroid/fdroidserver/-/issues/1164 .

Helpful resource:
https://packaging.python.org/en/latest/guides/single-sourcing-package-version/
2024-01-25 12:00:05 +00:00
Licaon_Kter
ac6a08e10f Update default suss 2024-01-25 11:05:55 +01:00
Hans-Christoph Steiner
810387a009 deploy: update_serverwebroots() for testable logic
This moves all of the serverwebroot: logic into a function, and adds tests.
I did this because I ran into issues in the logic in main():

Traceback (most recent call last):
  File "/builds/eighthave/fdroidserver/fdroid", line 22, in <module>
    fdroidserver.__main__.main()
  File "/builds/eighthave/fdroidserver/fdroidserver/__main__.py", line 230, in main
    raise e
  File "/builds/eighthave/fdroidserver/fdroidserver/__main__.py", line 211, in main
    mod.main()
  File "/builds/eighthave/fdroidserver/fdroidserver/deploy.py", line 753, in main
    s = serverwebroot.rstrip('/').split(':')
AttributeError: 'dict' object has no attribute 'rstrip'
2024-01-23 18:49:12 +01:00
Hans-Christoph Steiner
fbf097d390 deploy: update_serverwebroot() works w/o options/config
Since update_serverwebroot() is part of the public API, this function should
work without setting `fdroidserver.deploy.options` or
`fdroidserver.deploy.config`.
2024-01-23 17:48:47 +01:00
Hans-Christoph Steiner
7a656d45e3 config: convert serverwebroot: to list-of-dicts format
This allows for more metadata about the server and deploy mode.
2024-01-22 22:11:49 +01:00
Michael Pöhn
7211e9f9b4 🍲 add unit test for update.scan_repo_for_ipas 2024-01-11 11:34:21 +01:00
Michael Pöhn
995118bcd2 🥔 add strapped IPA file and test for parse_ipa 2024-01-11 11:34:21 +01:00
Michael Pöhn
c288317530 🪨 version string conversion: error handling+tests 2024-01-11 11:34:21 +01:00
Michael Pöhn
3ee91d1777 🧴 force android package names for IPAs for now 2024-01-11 11:34:21 +01:00
Michael Pöhn
ea9374ecf6 🛠️ update.py: finish minimal IPA support
This add a few missing pieces to get IPA support working. (added and
lastUpdated dates + caching for ipa files)
2024-01-11 11:34:05 +01:00
Jochen Sprickerhof
60371093e2 Make python3-biplist optional 2024-01-11 11:34:00 +01:00
Jochen Sprickerhof
e3d319f30b Update with suggestions 2024-01-11 11:33:25 +01:00
Jochen Sprickerhof
7d06608531 Move version_string_to_int into separate function 2024-01-11 11:33:25 +01:00
Jochen Sprickerhof
dfbb2df839 Use CFBundleShortVersionString for version code 2024-01-11 11:33:25 +01:00
Jochen Sprickerhof
a987341c37 ipa: add Usage permissions 2024-01-11 11:33:25 +01:00
Jochen Sprickerhof
77daf6feb6 Add Apple ipa support (Closes: #1067) 2024-01-11 11:33:25 +01:00
Hans-Christoph Steiner
d7a673523d "field will be in random order" only applies to config.py
YAML only has lists, no sets or tuples, so this warning can only ever make
any sense when config.py is the active config file.
2024-01-09 09:32:37 +00:00
Hans-Christoph Steiner
a1d9d9d885 switch to loading mirrors.yml with ruamel to get YAML 1.2 support 2024-01-09 09:32:37 +00:00
Hans-Christoph Steiner
96fc49d7fc lint: check syntax of countryCode: fields for mirrors 2024-01-09 09:32:37 +00:00
Hans-Christoph Steiner
4511da68b9 lint: support linting config files 2024-01-09 09:32:37 +00:00
Hans-Christoph Steiner
3f35b0b361 lint: do yamllint install check once globally 2024-01-09 09:32:37 +00:00
Hans-Christoph Steiner
6faaae9431 always parse srclib entries with parse_srclib_spec()
Remove duplicated code.
2024-01-07 10:50:29 +01:00
Hans-Christoph Steiner
15b983f48d handle all cases of @ in srclibs
expands on fdroidserver!1422
2024-01-07 10:50:29 +01:00
linsui
2331bcfe15 all @ in srclib tag 2023-12-19 15:49:17 +08:00
Hans-Christoph Steiner
2d5770985f gitlab-ci: silence irrelevant bandit error
This SSH connection is only ever to the Vagrant VM on the same machine.

>> Issue: [B507:ssh_no_host_key_verification] Paramiko call with policy set to automatically trust the unknown host key.
   Severity: High   Confidence: Medium
   CWE: CWE-295 (https://cwe.mitre.org/data/definitions/295.html)
   More Info: https://bandit.readthedocs.io/en/1.7.6/plugins/b507_ssh_no_host_key_verification.html
   Location: ./fdroidserver/build.py:104:8
103	        sshs = paramiko.SSHClient()
104	        sshs.set_missing_host_key_policy(paramiko.AutoAddPolicy())
105	        sshs.connect(sshinfo['hostname'], username=sshinfo['user'],
2023-12-15 08:40:27 +01:00
Hans-Christoph Steiner
e2949cbd61 port to looseversion 2023-12-08 10:48:01 +01:00
Hans-Christoph Steiner
ad9cabdab9 add looseversion license information to vendored file 2023-12-08 10:42:29 +01:00
Hans-Christoph Steiner
a1a88d39cf download looseversion to vendor
e1a5a176a9/src/looseversion/__init__.py
2023-12-08 10:42:27 +01:00
Andrew Gunnerson
679ba6f552
Add support for Python 3.12
Python 3.12 completely removed the builtin `distutils` module. This
commit replaces its use with the `packaging` package, which is an
external dependency, but maintained by the Python developers.

Signed-off-by: Andrew Gunnerson <accounts+gitlab@chiller3.com>
2023-12-07 18:15:05 -05:00
Hans-Christoph Steiner
4536b130df index: add datatype checking to mirrors: and config/mirrors.yml 2023-12-07 17:25:15 +01:00
Hans-Christoph Steiner
6d541e3ef6
establish config/mirrors.yml as a way to set up mirrors
The mirrors: entry in config.yml is great for quick access and shorter
mirror lists.  Now that we are adding a lot more metadata to the mirrors,
including potentially the full text of the privacy policy, having this
in its own file should make these cases easier to manage.
2023-12-07 14:38:26 +01:00
Axel López
825f969652 Support Uri.create() syntax for maven repositories 2023-12-07 01:30:59 +00:00
linsui
2081a9f2d2 lint: remove check_bulletes_lists 2023-12-06 23:35:55 +08:00
linsui
e2e7782ef3 add --force to git deinit 2023-11-25 22:11:19 +08:00
Gregor Düster
b5424d40f1 [checkupdates] Remove UpdateCheckMode "RepoTrunk"
It's unclear whether this still works and we're not planning to maintain
it.
2023-11-21 07:18:17 +00:00
Gregor Düster
81fdba452a [checkupdates] Remove --gplay option
It's unclear whether this still works and we're not planning to maintain
it.
2023-11-21 07:18:17 +00:00
Hans-Christoph Steiner
3e9f27612e Revert "Clone without blobs to save space" !1382
This seems to make git ignore the _fsck skipList_ files.

This reverts commit 24ea1f6852.

closes #1177
fdroid-bootstrap-buildserver!34
!1408
2023-11-20 10:07:05 +01:00
linsui
f99f430e9e deinit git submodule 2023-11-14 01:06:49 +08:00
sim
24ea1f6852 Clone without blobs to save space 2023-11-09 12:13:29 +00:00
Gregor Düster
81fea25509
[docs] Remove unnecessary use of Union 2023-10-26 09:17:43 +02:00
Gregor Düster
02b855da5e
[docs] Start utilising intersphinx 2023-10-22 21:27:08 +02:00
Gregor Düster
f238470855
[docs] Put type annotations in type hints instead of docstring 2023-10-22 21:01:27 +02:00
Gregor Düster
5503a05ef6
[checkupdates] Add more docstrings 2023-10-22 19:19:56 +02:00
cvzi
af1c5d4e5d Fix typo in build.py
encoutered -> encountered
2023-10-10 12:14:20 +00:00