]> Untitled Git - public.git/blob - lua/publish.sh
Replaced old perl publish with web-accessible publish
[public.git] / lua / publish.sh
1 #!/bin/sh
2
3 # make sure public root and link dirs are declared
4 [[ -z "$PUBLIC_ROOT_DIR" ]] && echo Expected PUBLIC_ROOT_DIR && exit 1
5 [[ -z "$PUBLIC_LINK_DIR" ]] && echo Expected PUBLIC_LINK_DIR && exit 1
6
7 [[ -z "$1" ]] && echo Expected pattern && exit 1
8
9 # if pattern matches files from storage,
10 # create nonce directory
11 # create symlinks to matching files
12 nonce=$(head /dev/urandom | sha1sum -b | awk '{print $1}')
13 symlink_dir=$PUBLIC_LINK_DIR/$nonce
14
15 find $PUBLIC_ROOT_DIR -type f -name "*$1*" | while read fname
16 do
17     [[ -d $symlink_dir ]] || mkdir -p $symlink_dir
18     ln -s $fname $symlink_dir/$(echo $fname | sed 's|^.*/||')
19 done
20
21 # print nonce directory
22 echo $nonce