1
0
mirror of https://gitlab.com/fdroid/fdroidserver.git synced 2024-07-04 16:30:12 +02:00
Commit Graph

238 Commits

Author SHA1 Message Date
Hans-Christoph Steiner
f1f1a873ad gitlab-ci: bump RELEASE_COMMIT_ID to 2.2 beta
This avoid having to write a complicated regex for postbuild:
2023-02-19 15:48:16 +01:00
Hans-Christoph Steiner
5cebb839d4 gitlab-ci: only run Windows job in branches called "windows 2023-02-17 09:34:30 +00:00
FestplattenSchnitzel
ac9b20f6ab gitlab-ci: check that localization works when installed with pip 2023-02-16 21:07:36 +00:00
linsui
58f167b7e5 Add build.binary 2023-02-16 20:16:52 +08:00
linsui
33def096f5 Add postbuild 2023-02-16 12:11:26 +00:00
Jochen Sprickerhof
6118925387 Skip nightly test on Fedora with pip in $HOME 2023-02-08 18:32:13 +01:00
Jochen Sprickerhof
702f84e920 CI: fix permissions for git diff --cached
fdroid build runs git diff --cached for git_repo.is_dirty(). This does
no longer work without these permissions.
2023-02-04 10:12:48 +00:00
Hans-Christoph Steiner
98aa39a597 gitlab-ci: sanitize git ref names for use as docker tags
git ref names can contain many chars that are not allowed in docker tags.

https://docs.docker.com/engine/reference/commandline/tag/
A tag name must be valid ASCII and may contain lowercase and uppercase
letters, digits, underscores, periods and dashes. A tag name may not start
with a period or a dash and may contain a maximum of 128 characters.

https://gitlab.com/brandsimon/fdroidserver/-/jobs/3705004274
2023-02-03 09:50:31 +00:00
Hans-Christoph Steiner
a27cf3d42d gitlab-ci: use black from Debian for a stable code format
This avoids surprise code format CI breakage when black pushes new rules:
https://gitlab.com/fdroid-bot/fdroidserver/-/jobs/3703868702
2023-02-02 15:49:19 +01:00
linsui
5858d8fcb4 remove liberapayID 2023-01-16 17:02:56 +00:00
Jochen Sprickerhof
37dd416aeb
CI: Use Debian packages for documenation build 2023-01-05 19:19:28 +01:00
Hans-Christoph Steiner
052c753075 examples/fdroid_clean_repos.py: black code format
!1227
2022-11-22 20:43:19 +01:00
Hans-Christoph Steiner
09b0405eb0
gitlab-ci: apksigner from current build-tools in ubuntu_jammy_pip 2022-11-16 20:16:36 +01:00
Hans-Christoph Steiner
15bd7057f0 nightly: add tests 2022-11-16 16:50:14 +01:00
Hans-Christoph Steiner
1c5506ae05 nightly: support OpenSSL 3.0 with Paramiko
OpenSSL 3.0 changed the default output format from PKCS#1 to PKCS#8,
which paramiko does not support.

https://www.openssl.org/docs/man3.0/man1/openssl-rsa.html#traditional
https://github.com/paramiko/paramiko/issues/1015
2022-11-16 14:40:08 +01:00
Hans-Christoph Steiner
034735a81d
gitlab-ci: fix Windows job by installing Python 3.10, which has wheels
It seems that 3.11 whl packages are not yet always available.  We have other
jobs for testing new Python versions.
2022-11-04 13:34:14 +01:00
Hans-Christoph Steiner
d6008cdb2a
convert examples/makebuildserver.config.py to Vagrantfile.yaml
Also, tests/androguard_test.py was removed long ago
2022-11-03 13:27:18 +01:00
Hans-Christoph Steiner
ca13325913
gitlab-ci: simplify ubuntu_jammy_pip job, babel is not needed
Babel runs on install now, before it was used to pre-generated the
compiled gettext files.
2022-10-31 12:56:32 +01:00
linsui
618e2c7d72 change VercodeOperation to TYPE_LIST 2022-10-27 19:11:37 +08:00
FestplattenSchnitzel
625dc11930 Require Python 3.9 2022-10-24 09:17:27 +00:00
Hans-Christoph Steiner
2bde06a60f gitlab-ci: port ubuntu_bionic_pip to Ubuntu/jammy
This job is here to test using fdroidserver with only depends from pip
and sdkmanager (e.g. not apt-get).  Production is now on bullseye #1038
2022-10-19 14:10:46 +02:00
Hans-Christoph Steiner
eafa7f5e70 gitlab-ci: delete buster_backports job, prod signing is on bullseye
Via private email with @CiaranG
2022-10-19 14:06:59 +02:00
Hans-Christoph Steiner
81f02b8279 gitlab-ci: fix apt.conf syntax for Acquire::Retries 2022-10-19 13:56:28 +02:00
linsui
5a28f20301 make versionCode/build.timeout an integer
Co-authored-by: Jochen Sprickerhof <git@jochen.sprickerhof.de>
2022-10-14 08:42:26 +00:00
Jochen Sprickerhof
dfdd29131f
Write build/running.json only on build
This should reduce the runtime.

Also test if it was written.
2022-10-12 15:25:17 +02:00
Hans-Christoph Steiner
29838a8bae gitlab-ci: update alpine to supported version 2022-10-11 16:27:05 +02:00
Hans-Christoph Steiner
d33907606e
gitlab-ci: install sdkmanager from bullseye-backports 2022-10-11 13:57:38 +02:00
Hans-Christoph Steiner
b4720d9201
gitlab-ci: fix reversed logic in docker push
I got it backwards in 66d8b783f0 from !1183
2022-10-11 09:53:42 +02:00
Hans-Christoph Steiner
4eb189ad2e gitlab-ci: plugin_fetchsrclibs runs in same base OS as fdroiddata 2022-10-10 21:22:59 +02:00
FestplattenSchnitzel
df46eb86c3 Upgrade Buildserver VM
Use Vagrant boxes built with cloud-team/debian-vagrant-images instead of fdroid/basebox,
Use Debian Bullseye (11) instead of Debian Stretch (9)
2022-10-10 21:22:59 +02:00
Hans-Christoph Steiner
aa190d532f scanner.TestCase: manually convert to black code format
I manually changed some code structures to give a decent code format.
2022-09-30 17:56:15 +00:00
FestplattenSchnitzel
e4d16ec1e8 Move lint tools configuration to pyproject.toml
This commit removes the mypy CI job, since there are no or few type
hints in the codebase and it failed on unrelated changes in the past.
It might be reintroduced when type hints get added.
2022-09-30 17:53:31 +00:00
Jochen Sprickerhof
cf228d35a3 Work around old apksigner on f-droid.org publish server 2022-09-20 13:58:41 +00:00
pmmayero
0ad45a94a8 Addition of IPFS CIDv1 to Index
IPFS CIDv1 is only generated for APKs and "repo files"
2022-09-14 09:28:02 +00:00
Jochen Sprickerhof
483d6da51c
Cleanup tests/dump_internal_metadata_format.py
- Update usage documentation.
- Use argparse.
- Simplify config handling (similar to readmeta.py).
- Drop code for fdroidserver before 0.7.0.
- Reformat with black.
2022-09-08 21:40:26 +02:00
Hans-Christoph Steiner
66d8b783f0 gitlab-ci: only display message if not running docker push 2022-09-08 18:55:32 +02:00
Jochen Sprickerhof
da9a12bf5a
CI: Bump RELEASE_COMMIT_ID for new release
Drop old sed hacks.
2022-09-08 17:58:59 +02:00
Hans-Christoph Steiner
2d5d98fe32 gitlab-ci: stop tags/branches overwriting buildserver docker image
https://gitlab.com/fdroid/fdroidserver/-/jobs/2988110595
https://gitlab.com/eighthave/fdroidserver/-/jobs/2997738047
2022-09-08 17:51:23 +02:00
Hans-Christoph Steiner
dbe4af7951 gitlab-ci: make push in "docker" job opt-in
gitlab.com has added pretty small quotas to free tier accounts, and this
job pushes a docker image that is nearly 1GB.  And those rarely get used,
so this makes it opt in via a variable that can be set when manually
running a job, or globally in the "CI/CD Variables" Settings.
2022-09-08 11:28:59 +02:00
Hans-Christoph Steiner
b352e9a9cc
gitlab-ci: fix Windows job after import rename !1142 2022-08-25 11:10:45 +02:00
FestplattenSchnitzel
7b7f863c65 [import] Rename to import_subcommand internally
This enables normal import of the module without the need for
workarounds.
2022-08-24 22:21:35 +02:00
Hans-Christoph Steiner
22ce23ebe0 gitlab-ci: paramiko from Debian to avoid crypto libs from source
Before it was cryptography, now bcrypt requires a Rust compiler:
https://gitlab.com/fdroid/fdroidserver/-/jobs/2929483724
2022-08-24 19:53:54 +02:00
Hans-Christoph Steiner
ed3622ffff
convert verify.py and verify.TestCase to black code format 2022-08-24 19:16:36 +02:00
Hans-Christoph Steiner
3b1ab74354
gitlab-ci: 'Safety' now needs git to run
Unhandled exception happened: [Errno 2] No such file or directory: 'git'
https://gitlab.com/fdroid/fdroidserver/-/jobs/2724632572
2022-07-14 16:09:28 -07:00
Hans-Christoph Steiner
f04af445dd gitlab-ci: upgrade 'servergitmirrors' job to Debian/bullseye-backports
apksigner is now a requirement !1134
2022-06-08 20:39:44 +02:00
Hans-Christoph Steiner
09e2c37404 gitlab-ci: port fedora job to fdroid/sdkmanager and Java 17
This is also needed to support _apksigner_ as in !1134
2022-06-08 19:37:29 +02:00
Hans-Christoph Steiner
3182b77d18
use apksigner to sign index-v2 with modern, supported algorithms
The current signing method uses apksigner to sign the JAR so that it
will automatically select algorithms that are compatible with Android
SDK 23, which added the most recent algorithms:
https://developer.android.com/reference/java/security/Signature

This signing method uses then inherits the default signing algothim
settings, since Java and Android both maintain those.  That helps
avoid a repeat of being stuck on an old signing algorithm.  That means
specifically that this call to apksigner does not specify any of the
algorithms.

The old indexes must be signed by SHA1withRSA otherwise they will no
longer be compatible with old Androids.

apksigner 30.0.0+ is available in Debian/bullseye, Debian/buster-backports,
Ubuntu 21.10, and Ubuntu 20.04 from the fdroid PPA.  Here's a quick way to
test:

for f in `ls -1 /opt/android-sdk/build-tools/*/apksigner | sort ` /usr/bin/apksigner; do printf "$f : "; $f sign --v4-signing-enabled false; done

closes #1005
2022-06-07 16:56:23 +02:00
Hans-Christoph Steiner
4ce3da476d
btlog: run black to format code 2022-05-23 23:17:40 +02:00
Hans-Christoph Steiner
e6944ea4c2
gitlab-ci: run test suite in the buildserver environment
Run the whole test suite in an environment that is like the
buildserver guest VM.  This installs python3-babel because that is
only used by the test suite, and not needed in the buildserver.

Some extra packages are required for this test run that are not
provided by the buildserver since they are not needed there:

 * gnupg-agent for the full signing setup
 * python3-babel for compiling localization files
 * python3-clint for fancy progress bars for users

fdroid/ci-images-base is deprecated and archived.
2022-05-23 14:12:06 +02:00
Jochen Sprickerhof
d70e5c2cd9 Index v2 2022-05-23 10:39:17 +00:00