From: Hans-Christoph Steiner Date: Thu, 21 Jan 2016 13:09:12 +0000 (+0100) Subject: makebuildserver: cache defaults to ~/.cache/fdroidserver X-Git-Tag: 0.6.0~28^2~1 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?a=commitdiff_plain;h=cda8fa00f56068bac49276bbecf9064337125189;hp=3bd8ef2c8c49fd77108d8d3885fd6e66e4a38e73;p=fdroidserver.git makebuildserver: cache defaults to ~/.cache/fdroidserver This also provides a config option to override that default. ~/.cache is a standard location on GNU/Linux machines for cached content. It is also good to have the cache outside of the git repo in case `git clean -fdx` is run, which would delete all files in the directory that are not part of the git repo, including buildserver/cache/ --- diff --git a/examples/makebuildserver.config.py b/examples/makebuildserver.config.py index 9795bf76..1d4bd0d3 100644 --- a/examples/makebuildserver.config.py +++ b/examples/makebuildserver.config.py @@ -14,6 +14,13 @@ # or if you have a cached local copy, you can use that first: # baseboxurl = ["file:///home/fdroid/fdroidserver/cache/jessie32.box", "https://f-droid.org/jessie32.box"] +# In the process of setting up the build server, many gigs of files +# are downloaded (Android SDK components, gradle, etc). These are +# cached so that they are not redownloaded each time. By default, +# these are stored in ~/.cache/fdroidserver +# +# cachedir = 'buildserver/cache' + # To specify which Debian mirror the build server VM should use, by # default it uses http.debian.net, which auto-detects which is the # best mirror to use. diff --git a/makebuildserver b/makebuildserver index ebd998b2..f745b0a3 100755 --- a/makebuildserver +++ b/makebuildserver @@ -50,6 +50,7 @@ config = { 'arch64': False, 'basebox': 'jessie32', 'baseboxurl': 'https://f-droid.org/jessie32.box', + 'cachedir': os.path.join(os.getenv('HOME'), '.cache', 'fdroidserver'), 'cpus': 1, 'memory': 3584, } @@ -72,9 +73,9 @@ if options.clean: vagrant(['destroy', '-f'], cwd=serverdir, printout=options.verbose) # Update cached files. -cachedir = os.path.join('buildserver', 'cache') +cachedir = config['cachedir'] if not os.path.exists(cachedir): - os.mkdir(cachedir) + os.makedirs(cachedir, 0755) cachefiles = [ ('android-sdk_r24.4.1-linux.tgz',