chiark / gitweb /
copyright notices and licences
[rrd-graphs.git] / cgi-invoke
1 #!/bin/sh
2 #
3 # CGI program as provided to webserver
4 # Takes out the lock, makes the cache directory if necessary.
5 # Rather chiark-specific.  You might replace with-lock-ex with flock(1).
6
7 # rrd-graphs/cgi-invoke - part of rrd-graphs, a tool for online graphs
8 # Copyright 2010, 2012 Ian Jackson
9 #
10 # This program is free software: you can redistribute it and/or modify
11 # it under the terms of the GNU Affero General Public License as
12 # published by the Free Software Foundation, either version 3 of the
13 # License, or (at your option) any later version.
14 #
15 # This program is distributed in the hope that it will be useful,
16 # but WITHOUT ANY WARRANTY; without even the implied warranty of
17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18 # GNU Affero General Public License for more details.
19 #
20 # You should have received a copy of the GNU Affero General Public License
21 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
22
23 set -e
24 exec with-lock-ex -w data/graph-lock sh -ec '
25         if ! test -d cache; then
26                 quicksand-setup ||:
27                 if ! test -d $GRAPH_CGI_CACHE; then mkdir $GRAPH_CGI_CACHE; fi
28                 rm -f cache
29                 ln -s $GRAPH_CGI_CACHE cache
30         fi
31         exec ./cgi "$@"
32 ' x "$@"