Commit graph

3306 commits

Author SHA1 Message Date
Hans-Christoph Steiner
947d94e0a9
deploy: support GitLab Job Artifacts as a mirror 2022-11-16 20:16:32 +01:00
Hans-Christoph Steiner
d0976a3684
deploy: check repo size before enabling GitLab Pages 2022-11-16 20:16:30 +01:00
Hans-Christoph Steiner
cdce0958f8
deploy: convert .gitlab-ci.yml generation to dict + yaml.dump() 2022-11-16 20:16:27 +01:00
Hans-Christoph Steiner
f24613b701
index: fix git-mirror size check for GitLab Pages
The test case had the wrong folder setup, this was confirmed on a production
repo setup.
2022-11-16 20:16:25 +01:00
Hans-Christoph Steiner
83335437b9
nightly: if repo is too large, set archive_older to 3
If the user has not manually set --archive-older, then this will auto-switch
it from 20 to 3 to shrink the repo down so it fits into GitLab Pages.
2022-11-16 20:16:23 +01:00
Hans-Christoph Steiner
c2567d71d1
nightly: fail if *-nightly git repo is not publicly available 2022-11-16 20:16:21 +01:00
Hans-Christoph Steiner
15bd7057f0 nightly: add tests 2022-11-16 16:50:14 +01:00
Hans-Christoph Steiner
9c0eaac121 nightly: convert to config.yml 2022-11-16 14:40:08 +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
bf945a3062 nightly: only write SSH key files if ~/.ssh exists on dev's machine 2022-11-16 14:40:08 +01:00
Jochen Sprickerhof
3eea5f7c09 Don't get_android_tools_version_log for non builds 2022-11-16 10:56:27 +00:00
Jochen Sprickerhof
2cbb5576c7 Drop VCS version check on every build
This was introduced in
https://gitlab.com/fdroid/fdroidserver/-/merge_requests/391

I don't think it is needed anymore.

Also log appid:versionCode
2022-11-16 10:56:27 +00:00
FC Stegerman
e58637374c
verify_deprecated_jar_signature(): use temp dir instead of $PWD/.java.security 2022-11-15 19:10:38 +01:00
Hans-Christoph Steiner
01f7dfd0b3 index-v2.jar is not a valid file, remove references
entry.jar is the signed file, it references index-v2.json.
2022-11-15 13:22:09 +00:00
linsui
d25995c084 Set ArchivePolicy based on VercodeOperation/signature 2022-11-15 18:50:16 +08:00
Michael Pöhn
4ce2f291e3 remove --exodus cli option from scanner.py 2022-11-15 09:20:26 +00:00
Michael Pöhn
24d88705fa 🔍 add scanner_signature_sources config option
This adds the option to configure which set of signatures `fdroid
scanner` should use, by configuring it in `config.yml`. It allows
fetching signatures in our custom json format. It also adds 3 additional
sources: 'suss', 'exodus', 'etip'
2022-11-15 09:20:26 +00:00
Jochen Sprickerhof
e0fa38bab3 status.json: drop logs of failed builds
Those are uploaded separately.
2022-11-15 08:12:51 +00:00
Hans-Christoph Steiner
bd51b2e99f build: read VM CPUs/RAM from builder/Vagrantfile
makebuildserver.config.py is no more, builder/Vagrantfile is now where the
CPU and memory is configured for the buildserver VM.  In fact, that was
always the actual place, the makebuildserver.config.py thing was just
confused.

This should have been part of !1222
2022-11-15 08:57:41 +01:00
Jochen Sprickerhof
0549535bab
signindex: fix buster workaround
Don't try to remove arg if the old args where used.
2022-11-14 17:59:56 +01:00
Jochen Sprickerhof
1bb963d768
jarsigner: allow weak signatures
openjdk-11 11.0.17 in Debian unstable fails to verify weak signatures:

jarsigner -verbose -strict -verify tests/signindex/guardianproject.jar

         131 Fri Dec 02 20:10:00 CET 2016 META-INF/MANIFEST.MF
         252 Fri Dec 02 20:10:04 CET 2016 META-INF/1.SF
        2299 Fri Dec 02 20:10:04 CET 2016 META-INF/1.RSA
           0 Fri Dec 02 20:09:58 CET 2016 META-INF/
 m  ?  48743 Fri Dec 02 20:09:58 CET 2016 index.xml

  s = signature was verified
  m = entry is listed in manifest
  k = at least one certificate was found in keystore
  ? = unsigned entry

- Signed by "EMAILADDRESS=root@guardianproject.info, CN=guardianproject.info, O=Guardian Project, OU=FDroid Repo, L=New York, ST=New York, C=US"
    Digest algorithm: SHA1 (disabled)
    Signature algorithm: SHA1withRSA (disabled), 4096-bit key

WARNING: The jar will be treated as unsigned, because it is signed with a weak algorithm that is now disabled by the security property:

  jdk.jar.disabledAlgorithms=MD2, MD5, RSA keySize < 1024, DSA keySize < 1024, SHA1 denyAfter 2019-01-01, include jdk.disabled.namedCurves
2022-11-14 17:59:56 +01:00
Jochen Sprickerhof
d4b6e95c4e
init: use provided keyalias 2022-11-14 17:58:37 +01:00
Jochen Sprickerhof
beed746740
Replace custom code by verify_jar_signature() 2022-11-14 17:58:35 +01:00
FC Stegerman
ae23175a6b f-droid modifications: rm do_compare(), main(), ... 2022-11-09 21:42:24 +00:00
FC Stegerman
038697cba5 copy apksigcopier v1.1.0 2022-11-09 21:42:24 +00:00
Jochen Sprickerhof
b73c4b9214 Drop successfulBuilds from build.json
This should reduce the file size from 34MB to 1MB and it is not used by
the monitor.
2022-11-07 07:30:45 +00:00
Jochen Sprickerhof
dedce2f236
lint: AUM with UCM: HTTP must have a pattern
Closes: #1029
2022-11-05 21:15:00 +01:00
Jochen Sprickerhof
551fca21b3
lint: UpdateCheckData regex must match integers 2022-11-05 21:15:00 +01:00
Jochen Sprickerhof
b8ea90f252 Drop JDK 11 on checkupdates 2022-11-04 15:38:41 +00:00
Jochen Sprickerhof
557fe87d44 Run shell scripts with -e (Closes: #1035)
Make sudo, init prebuild, build and Prepare fields lists and only
concatenate them with '; ' before execution. This allows arbitrary
commands inside the fileds (even && and ';') as we don't need to split
the commands again for rewritemeta.
2022-11-03 12:25:31 +00:00
Hans-Christoph Steiner
890513fcba index: standardized AntiFeature variable names
This is the only occurance of "anti_features".
2022-11-01 09:54:06 +01:00
Hans-Christoph Steiner
886712026d index: Anti-Features should always be a sorted set
There are diffs in the index caused by unstable order:
* 184cdd9c65 (572d84bb16becb794e10614840972554f333c66e_169259_169353)
* 184cdd9c65 (24c372740761176e67461dbc9136a799b15cfdbf_204154_204185)
2022-11-01 09:53:09 +01:00
Hans-Christoph Steiner
cd0c049b03 btlog: include index-v2 files 2022-11-01 08:47:48 +01:00
Hans-Christoph Steiner
ffc3fbe288
handle default.txt changelog in fdroid metadata/
fixup !1240
2022-10-31 12:56:30 +01:00
Hans-Christoph Steiner
8b484b37bd
add tests for Fastlane changelogs including default.txt 2022-10-31 09:42:19 +01:00
Ashutosh Gangwar
afec880c81
use default.txt as fallback changelog when inserting fastlane metadata 2022-10-30 19:07:52 +05:30
linsui
618e2c7d72 change VercodeOperation to TYPE_LIST 2022-10-27 19:11:37 +08:00
Jochen Sprickerhof
b86d815743
Support 0 as versionCode
See: !1230
2022-10-25 12:55:44 +02:00
FC Stegerman
d1ddd525c1
net.download_file(): retry on errors 2022-10-22 23:15:13 +02:00
linsui
68b58c043f Change VercodeOperation to list
... so that we can calculate multiple version codes to support multi-arch autoupdate
2022-10-15 17:19:49 +08: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
linsui
6f73a87eb1 fix typo: Build -> Builds 2022-10-14 08:42:26 +00:00
Hans-Christoph Steiner
b4d25d2834 makebuildserver: use vagrant package; purge custom code
Years ago, vagrant-libvirt did not implement the `vagrant package` command
that we needed, and there were no Ruby people around to implement it for us.
So we hacked a custom version in our Python wrapper.  Now, vagrant-libvirt
v0.7.0 does implement it, so this switches things to just using
`vagrant package`
2022-10-13 13:56:56 +00:00
Jochen Sprickerhof
9c0d50a9b2 Sync status json after every build
dfdd2913 the logic to only write the status json upon build but before
the build happens. This makes sure that it is written after a
successful build or exception.
2022-10-13 11:20:15 +00:00
Michael Pöhn
06b8150922 scanner: fix loading config.yml
With my last merge request I accidentally intoduced a bug where
scanner.py stopped loading 'config.yml' because the helper functions
from common.py get called in the wrong places. This change fixes this
issue.
2022-10-13 10:53:25 +02: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
Jochen Sprickerhof
8244ffa0ff Allow pow in VercodeOperation (Closes: #1021) 2022-10-12 08:51:17 +00:00
Hans-Christoph Steiner
ade0122d47
fix ipfs_cid detection logic
@obfusk caught this.

I messed up in 02a91cba66 from !1202
2022-10-11 23:31:08 +02:00
Hans-Christoph Steiner
02a91cba66
update: only show missing ipfs_cid warning once. 2022-10-11 16:36:08 +02:00
linsui
e90f03a494 remove MVN3 2022-10-11 09:58:35 +00:00