s4-devel: useful script for testing join with empty smb.conf
[sfrench/samba-autobuild/.git] / source4 / scripting / devel / config_base
1 #!/usr/bin/env python
2
3 # this is useful for running samba tools with a different prefix
4
5 # for example:
6 # samba-tool $(scripting/devel/config_base /tmp/testprefix) join .....
7
8 import sys, os
9
10 vars = {
11     "dns update command" : "${PREFIX}/bin/samba_dnsupdate",
12     "spn update command" : "${PREFIX}/bin/samba_spnupdate",
13     "ncalrpc dir" : "${PREFIX}/var/ncalrpc",
14     "private dir" : "${PREFIX}/private",
15     "lock dir" : "${PREFIX}/var/locks",
16     "pid directory" : "${PREFIX}/var/run",
17     "winbindd socket directory" : "${PREFIX}/var/run/winbindd",
18     "winbindd privileged socket directory" : "${PREFIX}/var/lib/winbindd_privileged",
19     "ntp signd socket directory" : "${PREFIX}/var/run/ntp_signd"
20 }
21
22 if len(sys.argv) != 2:
23     print("Usage: config_base BASEDIRECTORY")
24     sys.exit(1)
25
26 prefix = sys.argv[1]
27
28 config_dir  = prefix + "/etc"
29 config_file = config_dir + "/smb.conf"
30
31 if not os.path.isdir(config_dir):
32     os.makedirs(config_dir, mode=0755)
33 if not os.path.isfile(config_file):
34     open(config_file, mode='w').close()
35
36 options = " --configfile=${PREFIX}/etc/smb.conf"
37
38 for v in vars:
39     options += " --option=%s=%s" % (v.replace(" ",""), vars[v])
40
41 options = options.replace("${PREFIX}", prefix)
42
43 print options