chiark / gitweb /
fdroidserver.git
6 years agoMerge branch 'duplicate-apk-processing' into 'master'
Torsten Grote [Fri, 2 Jun 2017 14:20:20 +0000 (14:20 +0000)]
Merge branch 'duplicate-apk-processing' into 'master'

APK processing for duplicate versionCodes and renaming

See merge request !280

6 years agocheck signature and OpenSSL after APK has proven valid
Hans-Christoph Steiner [Thu, 1 Jun 2017 14:24:31 +0000 (16:24 +0200)]
check signature and OpenSSL after APK has proven valid

If working with a random grabbag of APKs, there can be all sorts of
issues like corrupt entries in the ZIP, bad signatures, signatures that
are invalid since they use MD5, etc.  Moving these two checks later means
that the APKs can be renamed still.

This does change how common.getsig() works.  For years, it returned
None if the signature check failed.  Now that I've started working
with giant APK collections gathered from the wild, I can see that
`fdroid update` needs to be able to first index what's there, then
make decisions based on that information.  So that means separating
the getsig() fingerprint fetching from the APK signature verification.

This is not hugely security sensitive, since the APKs still have to
get past the Android checks, e.g. update signature checks.  Plus the
APK hash is already included in the signed index.

6 years agostrip file extension from generated name for non-APKs
Hans-Christoph Steiner [Thu, 1 Jun 2017 08:29:30 +0000 (10:29 +0200)]
strip file extension from generated name for non-APKs

With a generic file, the file name is the only guaranteed name metadata
field.  So if the name is not specified in the metadata, then the name
is set to the filename.  This changes that so that the file extension is
stripped from that generated name.

6 years agouse var naming scheme in KnownApks (apk --> apkName)
Hans-Christoph Steiner [Thu, 1 Jun 2017 08:27:35 +0000 (10:27 +0200)]
use var naming scheme in KnownApks (apk --> apkName)

Everywhere else, the file name of the APK is called apkName.

6 years agoregexs for getting packageName and versionCode from filenames
Hans-Christoph Steiner [Wed, 31 May 2017 21:02:28 +0000 (23:02 +0200)]
regexs for getting packageName and versionCode from filenames

This is useful for parsing APK files, which can include packageName,
versionCode, and optionally 7 char signing key ID (i.e. <sig>).
This also can set the packageName and versionCoe for non APK files, so
that it is easy to assign them to metadata files, and to allow for
upgrades by setting the versionCode in the filename.

6 years agoindex.xml cannot handle APKs with the same packageName/versionCode
Hans-Christoph Steiner [Wed, 31 May 2017 19:43:40 +0000 (21:43 +0200)]
index.xml cannot handle APKs with the same packageName/versionCode

Really, it is the fdroidclient parser of index.xml that fails, due to the
hardcoded expectation that there will only ever be a single APK for any
given versionCode.  We keep index.xml backwards compatible for old
clients, and use index-v1.json to support new things.  Having multiple
APKs that have the same packageName and versionCode will break the client
v0.103.* since that version uses index-v1.json, but still has the hard-
coded database parsing stuff.

#153

6 years agoupdate: add --rename-apks to force APK filenames to fdroid standard
Hans-Christoph Steiner [Wed, 31 May 2017 19:20:35 +0000 (21:20 +0200)]
update: add --rename-apks to force APK filenames to fdroid standard

uses the standard package.name_123.apk.  If that exists, it appends the
shasum.  If that exists, then its a duplicate, so its deleted. This should
help @SergeWinters with his 12,000 APKs.

6 years agoallow APKs with same packageName/versionCode but different signer
Hans-Christoph Steiner [Tue, 30 May 2017 12:52:33 +0000 (14:52 +0200)]
allow APKs with same packageName/versionCode but different signer

There are many APKs out in the wild that claim to be the same app and
version and each other, but they are signed by different keys.  fdroid
should be able to index these, and work with them.   This supports having
the developer's signature via reproducible builds, random collections of
APKs like repomaker, etc.

6 years agogitlab-ci: add index v0 metadata parsing test
Hans-Christoph Steiner [Sat, 27 May 2017 19:13:36 +0000 (21:13 +0200)]
gitlab-ci: add index v0 metadata parsing test

This test is very handy for making sure the old index.xml v0 format does
not inadvertantly change.

6 years agoadd basic test for `fdroid scanner`
Hans-Christoph Steiner [Thu, 25 May 2017 18:39:15 +0000 (20:39 +0200)]
add basic test for `fdroid scanner`

There was no test coverage at all for this command, this is a very basic
test that should prevent things like 2626858450953ac65124765d2cd73d1602846372

6 years agoMerge branch 'master' into 'master'
Hans-Christoph Steiner [Tue, 30 May 2017 19:08:28 +0000 (19:08 +0000)]
Merge branch 'master' into 'master'

Add support for the new Bitbucket look

See merge request !278

6 years agoAdd support for the new Bitbucket look
Alexey Krasilnikov [Tue, 30 May 2017 10:24:07 +0000 (13:24 +0300)]
Add support for the new Bitbucket look

6 years agoMerge branch 'makebs' into 'master'
Hans-Christoph Steiner [Mon, 29 May 2017 08:01:32 +0000 (08:01 +0000)]
Merge branch 'makebs' into 'master'

makebs: update to ndk-r14b and build-tools-25.0.3

See merge request !277

6 years agoMerge branch 'lint-for-newness' into 'master'
Boris Kraut [Fri, 26 May 2017 21:38:35 +0000 (21:38 +0000)]
Merge branch 'lint-for-newness' into 'master'

`fdroid lint` support for SPDX, l18n, dev signatures

Closes #234

See merge request !269

6 years agomakebs: update to ndk-r14b and build-tools-25.0.3
Boris Kraut [Fri, 26 May 2017 14:54:06 +0000 (16:54 +0200)]
makebs: update to ndk-r14b and build-tools-25.0.3

6 years agomake tests pass new lint rules
Hans-Christoph Steiner [Mon, 15 May 2017 14:58:10 +0000 (16:58 +0200)]
make tests pass new lint rules

6 years agolint: use only license tags from https://spdx.org/license-list
Hans-Christoph Steiner [Mon, 15 May 2017 14:46:52 +0000 (16:46 +0200)]
lint: use only license tags from https://spdx.org/license-list

closes #234

6 years agolint: support new per-package subdirs for l18n and dev signatures
Hans-Christoph Steiner [Mon, 15 May 2017 13:17:33 +0000 (15:17 +0200)]
lint: support new per-package subdirs for l18n and dev signatures

Graphics and localized text can now be stored in the package folders,
always in a folder that is named for the locale.  The upstream developer
signature is also now stored, so that the upstream APK can be reproduced
even if they remove their APKs.

#291
fdroiddata!2229
fdroiddata!2224
fdroidclient#15
fdroidserver#174

6 years agolint: add popular URL shorteners to the banned list
Hans-Christoph Steiner [Mon, 15 May 2017 12:58:01 +0000 (14:58 +0200)]
lint: add popular URL shorteners to the banned list

6 years agoMerge branch 'master' into 'master'
Hans-Christoph Steiner [Thu, 25 May 2017 18:49:14 +0000 (18:49 +0000)]
Merge branch 'master' into 'master'

Don't pass root_dir to scan_source

See merge request !276

6 years agoDon't pass root_dir to scan_source
mimi89999 [Thu, 25 May 2017 18:11:14 +0000 (20:11 +0200)]
Don't pass root_dir to scan_source

6 years agoMerge branch 'modernize-pylint' into 'master'
Torsten Grote [Thu, 25 May 2017 14:00:36 +0000 (14:00 +0000)]
Merge branch 'modernize-pylint' into 'master'

modernize pylint

See merge request !252

6 years agoMerge branch 'linphone-packages' into 'master'
Hans-Christoph Steiner [Wed, 24 May 2017 10:57:21 +0000 (10:57 +0000)]
Merge branch 'linphone-packages' into 'master'

Add required packages for linphone 3.1.0 build

See merge request !274

6 years agoAdd required packages for linphone 3.1.0 build
Andrew Patrikalakis [Wed, 24 May 2017 04:19:13 +0000 (21:19 -0700)]
Add required packages for linphone 3.1.0 build

6 years agofix pylink 'dict' has no member 'keystore'
Hans-Christoph Steiner [Thu, 13 Apr 2017 09:58:56 +0000 (11:58 +0200)]
fix pylink 'dict' has no member 'keystore'

6 years agofix pylint unused-argument
Hans-Christoph Steiner [Thu, 13 Apr 2017 10:30:04 +0000 (12:30 +0200)]
fix pylint unused-argument

6 years agoupdate outdated pylint setup
Hans-Christoph Steiner [Thu, 13 Apr 2017 09:57:02 +0000 (11:57 +0200)]
update outdated pylint setup

The logilab-astng lib is dead, replaced by python-astroid.  The crazy astng
plugin is no longer needed also.

#281

6 years agoMerge branch 'python-vagrant-copy-caches' into 'master'
Hans-Christoph Steiner [Tue, 23 May 2017 18:38:57 +0000 (18:38 +0000)]
Merge branch 'python-vagrant-copy-caches' into 'master'

complete staging buildserver setup on jenkins.debian.net using nested KVM instances

See merge request !176

6 years agomakebuildserver: make config['domain'] local var where its needed
Hans-Christoph Steiner [Tue, 23 May 2017 09:59:53 +0000 (11:59 +0200)]
makebuildserver: make config['domain'] local var where its needed

6 years agorefactored vm related code from build.py to vmtools.py
Michael Pöhn [Tue, 23 May 2017 10:53:07 +0000 (12:53 +0200)]
refactored vm related code from build.py to vmtools.py

6 years agoremoved unused buildserver code
Michael Pöhn [Tue, 23 May 2017 09:37:09 +0000 (11:37 +0200)]
removed unused buildserver code

6 years agoleave VirtualBox `vagrant package` as it was originally
Hans-Christoph Steiner [Mon, 22 May 2017 13:50:32 +0000 (15:50 +0200)]
leave VirtualBox `vagrant package` as it was originally

We only need Vagrantfile hacks for KVM.

6 years agorestart builder vm when ssh connection fails
Michael Pöhn [Tue, 25 Apr 2017 12:45:41 +0000 (14:45 +0200)]
restart builder vm when ssh connection fails

6 years agobuild: delete bad builder/ symlinks
Hans-Christoph Steiner [Tue, 25 Apr 2017 08:27:09 +0000 (10:27 +0200)]
build: delete bad builder/ symlinks

If builder/ is a symlink but is not detected as a directory by
os.path.isdir(), then it is a broken symlink.

6 years agowait a sec after suspending
Michael Pöhn [Fri, 14 Apr 2017 13:58:16 +0000 (15:58 +0200)]
wait a sec after suspending

6 years agoreset buildserver vm if vagrant uuid not present
Michael Pöhn [Thu, 13 Apr 2017 16:41:50 +0000 (18:41 +0200)]
reset buildserver vm if vagrant uuid not present

6 years agomakebuildserver vbox logmessage fix
Michael Pöhn [Thu, 13 Apr 2017 10:49:14 +0000 (12:49 +0200)]
makebuildserver vbox logmessage fix

6 years agouse uuid for vbox snapshots again
Michael Pöhn [Wed, 12 Apr 2017 20:06:21 +0000 (22:06 +0200)]
use uuid for vbox snapshots again

6 years agoremoved useless vm validity check; attempted to fix vbox support
Michael Pöhn [Wed, 12 Apr 2017 15:07:50 +0000 (17:07 +0200)]
removed useless vm validity check; attempted to fix vbox support

6 years agodeal with outdated box images in libvirt storage pool
Michael Pöhn [Sun, 9 Apr 2017 13:36:31 +0000 (15:36 +0200)]
deal with outdated box images in libvirt storage pool

6 years agomakebuildserver deal with apt cache lock
Michael Pöhn [Sat, 8 Apr 2017 22:57:59 +0000 (00:57 +0200)]
makebuildserver deal with apt cache lock

6 years agobuild server use up instead or resume; logging
Hans-Christoph Steiner [Mon, 22 May 2017 15:53:12 +0000 (17:53 +0200)]
build server use up instead or resume; logging

6 years agotest script for vmtools
Hans-Christoph Steiner [Mon, 22 May 2017 15:53:47 +0000 (17:53 +0200)]
test script for vmtools

6 years agorevised build server creation
Michael Pöhn [Thu, 6 Apr 2017 09:42:35 +0000 (11:42 +0200)]
revised build server creation

6 years agoauto-lookup vm provider based on available executables; more fault tolerant vagrant...
Michael Pöhn [Sat, 1 Apr 2017 10:27:26 +0000 (12:27 +0200)]
auto-lookup vm provider based on available executables; more fault tolerant vagrant package

6 years agofixed reading libvirt box image size
Hans-Christoph Steiner [Mon, 22 May 2017 15:17:01 +0000 (17:17 +0200)]
fixed reading libvirt box image size

6 years agovmtools debug logging for check_output calls
Michael Pöhn [Wed, 29 Mar 2017 15:36:04 +0000 (17:36 +0200)]
vmtools debug logging for check_output calls

6 years agoadded box handling to vmtools
Hans-Christoph Steiner [Mon, 22 May 2017 15:14:48 +0000 (17:14 +0200)]
added box handling to vmtools

6 years agorefactored kvm_package to vmtools
Hans-Christoph Steiner [Mon, 22 May 2017 15:12:34 +0000 (17:12 +0200)]
refactored kvm_package to vmtools

6 years agoadded makebuildserver option for keeping vagrant box
Hans-Christoph Steiner [Mon, 22 May 2017 15:29:12 +0000 (17:29 +0200)]
added makebuildserver option for keeping vagrant box

This is very useful for debugging this process, and also for people
who might want to keep a working copy of the box.

6 years agofix virsh destroy parameters
Michael Pöhn [Sun, 26 Mar 2017 01:34:29 +0000 (03:34 +0200)]
fix virsh destroy parameters

6 years agouse configured vm provider in when calling destroy in makebuildserver
Michael Pöhn [Sun, 26 Mar 2017 01:15:33 +0000 (03:15 +0200)]
use configured vm provider in when calling destroy in makebuildserver

6 years agouse overhauled mv destroy code in build.py
Michael Pöhn [Sun, 26 Mar 2017 00:51:28 +0000 (01:51 +0100)]
use overhauled mv destroy code in build.py

6 years agooverhauled and moved destroying builder vm to vmtools.py
Michael Pöhn [Sun, 26 Mar 2017 00:41:39 +0000 (01:41 +0100)]
overhauled and moved destroying builder vm to vmtools.py

6 years agofdroid build: added sleep after destroy/undefine
Michael Pöhn [Sat, 25 Mar 2017 03:19:36 +0000 (04:19 +0100)]
fdroid build: added sleep after destroy/undefine

6 years agomakebuildserver added sleep after destroy/undefine
Michael Pöhn [Sat, 25 Mar 2017 02:50:22 +0000 (03:50 +0100)]
makebuildserver added sleep after destroy/undefine

6 years agomakebuildserver more robust codepath for vagrant destroy
Michael Pöhn [Sat, 25 Mar 2017 01:48:00 +0000 (02:48 +0100)]
makebuildserver more robust codepath for vagrant destroy

6 years agomakebuildserver added failsafe when destroy vagrant vm
Michael Pöhn [Sat, 25 Mar 2017 01:37:08 +0000 (02:37 +0100)]
makebuildserver added failsafe when destroy vagrant vm

6 years agomakebuildserver use virsh instead of libvirt for forcing domain off
Michael Pöhn [Sat, 25 Mar 2017 01:19:15 +0000 (02:19 +0100)]
makebuildserver use virsh instead of libvirt for forcing domain off

6 years agomakebuildserver debug logging when initial provisioning fails
Michael Pöhn [Sat, 25 Mar 2017 00:56:20 +0000 (01:56 +0100)]
makebuildserver debug logging when initial provisioning fails

6 years agooverhauled makebuildserver libvirt vm cleanup
Michael Pöhn [Sat, 25 Mar 2017 00:40:41 +0000 (01:40 +0100)]
overhauled makebuildserver libvirt vm cleanup

6 years agomakebuildserver debugging log details
Michael Pöhn [Fri, 24 Mar 2017 19:04:50 +0000 (20:04 +0100)]
makebuildserver debugging log details

6 years agomakebuildserver prune gloabal vagrant status when purging broken VMs
Michael Pöhn [Fri, 24 Mar 2017 03:16:30 +0000 (04:16 +0100)]
makebuildserver prune gloabal vagrant status when purging broken VMs

6 years agodelete .vagrant dir when cleaning up buildserver vm
Michael Pöhn [Fri, 24 Mar 2017 02:15:35 +0000 (03:15 +0100)]
delete .vagrant dir when cleaning up buildserver vm

6 years agojenkins makebuildserver fail if vagrant box was not created
Michael Pöhn [Thu, 23 Mar 2017 23:49:02 +0000 (00:49 +0100)]
jenkins makebuildserver fail if vagrant box was not created

6 years agocalculate correct size for buildserver-box in makebuildserver
Hans-Christoph Steiner [Mon, 22 May 2017 14:57:47 +0000 (16:57 +0200)]
calculate correct size for buildserver-box in makebuildserver

https://gitlab.com/fdroid/fdroidserver/issues/238#note_24000153
"Our hard-coded image size meta-data (1000) is for some interpreted as less
than the size of the box-image by my kvm setup. This makes grub/initrd
refuse to boot. So I've changed the metadata size to 9999 which resulted in
an actually booting vm. I can log in on the builder-vm via virt-manager
and virsh.

6 years agoauto-reset broken builder vm
Michael Pöhn [Tue, 14 Mar 2017 23:12:01 +0000 (00:12 +0100)]
auto-reset broken builder vm

6 years agoscan vm provider again after re-creating builder vm
Michael Pöhn [Thu, 9 Mar 2017 12:30:30 +0000 (13:30 +0100)]
scan vm provider again after re-creating builder vm

6 years agoadded some debug listings to jenkins makebuildserver script
Michael Pöhn [Wed, 8 Mar 2017 11:29:18 +0000 (12:29 +0100)]
added some debug listings to jenkins makebuildserver script

6 years agodelete associated libvirt domain/image when destroying builder vm
Michael Pöhn [Tue, 7 Mar 2017 14:14:10 +0000 (15:14 +0100)]
delete associated libvirt domain/image when destroying builder vm

6 years agobuild: fixed kvm snapshot support; makebuildserver: setup kvm ssh credentials
Michael Pöhn [Mon, 6 Mar 2017 01:57:07 +0000 (02:57 +0100)]
build: fixed kvm snapshot support; makebuildserver: setup kvm ssh credentials

6 years agoadded libvirt vm-provider support to build.py
Michael Pöhn [Thu, 23 Feb 2017 04:51:05 +0000 (05:51 +0100)]
added libvirt vm-provider support to build.py

6 years agomakebuildserver: package up KVM VM as a vagrant box
Hans-Christoph Steiner [Tue, 14 Feb 2017 21:58:35 +0000 (22:58 +0100)]
makebuildserver: package up KVM VM as a vagrant box

`vagrant package` does not work with KVM, so we have to hack together our
own until someone implements it (suppose we should do it). This is a hacked
up version based on:
https://github.com/vagrant-libvirt/vagrant-libvirt/blob/d7d440ea8f24f698a93a4c5b9a5149acef469579/tools/create_box.sh

#238

6 years agobuildserver: make --clean destroy reliably
Hans-Christoph Steiner [Tue, 27 Sep 2016 06:26:33 +0000 (02:26 -0400)]
buildserver: make --clean destroy reliably

This prevents v.destroy() from running if Vagrantfile.yaml does not exist,
since that is required for vagrant to run: is the core config including the
name of the box, etc.  Otherwise, it would exit with an error.

This also does complete cleanup when using libvirt.

6 years agobuildserver: consolidate boxfile export code into one block
Hans-Christoph Steiner [Mon, 26 Sep 2016 09:22:05 +0000 (05:22 -0400)]
buildserver: consolidate boxfile export code into one block

This is just for clarity, and moving more code into the main() function.

6 years agobuildserver: add copy_caches_from_host config option
Hans-Christoph Steiner [Thu, 23 Jun 2016 15:12:06 +0000 (17:12 +0200)]
buildserver: add copy_caches_from_host config option

For people using slow, expensive, and/or flaky internet, liberal use of
caching can make a huge difference.  The restricted environment of the
gpjenkins box has been a good test environment for this (Tor-only,
whitelist of allowed IPs to visit, home internet connection).

6 years agobuildserver: run_via_vagrant_ssh() to run cmds via python-vagrant
Hans-Christoph Steiner [Thu, 23 Jun 2016 14:38:39 +0000 (16:38 +0200)]
buildserver: run_via_vagrant_ssh() to run cmds via python-vagrant

This moves the last vagrant call in a subprocess.

6 years agobuildserver: move code into main() method to always stop thread
Hans-Christoph Steiner [Sun, 25 Sep 2016 16:55:29 +0000 (18:55 +0200)]
buildserver: move code into main() method to always stop thread

By running the whole program in a main() function, it can be wrapped in
try/finally in order to stop the background display thread.  This is also
done in ./fdroid, its standard practice for Python CLI utilities.

6 years agobuildserver: display verbose logging in a background tail
Hans-Christoph Steiner [Mon, 20 Jun 2016 09:33:46 +0000 (11:33 +0200)]
buildserver: display verbose logging in a background tail

6 years agobuildserver: replace custom code with python-vagrant
Hans-Christoph Steiner [Tue, 27 Sep 2016 06:49:32 +0000 (08:49 +0200)]
buildserver: replace custom code with python-vagrant

I ran into some annoying issues with UTF-8 output in the vagrant logs, and
it was hard to solve.  So I switched to using python-vagrant, which handles
it all for us.  Its been around since 2012, has a number of contributors,
and is still actively maintained, so it seems like a good bet. I also
packaged it for Debian, including a backport in jessie-backports.

On Debian/jessie, do `apt-get install python3-vagrant/jessie-backports`

6 years agoinclude class like UNIX `tail -f` for displaying logs
Hans-Christoph Steiner [Fri, 17 Jun 2016 11:03:01 +0000 (13:03 +0200)]
include class like UNIX `tail -f` for displaying logs

This allows fdroidserver to easily log activity while displaying it at the
same time.

6 years agomove bulk of reproducible_fdroid_build_apps.sh to jenkins-build
Hans-Christoph Steiner [Mon, 22 May 2017 15:36:18 +0000 (17:36 +0200)]
move bulk of reproducible_fdroid_build_apps.sh to jenkins-build

This lets us quickly and frequently test things.

6 years agoMerge branch 'exceptions' into 'master'
Hans-Christoph Steiner [Mon, 22 May 2017 20:50:54 +0000 (20:50 +0000)]
Merge branch 'exceptions' into 'master'

Replace sys.exit() in non-main functions by exceptions

See merge request !273

6 years agoReplace sys.exit() in non-main functions by exceptions
Torsten Grote [Mon, 22 May 2017 19:33:52 +0000 (16:33 -0300)]
Replace sys.exit() in non-main functions by exceptions

Also move all exceptions into one module

6 years agofix calling vagrant global-status
Michael Pöhn [Sat, 25 Mar 2017 22:50:10 +0000 (23:50 +0100)]
fix calling vagrant global-status

6 years agouse stable version of priv ext instead of latest when testing in makebuildserver
Michael Pöhn [Mon, 24 Apr 2017 10:19:37 +0000 (12:19 +0200)]
use stable version of priv ext instead of latest when testing in makebuildserver

6 years agojenkins-build-makebuildserver: retry `git fetch` until it works
Hans-Christoph Steiner [Wed, 26 Oct 2016 12:24:14 +0000 (14:24 +0200)]
jenkins-build-makebuildserver: retry `git fetch` until it works

It seems that gitlab gives 500 errors a bit too frequently, so keep
retrying the `git pull` until it works so that there isn't a error email
sent out over failed pulls.

6 years agoMerge branch 'indexing-fixes' into 'master'
Hans-Christoph Steiner [Mon, 22 May 2017 09:32:39 +0000 (09:32 +0000)]
Merge branch 'indexing-fixes' into 'master'

indexing fixes

Closes #303

See merge request !270

7 years agoupdate: find aapt when it is not in the PATH
Hans-Christoph Steiner [Thu, 18 May 2017 15:20:24 +0000 (17:20 +0200)]
update: find aapt when it is not in the PATH

This is some very messy logic built up since 2010.  This will all go away
once we have a python3 version of androguard available.

The removed imports and `dir(APK)` is to silence pyflakes

closes #303

7 years agoupdate: fix fastlane scraping, it uses a subdir called 'images'
Hans-Christoph Steiner [Tue, 16 May 2017 10:25:42 +0000 (12:25 +0200)]
update: fix fastlane scraping, it uses a subdir called 'images'

https://commons.wikimedia.org/wiki/File:GetChromium_FeatureGraphic_1024x500.png

7 years agoupdate: skip packages without metadata in index V1
Hans-Christoph Steiner [Mon, 15 May 2017 18:11:41 +0000 (20:11 +0200)]
update: skip packages without metadata in index V1

If a package does not have a matching "app" metadata file, then it should
not be added to the index. index V0 already does this properly.

7 years agoupdate: improved logging
Hans-Christoph Steiner [Mon, 15 May 2017 17:48:20 +0000 (19:48 +0200)]
update: improved logging

the aapt warnings were very verbose, and the other now includes the
file name type for screenshots, rather than the filename twice.

7 years agoupdate: allow repo files to use _ in the file names
Hans-Christoph Steiner [Mon, 15 May 2017 17:47:31 +0000 (19:47 +0200)]
update: allow repo files to use _ in the file names

_ is a valid character for Java package names, so it should also work in
the repo file naming scheme. This makes it so it only splits the file
name based on the last _.

7 years agometadata: switch from deprecated cgi.escape to html.escape
Hans-Christoph Steiner [Mon, 15 May 2017 15:27:48 +0000 (17:27 +0200)]
metadata: switch from deprecated cgi.escape to html.escape

cgi.escape is deprecated in Python 3.x and has security issues:
https://bugs.python.org/issue26398

html.escape() differs from cgi.escape() by its defaults to quote=True:

 s = html.escape( """& < " ' >""" )   # s = '&amp; &lt; &quot; &#x27; &gt;'

7 years agoMerge branch 'cdn-git-mirror' into 'master'
Torsten Grote [Wed, 17 May 2017 22:47:56 +0000 (22:47 +0000)]
Merge branch 'cdn-git-mirror' into 'master'

Fix double pushing on remote git-mirror

See merge request !272

7 years agofix double pushing on remote
thez3ro [Wed, 17 May 2017 21:08:25 +0000 (23:08 +0200)]
fix double pushing on remote

7 years agoMerge branch 'cdn-git-mirror' into 'master'
Hans-Christoph Steiner [Wed, 17 May 2017 20:29:33 +0000 (20:29 +0000)]
Merge branch 'cdn-git-mirror' into 'master'

Use Gitlab Pages as mirror instead of Raw

Closes #293

See merge request !271

7 years agoUse gitlab pages as mirror
thez3ro [Wed, 17 May 2017 18:37:49 +0000 (20:37 +0200)]
Use gitlab pages as mirror

7 years agoMerge branch 'hg39' into 'master'
Hans-Christoph Steiner [Wed, 10 May 2017 17:22:15 +0000 (17:22 +0000)]
Merge branch 'hg39' into 'master'

buildserver: use hg 3.9 from backports

See merge request !266

7 years agobuildserver: use hg 3.9 from backports
Boris Kraut [Wed, 10 May 2017 16:55:38 +0000 (18:55 +0200)]
buildserver: use hg 3.9 from backports