-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathadmin_scripts_setup
31 lines (28 loc) · 2.05 KB
/
admin_scripts_setup
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#!/bin/bash
SUBMITTY_INSTALL_DIR=/usr/local/submitty
SUBMITTY_DATA_DIR=/var/local/submitty
SUBMITTY_REPOSITORY=/usr/local/submitty/GIT_CHECKOUT/Submitty
# Copy account maintenance scripts unless they exist
mkdir -p ${SUBMITTY_INSTALL_DIR}/bin
mkdir -p /root/bin
mkdir -p ${SUBMITTY_DATA_DIR}/instructors
mkdir -p ${SUBMITTY_DATA_DIR}/bin
touch ${SUBMITTY_DATA_DIR}/instructors/authlist
touch ${SUBMITTY_DATA_DIR}/instructors/svnlist
touch ${SUBMITTY_DATA_DIR}/instructors/valid
[ ! -f ${SUBMITTY_DATA_DIR}/bin/authonly.pl ] && cp ${SUBMITTY_REPOSITORY}/Docs/sample_bin/authonly.pl ${SUBMITTY_DATA_DIR}/bin/authonly.pl
[ ! -f ${SUBMITTY_DATA_DIR}/bin/new.svnuser.pl ] && cp ${SUBMITTY_REPOSITORY}/Docs/sample_bin/new.svnuser.pl ${SUBMITTY_DATA_DIR}/bin/new.svnuser.pl
[ ! -f ${SUBMITTY_DATA_DIR}/bin/validate.auth.pl ] && cp ${SUBMITTY_REPOSITORY}/Docs/sample_bin/validate.auth.pl ${SUBMITTY_DATA_DIR}/bin/validate.auth.pl
[ ! -f ${SUBMITTY_DATA_DIR}/bin/validate.svn.pl ] && cp ${SUBMITTY_REPOSITORY}/Docs/sample_bin/validate.svn.pl ${SUBMITTY_DATA_DIR}/bin/validate.svn.pl
[ ! -f /root/bin/top.txt ] && cp ${SUBMITTY_REPOSITORY}/Docs/sample_bin/top.txt /root/bin/top.txt
[ ! -f /root/bin/bottom.txt ] && cp ${SUBMITTY_REPOSITORY}/Docs/sample_bin/bottom.txt /root/bin/bottom.txt
[ ! -f /root/bin/gen.middle ] && cp ${SUBMITTY_REPOSITORY}/Docs/sample_bin/gen.middle /root/bin/gen.middle
[ ! -f /root/bin/regen.apache ] && cp ${SUBMITTY_REPOSITORY}/Docs/sample_bin/regen.apache /root/bin/regen.apache
chgrp course_builders /root/bin/top.txt /root/bin/bottom.txt /root/bin/gen.middle /root/bin/regen.apache /var/local/submitty/instructors/authlist /var/local/submitty/instructors/svnlist /var/local/submitty/instructors/valid
chmod 750 /root/bin/gen.middle /root/bin/regen.apache
chmod 660 ${SUBMITTY_DATA_DIR}/instructors/authlist ${SUBMITTY_DATA_DIR}/instructors/svnlist
chmod 640 ${SUBMITTY_DATA_DIR}/instructors/valid
# Prepare subversion
[ ! -f /etc/init.d/svnserve ] && cp ${SUBMITTY_REPOSITORY}/Docs/sample_svnserve /etc/init.d/svnserve
chmod +x /etc/init.d/svnserve
update-rc.d svnserve defaults