1
0
mirror of https://gitlab.com/fdroid/fdroidserver.git synced 2024-10-02 09:10:11 +02:00

buildserver: make sure cachedir is accessible to VM instance

It seems that KVM/QEMU's 9p sharing is more sensitive to file perms.  If
~/.cache is 0700, then ~/.cache/fdroidserver cannot be mounted in the guest
This commit is contained in:
Hans-Christoph Steiner 2016-09-06 14:22:29 +02:00
parent 0ae2df6646
commit f306e32636

View File

@ -2,6 +2,7 @@
import os
import requests
import stat
import sys
import subprocess
import time
@ -89,6 +90,15 @@ cachedir = config['cachedir']
if not os.path.exists(cachedir):
os.makedirs(cachedir, 0o755)
tmp = cachedir
while tmp != '/':
mode = os.stat(tmp).st_mode
if not (stat.S_IXUSR & mode and stat.S_IXGRP & mode and stat.S_IXOTH & mode):
print('ERROR:', tmp, 'will not be accessible to the VM! To fix, run:')
print(' chmod a+X', tmp)
sys.exit(1)
tmp = os.path.dirname(tmp)
if config['apt_package_cache']:
config['aptcachedir'] = cachedir + '/apt/archives'