1
0
mirror of https://gitlab.com/fdroid/fdroidserver.git synced 2024-11-14 02:50:12 +01:00
Commit Graph

3051 Commits

Author SHA1 Message Date
Ciaran Gultnieks
4178b34351 Fix 'fdroid update' regression
This is from MR !48. It refuses to update because there is no 'keypass'
or 'keystorepass' in the config. These shouldn't be in the config of any
properly set up existing repo in the first place. They certainly aren't
in any of mine (as a result of which, it refused to work on any of
them!)
2015-05-15 21:38:12 +01:00
Daniel Martí
f345b24816 lint: warn about extra empty lines 2015-05-15 17:09:21 +02:00
Daniel Martí
7c0228d89c Warn about empty categs 2015-05-15 17:09:21 +02:00
Daniel Martí
ac004264f0 Make comma-separated list parsing code common 2015-05-15 17:09:21 +02:00
Ciaran Gultnieks
76332e7c0e Merge branch 'support-all-signing-key-types' into 'master'
support all APK signing key types: DSA, EC, RSA

The lovely python getsig replacement was only looking for .RSA files, but the signing key is defined as: "A signature block file with a .DSA, .RSA, or .EC extension"
https://docs.oracle.com/javase/7/docs/technotes/tools/windows/jarsigner.html

For more info:
https://f-droid.org/forums/topic/binary-repo-whatsapp-error

See merge request !51
2015-05-14 16:12:04 +00:00
Ciaran Gultnieks
82ab109066 Merge branch 'debug-builds' into 'master'
support plain paths as a serverwebroot

For use cases where there is a web server running on the same machine where the `fdroid update` is being run, allow plain paths in the serverwebroot list.  This is useful for debug repos from build servers, like:

https://dev.guardianproject.info/fdroid

This also includes small change in the `fdroid server update` delete behavior: it delays the delete phase until after the new APKs are uploaded.  This is keep things working for a long as possible while the repo is being updated.

See merge request !49
2015-05-14 16:11:32 +00:00
Ciaran Gultnieks
afa7254a83 Merge branch 'master' into 'master'
make it really easy to upgrade unsigned repos to signed

As a key step to removing support for unsigned repos from fdroidclient (https://gitlab.com/fdroid/fdroidclient/issues/12), this merge request makes `fdroid update` require a signing key.  If there is no keystore, it'll prompt the user to create one using `fdroid update --create-key`.

This closes #13

See merge request !48
2015-05-14 16:09:40 +00:00
Hans-Christoph Steiner
fd0e2ab97e support all APK signing key types: DSA, EC, RSA
"A signature block file with a .DSA, .RSA, or .EC extension"
https://docs.oracle.com/javase/7/docs/technotes/tools/windows/jarsigner.html
2015-05-14 12:04:46 -04:00
Daniel Martí
255afa3894 ACCESS_SUPERUSER is now deprecated 2015-05-14 12:31:10 +02:00
Daniel Martí
dd70c9441c Detect most bad URLs
Also [appid] links that should really be [[appid]]
2015-05-13 13:06:10 +02:00
Daniel Martí
bd3303c43d Merge branch 'vars' into 'master'
Update documentation to cover COMMIT, VERSION and VERCODE vars

See merge request !50
2015-05-10 13:42:07 +00:00
Boris Kraut
f3339daeee Update documentation to cover COMMIT, VERSION and VERCODE vars 2015-05-10 15:29:41 +02:00
Daniel Martí
e916e5df4e Add COMMIT, VERSION and VERCODE recipe vars. Fixes #69 2015-05-10 13:55:16 +02:00
Hans-Christoph Steiner
cc0908bdbb common.write_to_config(): if key doesn't exist in config.py, append it
This lets `fdroid update --create-key` add key/value pairs to config.py
2015-05-08 16:13:15 -04:00
Hans-Christoph Steiner
ff48c6b7f9 tests: no need to dump the index.xml to the build log
This should make the build log a lot shorter.
2015-05-08 16:13:15 -04:00
Hans-Christoph Steiner
de1c80f9b4 fdroid update --create-key to create a keystore/key
This provides the final option in this series, allowing the user to just
add --create-key to `fdroid update, and thereby upgrade an unsigned repo to
a proper signed repo.  It also might be useful

closes #13 https://gitlab.com/fdroid/fdroidserver/issues/13
2015-05-08 16:13:15 -04:00
Hans-Christoph Steiner
276123856c move keystore gen logic to common function
This moves the method for generating a new keystore for the repo signing
key to a common function so that it can be used in more subcommands beyond
`fdroid init`.  The immediate idea is to make `fdroid update --create-key`
upgrade unsigned repos to signed ones so we can make fdroidclient only use
signed repos.
2015-05-08 16:13:15 -04:00
Hans-Christoph Steiner
af360199f1 move default keystore location to keystore.jks, i.e. in the fdroid repo
This makes `fdroid init` create a complete, self-contained repo in a single
folder.  That makes it easily transferable, backupable, etc.  It also means
that `fdroid update` can add a keystore to an existing unsigned repo
without having to worry about finding the right folder or overwriting any
other existing files.
2015-05-08 16:13:15 -04:00
Hans-Christoph Steiner
4861595288 move genkey() and genpassword() to common.py for use in multiple sections
genkey() and genpassword() are now going to be used by `fdroid update` as
well as `fdroid init`, so they should be in common.py
2015-05-08 16:13:15 -04:00
Hans-Christoph Steiner
86865faa62 make fdroid update check that it can sign the repo, or exit with error
There is no good reason to run unsigned repos any more.  It is trivially
easy to create and use a signed repo, and having to support unsigned repos
in the client makes some security-critical parts of the code a lot more
complicated.

refs #13 https://gitlab.com/fdroid/fdroidserver/issues/13
https://gitlab.com/fdroid/fdroidclient/issues/12
2015-05-08 16:13:15 -04:00
Hans-Christoph Steiner
0d62c3093a jenkins-build: always use speced dir for APK source
Otherwise, the test process can pick up lots and lots of APKs from various
places like a ~/fdroid folder or various ~/workspace/fdroidserver Jenkins
projects.
2015-05-08 16:13:15 -04:00
Hans-Christoph Steiner
c941bf3215 server: support plain paths as a serverwebroot
For use cases where there is a web server running on the same machine where
the `fdroid update` is being run, allow plain paths in the serverwebroot
list.  This is useful for debug repos from build servers, like:

https://dev.guardianproject.info/fdroid
2015-05-08 16:11:29 -04:00
Hans-Christoph Steiner
463bfc5639 server: delay deleting on the server for as long as possible
In order to keep things working as much as possible during the update, the
rsync should only delete the obsolete APKs after it has finished uploading
the new APKs.
2015-05-08 16:11:29 -04:00
Ciaran Gultnieks
f63ea5cb86 Use --safe-links with rsync 2015-05-08 14:55:50 +01:00
Daniel Martí
ce48e8f78d Don't match gradle plugin import lines which are commented 2015-05-08 00:58:52 +02:00
Daniel Martí
3e04a44941 Add plugin version 1.2 to our gradle wrapper 2015-04-29 22:15:57 +02:00
Daniel Martí
577211dae7 Sort debian packages to be installed 2015-04-28 17:39:26 +02:00
Daniel Martí
8de6b79c60 Add scons, make-like tool used by godot 2015-04-28 17:36:15 +02:00
Daniel Martí
ca483069c0 Order counter stats by value, not key 2015-04-23 16:42:22 +02:00
Daniel Martí
e7ac90b6b8 stats: Don't confuse app with appid 2015-04-20 18:26:23 +02:00
Daniel Martí
3c2f84fb15 stats: sort counter outputs 2015-04-20 18:25:40 +02:00
Daniel Martí
41539d6a1b Add stats/disabled_apps.txt (closes #87) 2015-04-20 18:20:24 +02:00
Daniel Martí
504163b170 lint: warn about None category 2015-04-19 17:04:44 +02:00
Daniel Martí
74f12ab641 lint: Remove NOP 2015-04-19 17:04:34 +02:00
Daniel Martí
1af774811d Merge branch 'projectproperties' into 'master'
Fix project.properties dependency issue

Correctly place scrlib references also
in the case there is no project.properties file
present in the original repository.

This commit fixes a problem, which was introduced with
021df3c424: If no
project.properties file exists in the original
project's source repo, place_srclib will not place
a dependency --- even if there should be one:

>    if not os.path.isfile(proppath):
>        return

Example app: fdroiddata/metadata/org.berlin_vegan.bvapp.txt

See merge request !47
2015-04-17 17:28:35 +00:00
Daniel Martí
3f9d6b2947 Don't try reading lines from directories 2015-04-17 13:05:12 +02:00
micu
96e4062bcf Fix project.properties dependency issue
Correctly place scrlib references also
in the case there is no project.properties file
present in the original repository.

This commit fixes a problem, which was introduced with
021df3c424: If no
project.properties file exists in the original
project's source repo, place_srclib will not place
a dependency --- even if there should be one:

>    if not os.path.isfile(proppath):
>        return

Example app: fdroiddata/metadata/org.berlin_vegan.bvapp.txt
2015-04-17 01:10:23 +02:00
Daniel Martí
d1d257bef4 lint: add commented out warnings about google code 2015-04-14 14:18:44 +02:00
Daniel Martí
4888339a9d Also run main gradle clean task in case it's got dependencies 2015-04-10 00:14:52 +02:00
Daniel Martí
b416795166 Start supporting gradle tasks that belong to subprojects 2015-04-10 00:14:25 +02:00
Daniel Martí
ed5c2fd33d Add gradle 2.3 to the buildserver
Fixes apps that explicitly require 2.3 via gradleVersion
2015-04-09 16:02:35 +02:00
Daniel Martí
f8c32ce045 Add android version 5.1 2015-04-06 22:18:54 +02:00
Daniel Martí
acd49c6e4d When patching or checking plugin versions, use *.gradle
Apparently all *.gradle files are valid, e.g. global.gradle.
2015-04-06 17:42:26 +02:00
Daniel Martí
021df3c424 Other minor file reading fixes 2015-04-03 00:14:32 +02:00
Daniel Martí
241a3f02ac Always check that files actually are files before reading
This fixes crashes with e.g. broken symlinks
2015-04-03 00:05:22 +02:00
Daniel Martí
85b48a5c25 Fix buildTools versions that reference variables 2015-03-31 23:08:32 +02:00
Ciaran Gultnieks
c6434476e9 Work when cpu count is not defined 2015-03-27 20:49:43 +00:00
Daniel Martí
45925c6816 Forgot to bump build_tools in the configs 2015-03-24 21:36:42 +01:00
Daniel Martí
71d8888308 Merge branch 'import' into 'master'
Importer: Fix duplicated urls

Importer uses provided URL for the "website" as default. If "sourcecode" is set to the same, this causes a lint error. For Github the website is now empty while Gitlab's sourcecode is no longer the bas project url.

See merge request !46
2015-03-22 17:18:45 +00:00
Boris Kraut
6353dd1a09 Importer: Fix duplicated urls 2015-03-22 03:24:43 +01:00