1
0
mirror of https://gitlab.com/fdroid/fdroidserver.git synced 2024-11-19 05:10:10 +01:00
Commit Graph

734 Commits

Author SHA1 Message Date
Daniel Martí
6819e3c30e Set up the ndk in $PATH before each build 2015-01-06 19:41:55 +01:00
Daniel Martí
347ff7b876 Error if any scanignore/delete paths are useless 2015-01-06 14:37:13 +01:00
Daniel Martí
24a8523c0b Gradle cleaner: support multilines with backslashes 2015-01-05 12:59:33 +01:00
Daniel Martí
371e64dfc2 Fix build passing madness (closes #55) 2015-01-05 00:29:27 +01:00
Daniel Martí
3645471a1c Never let build['ndk_path'] be None 2015-01-04 20:41:22 +01:00
Daniel Martí
f60f1bc59e Add NDK r10d, this time alongside r9b
Specified per-build with ndk=<version> defaulting to the oldest, r9b.
2015-01-03 00:07:01 +01:00
Daniel Martí
14f654fabc Apply some autopep8-python2 suggestions 2014-12-31 16:44:06 +01:00
Daniel Martí
e39602586f Make dump xmltree and dump badging silent again 2014-12-31 16:34:11 +01:00
Daniel Martí
e8fb3a143e Fix FDroidPopen refactor typo 2014-12-23 12:54:16 +01:00
Daniel Martí
52c3bf46a5 Catch new version of outputFile 2014-12-23 12:24:07 +01:00
Daniel Martí
1268da7ac6 Remove SilentPopen for consistency with SdkToolsPopen 2014-12-14 15:38:24 +01:00
Hans-Christoph Steiner
5f5bcd2e11 do not set sdk_path in config.py if using system-provided aapt
By not setting sdk_path when /usr/bin/aapt is found, sdk_path then defaults
to $ANDROID_HOME when its used.  Since in this case, aapt will be used from
the system path, using aapt entirely ignores sdk_path.  If the user runs
`fdroid build` in this setup, sdk_path will be $ANDROID_HOME, so it should
check the env vars for it, but maybe that doesn't actually work like that
yet.
2014-12-14 13:26:50 +01:00
Hans-Christoph Steiner
fa1cc48d57 run all SDK tools commands using SdkToolsPopen 2014-12-14 13:25:20 +01:00
Hans-Christoph Steiner
9244256461 find cmds from SDK build-tools in a more flexible way, on the fly
This is a more flexible approach than testing for the complete SDK and
build-tools up front.  This will only test for the commands that are
actually being run, so that if you only have `aapt` installed, you can do
`fdroid update` without errors, but other commands will still give
appropriate errors.

This also makes the build_tools item in config.py optional, it is only
needed if you want to force a specific version of the build-tools.
2014-12-14 13:25:20 +01:00
Hans-Christoph Steiner
f7c9eccc1f switched last aapt call to use central config['aapt'] 2014-12-14 13:25:20 +01:00
Hans-Christoph Steiner
0f71929e71 remove redundant test_sdk_exists() call, its called by test_build_tools_exists()
No need to call test_sdk_exists() before test_build_tools_exists() since
test_build_tools_exists() calls test_sdk_exists() as the first thing it
does.
2014-12-14 13:25:20 +01:00
Daniel Martí
16601a0be3 Bump build-tools again to 21.1.2 2014-12-12 12:57:12 +01:00
Daniel Martí
aaf36f654d Update build-tools to 21.1.1 2014-12-12 12:40:09 +01:00
Hans-Christoph Steiner
e826938734 static URLs to "Current Version" of each app
I wrote up the feature to automatically generate symlinks with a constant name
that points to the current release version. I have it on by default, with a
*config.py* option to turn it off. There is also an option to set where the
symlink name comes from which defaults to app['Name'] i.e. F-Droid.apk, but
can easily be set to app['id'], i.e. _org.fdroid.fdroid.apk_. I think the best
place for the symlinks is in the root of the repo, so like
https://f-droid.org/F-Droid.apk or https://guardianproject.info/fdroid/ChatSecure.apk

For the case of the current FDroid static link https://f-droid.org/FDroid.apk
it can just be a symlink to the generated one (https://f-droid.org/F-Droid.apk
or https://f-droid.org/org.fdroid.fdroid.apk). Right now, this feature is all
or nothing, meaning it generates symlinks for all apps in the repo, or none. I
can’t think of any problems that this might cause since its only symlinks, so
the amount of disk space is tiny. Also, I think it would be useful for having
an easy “Download this app” button on each app’s page on the “Browse” view. As
long as this button is less prominent than the “Download F-Droid” button, and
it is clear that it is better to use the FDroid app than doing direct
downloads. For the f-droid.org repo, the symlinks should probably be based on
app['id'] to prevent name conflicts.

more info here:
https://f-droid.org/forums/topic/static-urls-to-current-version-of-each-app/
2014-11-11 15:06:52 +01:00
Daniel Martí
3829896a8a Fix all pep8 warnings 2014-10-24 22:23:58 +02:00
Ciaran Gultnieks
8568805866 Support for publishing signed binaries from elsewhere
Done after verifying that they match ones built using a recipe.
Everything in the metadata should be the same as normal, with the
addition of the Binaries: directive to specify where (with pattern
substitution) to get the binaries from.

Publishing only takes place if there is a proper match. (Which seems
very unlikely to be the case unless the exact same toolchain is used, so
I would imagine that unless the person building and signing the incoming
binaries uses fdroidserver to build them, probably the exact same
buildserver id, they will not match. But at least we have the
functionality to support that.)
2014-10-24 21:04:15 +01:00
Daniel Martí
57efa16f3f Bump build-tools to 21.0.2 2014-10-22 15:01:01 +02:00
Daniel Martí
c77c9f06fc 'ndk_path' will always be in the config 2014-09-25 18:13:16 +02:00
Daniel Martí
c9daf93f69 Create local.properties if it doesn't exist 2014-09-25 18:11:56 +02:00
Daniel Martí
9327adfe74 Name config args thisconfig to avoid confusion with the global config 2014-09-17 00:12:24 +02:00
Daniel Martí
ce61186cd2 Fix issue where gradle=yes would be removed by rewritemeta 2014-09-15 17:03:45 +02:00
Daniel Martí
e038b4424c config['sdk_path'] will never be None, behave properly if ANDROID_HOME is unset 2014-09-15 12:49:36 +02:00
Daniel Martí
37aa3a7b99 Only expand paths on config items that can actually be paths 2014-09-15 12:39:42 +02:00
Daniel Martí
88dc0b2bb5 Keep consistency in config defaults and writes
* Default paths are not expanded
* When writing to config.py in "fdroid init", don't write expanded paths
  either
* Support changes in e.g. $ANDROID_HOME after a config.py is generated thanks
  to the fix above
2014-09-15 12:34:40 +02:00
Daniel Martí
34a3405208 Centralise handling of default gradle flavours 2014-09-13 13:04:24 +02:00
Daniel Martí
a195556378 Make gradle and antcommands (previously antcommand) proper lists 2014-09-13 13:01:08 +02:00
Daniel Martí
93a0d9918d Closes #34: Catch OSErrors when running Popen 2014-09-11 23:08:51 +02:00
Ciaran Gultnieks
b454ea3c6f Make stats retrieval more configurable 2014-09-02 18:53:36 +01:00
Daniel Martí
5e988eb84d common: discard wrapping quotes in strings
Fixes auto names that shouldn't have wrapping quotes like '"PassDroid"'
instead of just 'PassDroid'.
2014-08-25 08:45:46 +02:00
Daniel Martí
f7f8c80018 Fix "no such package" search logic 2014-08-25 00:28:18 +02:00
Ciaran Gultnieks
b43f7bea1a Add ability to filter asshattery from stats 2014-08-22 21:18:55 +01:00
Daniel Martí
58a88acd92 Make the scanner log scanignore as well 2014-08-21 20:02:52 +02:00
Daniel Martí
c5cab888e4 Revert some stuff from 94c29f9c37 that shouldn't have been commited 2014-08-18 11:25:39 +02:00
Daniel Martí
94c29f9c37 Map apps in memory from appid to appinfo
Instead of storing them in a list and doing linear searches by appinfo['id']
2014-08-16 12:46:02 +02:00
Daniel Martí
51c93c9576 Be more specific about when git svn is used 2014-08-16 10:55:21 +02:00
Daniel Martí
bf227948a9 Make use of Popen.wait() return value 2014-08-10 12:28:19 +02:00
Daniel Martí
94e2b120e4 Remove extra argument in magic warning call 2014-07-24 08:55:54 +02:00
Daniel Martí
a5f0f439c5 Use --before when using find-rev in git-svn 2014-07-23 17:26:33 +02:00
Daniel Martí
5167e3d771 Don't crash if a magic number can't be used
This should fix the anki build crashing.
2014-07-22 10:06:51 +02:00
Daniel Martí
78ff22d952 Drop svn support in favour of git-svn
Reasons:

* Cloning a svn repo via svn doesn't fetch the entire history
* Svn checkout is incredibly slow
* Svn doesn't have important features such as a 'clean' command

The only reason why we kept svn was for anonymous logins to repositories. This
is no longer a reason since git-svn also supports them.
2014-07-18 12:39:24 +02:00
Daniel Martí
13987b5c77 Use os.path.join instead of adding strings more often 2014-07-18 12:21:52 +02:00
Daniel Martí
d3ae163152 Fix Tags UCM on newer git-svn versions 2014-07-18 12:12:16 +02:00
Hans-Christoph Steiner
8c8fb8b156 support lists/tuples in 'serverwebroot' config item
This allows the user to specify multiple servers to put the repo to, and
`fdroid server update` will automatically push to them all.

fixes #22 https://gitlab.com/fdroid/fdroidserver/issues/22
2014-07-14 15:04:30 -04:00
Hans-Christoph Steiner
f34c842f55 auto-clean newlines and spaces in repo/archive descriptions
This gives us flexibility in how the blocks of text can be formatted in
config.py, but also provides a more useful format for displaying since the
client can decide where to wrap the text.
2014-07-14 15:01:57 -04:00
Daniel Martí
3d923a6718 Use p.wait() instead of p.communicate()
The latter calls the former anyway, and we don't need to fetch the output nor
send any stdin.
2014-07-09 19:22:39 +02:00
Daniel Martí
a834ff4ab2 Make a few Popens silent 2014-07-09 19:15:39 +02:00
Daniel Martí
69725c3f4c Much cleaner and nicer way to ignore vcs dot dirs
We now discard their entire subtree directly
2014-07-09 19:11:13 +02:00
Daniel Martí
f3dd6d9510 More generic usual suspects regex 2014-07-09 18:17:28 +02:00
Daniel Martí
acbbc6a973 Revert "Always print command output when --verbose"
This reverts commit a4cdd92448.
2014-07-09 11:11:41 +02:00
Daniel Martí
fad659921f Remove some gradle @dir leftovers 2014-07-09 11:11:13 +02:00
Daniel Martí
b404e1b69c Support git-svn refs in the form of rN 2014-07-09 10:41:35 +02:00
Daniel Martí
2c55fb499c Do write .fdroidvcs if the clone succeeded
If the clone succeeded but the checkout failed, it didn't. Now it does, by
keeping the exception and raising it a bit later.
2014-07-09 10:30:28 +02:00
Daniel Martí
f857169317 Support origin/ checkouts with tags as well in gitsvn 2014-07-08 12:04:24 +02:00
Daniel Martí
a4cdd92448 Always print command output when --verbose 2014-07-08 11:16:03 +02:00
Daniel Martí
ff06694adc Don't use generic Exception raises
That hides bugs, since all exceptions (including bugs that cause raises that
weren't our doing) fall under the "Exception" except
2014-07-07 15:41:50 +02:00
Daniel Martí
d8cd9a3163 Move more logging.info stuff to debug 2014-07-05 15:25:39 +02:00
Daniel Martí
17dc21b69b All logging goes to stderr, FDroidPopen should too 2014-07-05 14:10:26 +02:00
Daniel Martí
9d96ad3478 Don't directly print FDroidPopen output unless verbose 2014-07-05 14:07:53 +02:00
Daniel Martí
7d07e52e1f Try the old git svn find-rev format as well 2014-07-05 12:15:20 +02:00
Daniel Martí
8306bac7de Also check that platform-tools and tools exist 2014-07-03 18:23:35 +02:00
Daniel Martí
a8d4c8705f Also use adb via a full path 2014-07-03 18:21:33 +02:00
Daniel Martí
3dbf99a7f2 Use shorter and non-redundant 'or' clauses for 'if True else' assignments 2014-07-03 17:35:28 +02:00
Daniel Martí
00066a9b45 Use any of the branches that point to origin/HEAD if there are multiple
'set-head origin --auto' fails if there are multiple branches that are the
same as origin/HEAD:

error: Multiple remote HEAD branches. Please choose one explicitly with:
  git remote set-head origin develop
  git remote set-head origin master

So we want to grab any of them, e.g. the first branch that it gives us, and
just use that as it will work just fine.
2014-07-03 16:25:24 +02:00
Daniel Martí
73142c740b Make use of FDroidException in the main fdroid script
This should improve the output shown when exceptions are found
2014-07-03 14:01:22 +02:00
Daniel Martí
d9d5f30d7b vcs_* stuff should not raise BuildExceptions 2014-07-03 13:54:23 +02:00
Ciaran Gultnieks
327422af09 Fix failure to do anything when ndk_path is not defined 2014-07-03 08:56:56 +01:00
Daniel Martí
1d6b2378db Some more slight logging improvements 2014-07-03 00:43:03 +02:00
Daniel Martí
a67d80a011 Remove more prints in favour of logging 2014-07-03 00:35:43 +02:00
Daniel Martí
6e515ed34e Find the 'android' executable in the same manner 2014-07-03 00:34:16 +02:00
Daniel Martí
d73f2b9368 Also find zipalign at the start 2014-07-03 00:31:10 +02:00
Daniel Martí
d110c24eff Find aapt as part of the main config initialisation 2014-07-03 00:31:07 +02:00
Daniel Martí
5aad7b5d38 Refuse to try downloading a repo twice 2014-07-02 17:21:45 +02:00
Daniel Martí
d132adf63c Exception handling improvements
* Replace some prints with proper logging messages
* Make VCSException as verbose as BuildException, including error output
2014-07-02 15:44:46 +02:00
Daniel Martí
c64aafaf42 Don't set $SDK, it's too ambiguous with e.g. the Java SDK 2014-07-02 15:01:08 +02:00
Daniel Martí
70d77a1cce Set up SDK and NDK env vars from python
No need to make the buildserver do it
2014-07-01 21:03:50 +02:00
Daniel Martí
76ac2f591c Remove @dir support from gradle 2014-07-01 19:39:41 +02:00
Daniel Martí
1a1bdfc3d9 Merge branch 'bug-fixes-for-v0.2.1' of https://gitlab.com/eighthave/fdroidserver 2014-07-01 18:13:00 +02:00
Daniel Martí
8888962ace Rename PopenResult.stdout to output since it also contains stderr 2014-07-01 18:04:41 +02:00
Hans-Christoph Steiner
4d913d646a replace redundant build_tools check that breaks fdroid init
This reverts b637568a62 since it added a
redundant check that broke `fdroid init` when the default version dir of
build_tools does not exist on the local system.  It then uses the function
that was already in place for checking the build_tools setup in a way that
does not break `fdroid init`.

Now that the fake android home version is not matching the default version,
the tests will catch this bug in the future.
2014-06-30 23:01:47 -04:00
Hans-Christoph Steiner
afb98f9327 fix PEP8 fdroidserver/common.py:65:13: E126 continuation line over-indented for hanging indent 2014-06-30 21:19:55 -04:00
Ciaran Gultnieks
b1192f7b66 Fix indent 2014-06-30 21:32:43 +01:00
Daniel Martí
cbdcdd1e78 Update build-tools to 20.0.0 2014-06-30 17:03:16 +02:00
Daniel Martí
4ba9da0906 git-svn: use 'origin/' when passing a treeish (branches) to find-rev
This fixes the builds of de.blau.android. This worked before for some reason.
Git-svn probably changed in some way.
2014-06-29 01:29:31 +02:00
Daniel Martí
a831d484e6 Place more examples/config.py stuff into the defaults 2014-06-28 19:57:14 +02:00
Hans-Christoph Steiner
25f6b0c246 server: --sync-from-local-copy-dir for updating from offline signing repo
To support a fully offline build/signing machine, there is the "local copy
dir".  The repo is generated on the offline machine and then copied to a
local dir where a thumb drive or SD Card is mounted.  Then on the online
machine, using `fdroid server update --sync-from-local-copy-dir` allows
the whole server update process to happen in a single command:

0. read config.py on online machine's repo
1. rsync from the local_copy_dir to the current dir
2. copy to serverwebroot, awsbucket, etc.
2014-06-26 20:47:36 -04:00
Daniel Martí
0ee6fc8c22 Raise gotorevision exceptions with more useful info 2014-06-26 13:07:49 +02:00
Daniel Martí
e49b7aafda Always try to recover origin/HEAD in case it's not there 2014-06-26 13:03:51 +02:00
Daniel Martí
4ad7e8be06 Easier multiline strings 2014-06-26 12:52:16 +02:00
Ciaran Gultnieks
9a70575feb Fix pep8 error in previous commit 2014-06-25 12:38:25 +01:00
Daniel Martí
c0f026c9c4 Use origin/HEAD as the default checkout for git
This should fix many RepoManifest UCMs where 'master' is not the default
branch
2014-06-25 11:13:28 +02:00
Ciaran Gultnieks
c9638cf7dd Be more specific when logging repository deletes 2014-06-25 09:54:14 +01:00
Ciaran Gultnieks
9df3a491de Fix popen command logging 2014-06-25 09:25:55 +01:00
Daniel Martí
2c8df2c1ef Small buildjni= fixes 2014-06-24 22:31:39 +02:00
Daniel Martí
26154127e6 Only report files that were actually cleaned of signing stuff 2014-06-22 21:34:14 +02:00
Daniel Martí
7c2e61a407 Set the FDroidOpen output default back to true
Having it at False just makes SilentPopen useless.
2014-06-22 21:29:07 +02:00
Daniel Martí
0bce840571 Warn about config permissions before loading the defaults
Now, configs that don't contain passwords don't trigger the warning.
2014-06-22 21:24:29 +02:00
Daniel Martí
2686fa6faa A bit more None magic to fix some UCMs 2014-06-22 17:36:00 +02:00
Daniel Martí
25268a728d Don't output everything when using --verbose
This is especially painful when using stuff like aapt to obtain data
2014-06-21 23:03:36 +02:00
Daniel Martí
5500787935 Revert "Keep version names even if found separate from the code"
This reverts commit 75381ef147.
2014-06-20 11:10:52 +02:00
Daniel Martí
04b61302dc Better support for gradle plugin versions 2014-06-19 12:44:01 +02:00
Daniel Martí
69da721f02 Use gradle_dir, not root_dir, to fetch the plugin version 2014-06-19 12:43:05 +02:00
Daniel Martí
1fcf81b1f4 Current build-tools is 19.1.0, not 19.1 2014-06-16 23:12:47 +02:00
Daniel Martí
a1c3c2033a Bump default build_tools, small fixes 2014-06-16 12:42:43 +02:00
Daniel Martí
b637568a62 Warn if build_tools is not set up properly 2014-06-16 12:40:04 +02:00
Daniel Martí
75381ef147 Keep version names even if found separate from the code 2014-06-16 12:30:33 +02:00
Daniel Martí
9779979e3a lintVital was added in 0.8, only exclude it then 2014-06-12 10:00:46 +02:00
Daniel Martí
7d8e9bbcaa jni problem is critical, so make it an error 2014-06-08 00:38:11 +02:00
Ciaran Gultnieks
b86bfb94fb Merge branch 'test-updates-and-related-bug-fixes' into 'master'
Test updates and related bug fixes

I just set up some big tests of generating repos based on feeding as many random APKs into `fdroid update` as possible.  On our jenkins server, the tests copy all of the APKs that the jenkins server has generated and builds a repo from them.  This process caught lots of little glitches in the whole process.  While these little glitches are usually caused by problematic APKs, `fdroid update` should handle them gracefully.  Hopefully this set of fixes accomplishes that.
2014-06-05 15:51:24 +00:00
Daniel Martí
6aeb57e950 Be less clumsy when removing signingConfigs 2014-06-05 10:02:30 +02:00
Hans-Christoph Steiner
ed73db65ae make FDroidPopen output based on --verbose
FDroidPopen outputs by default, this should be controlled by the --verbose
flag so that most of the time, only meaningful messages are shown like
errors and such.  For command output that should be shown everytime,
output=True can be set.
2014-06-04 22:01:25 -04:00
Hans-Christoph Steiner
6ca060e10d add more SDK checks: build-tools/19.0.3 and presense of aapt
Make sure that fdroid can find aapt in the current config, otherwise exit
with an error.  Some users don't have build_tools set, and their SDK does
not include the build-tools in the default versioned dir, so this should
warn them of what is wrong.
2014-06-04 21:54:55 -04:00
Daniel Martí
3d72c30fe5 Use ordered dicts for defaults in apps and builds 2014-05-31 23:54:50 +02:00
Daniel Martí
0f0ccdb1e1 Fix some more pep8 warnings 2014-05-28 09:33:14 +02:00
Daniel Martí
9301c50e3b More strict string search regex 2014-05-27 10:10:15 +02:00
Ciaran Gultnieks
3a73654d49 Centralise management of srclib metadata 2014-05-20 22:44:47 +01:00
Ciaran Gultnieks
e29da6b023 Restore friendly error messages
Use --verbose if you really want a full traceback with your 'you made a
typo in an package ID' messages.

It would be better to do this based on exception types (i.e. our own
exceptions - MetadataException, BuildException, VCSException) would not
print a traceback, but unexpected exceptions would. But the types are
not available at the 'fdroid' level currently.
2014-05-20 22:14:19 +01:00
Ciaran Gultnieks
0113f85448 Add ability to ignore updates based on version name matching 2014-05-13 20:04:22 +01:00
Ciaran Gultnieks
cf1201833b Add proprietary samsung jar to usual suspects 2014-05-11 22:14:32 +01:00
Hans-Christoph Steiner
37d6d87ff7 fix PEP8 "E226 missing whitespace around arithmetic operator" 2014-05-06 14:36:33 -04:00
Hans-Christoph Steiner
0e00b36db5 fix PEP8 E124/E125/126/127/128 indentation issues
* E124 closing bracket does not match visual indentation
* E125 continuation line does not distinguish itself from next logical line
* E126 continuation line over-indented for hanging indent
* E127 continuation line over-indented for visual indent
* E128 continuation line under-indented for visual indent
2014-05-06 14:36:33 -04:00
Hans-Christoph Steiner
aa5f317c26 fix PEP8 "W391 blank line at end of file" 2014-05-06 11:45:03 -04:00
Hans-Christoph Steiner
3f4f7a544b fix PEP8 "E302 expected 2 blank lines, found 1" 2014-05-06 11:45:03 -04:00
Hans-Christoph Steiner
2f2618e06c fix PEP8 "E401 multiple imports on one line" 2014-05-06 11:45:03 -04:00
Hans-Christoph Steiner
7e17fafc14 fix PEP8 "E225 missing whitespace around operator" 2014-05-06 11:45:03 -04:00
Hans-Christoph Steiner
2d271806f1 fix PEP8 "E251 unexpected spaces around keyword / parameter equals" 2014-05-06 11:45:02 -04:00
Hans-Christoph Steiner
58a484e74e fix PEP8 "W291 trailing whitespace" 2014-05-06 11:45:02 -04:00
Hans-Christoph Steiner
62204d1fe5 fix PEP8 "E202 whitespace before ']' or '}'" 2014-05-06 11:45:02 -04:00
Hans-Christoph Steiner
4af2e0004f fix PEP8 "E201 whitespace after '(' or '[' or '{'" 2014-05-06 11:45:02 -04:00
Hans-Christoph Steiner
998011d535 fix PEP8 "E231 missing whitespace after ','" 2014-05-06 11:45:02 -04:00
Hans-Christoph Steiner
f1812d5935 fix PEP8 "E203 whitespace before ':' or ','" 2014-05-06 11:45:02 -04:00
Hans-Christoph Steiner
fccb990521 fix PEP8 "E711 comparison to None should be 'if cond is None:'" 2014-05-06 11:45:02 -04:00
Daniel Martí
13af519069 Run git submodule sync before git submodule update
Fixes changes in submodule urls
2014-04-29 12:00:03 +02:00
Hans-Christoph Steiner
66df02d5f8 init: --android-home for forcing the path to the Android SDK
This allows the user to set the path to their Android SDK from the command
line. This option is named after the standard env var ANDROID_HOME, as used
in the build.xml generated by `android update project`.  --android-home
takes precendence over the ANDROID_HOME env var if it is set.
2014-04-23 19:33:10 -04:00
Hans-Christoph Steiner
186aec46ba init: split out defconfig and sdk test to run before config is loaded
`fdroid init` runs before any config.py exists, but it still needs to have
the default config and the SDK path tests.  So split those two bits out of
common.read_config() so that they can be run separately before config.py
is in place.
2014-04-23 19:32:04 -04:00
Hans-Christoph Steiner
d1cd817759 implement -q and -v for fdroid server
The --quiet and --verbose options that are standard with the fdroid tools
were not implemented yet with the `server` command.
2014-04-22 22:59:27 -04:00
Hans-Christoph Steiner
a7d1d9a54d overwrite password files if they exist
The .fdroid.*.txt password files are only meant to be a conduit for the
passwords, so blow them away everytime.  The canonical password is stored
in config.py.

It might makes sense to replace these files with env vars using
-storepass:env and -keypass:env.  I figured that the passwords are already
in a file, config.py, so adding more files in the same location with the
same perms would not increase the risk at all.
2014-04-22 22:59:27 -04:00
Daniel Martí
82e88fbcf6 Support custom maven/gradle resource paths 2014-04-22 11:39:29 +02:00
Daniel Martí
00fa44e916 Only do the latest five tags when using UCM:Tags on git 2014-04-17 21:05:18 +02:00
Daniel Martí
3736da3761 No longer use universal_newlines
It was added in an attempt to get git clone/fetch output, which did not
succeed.
2014-04-17 20:47:13 +02:00
Daniel Martí
f79ded4a26 Also ignore .bzr when scanning 2014-04-16 21:06:24 +02:00
Daniel Martí
559ad9ef5b Also glob the 'rm' field 2014-04-15 23:58:12 +02:00
Daniel Martí
d4f9f341ed Glob scanignore and scandelete
These fields can still be used without globbing, but globbing can be very
useful in some cases.
2014-04-15 23:53:44 +02:00
Daniel Martí
8f0f896d91 Rewrite much of the source scanner
* Group apk, jar and zip files in the same case
* Use regex to support more patterns and be more flexible
* Only check for usual suspects in jar files (saves time)
* Also catch unknown zip-like files as warnings
2014-04-15 23:33:54 +02:00
Daniel Martí
b92b722c6d Fix: some apks have a zip mimetype instead of a jar one 2014-04-15 17:50:08 +02:00
Daniel Martí
5f2c348b40 Support gradle variables without an equals sign 2014-04-12 01:00:59 +02:00