Mercurial > dottes
annotate makeWebItems.sh @ 48:6f4667d1372d
Try to make web item updates atomic-ish.
The Jenkins workspace is exported as the web site. So when updating files
that take time, such as making MP3, create to a temp file and rename into place.
author | Jim Hague <jim.hague@laicatc.com> |
---|---|
date | Sun, 04 Mar 2012 16:09:06 +0000 |
parents | d92717f8130c |
children | 3464d5154f49 |
rev | line source |
---|---|
43
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
1 #!/bin/bash |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
2 # |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
3 # Make items required for the website but not for the book. |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
4 # They go into web/<book>. |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
5 # |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
6 |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
7 if [ $# != 1 ]; then |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
8 echo "Usage: makeWebItems.sh <book dir name>" |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
9 exit 1 |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
10 fi |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
11 |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
12 dir=`pwd` |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
13 |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
14 booke=$dir/$1 |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
15 builddir=$dir/web/$1 |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
16 graphicsdir=$dir/graphics/$1 |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
17 |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
18 mkdir -p $builddir |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
19 |
48
6f4667d1372d
Try to make web item updates atomic-ish.
Jim Hague <jim.hague@laicatc.com>
parents:
43
diff
changeset
|
20 # Now, for each tune, make the tune JPG and sound. Do this to temp |
6f4667d1372d
Try to make web item updates atomic-ish.
Jim Hague <jim.hague@laicatc.com>
parents:
43
diff
changeset
|
21 # files and rename into place to make updates as atomic as possible. |
43
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
22 find $booke -name "*.abc" | sort | |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
23 while read filename |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
24 do |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
25 name=`basename $filename .abc` |
48
6f4667d1372d
Try to make web item updates atomic-ish.
Jim Hague <jim.hague@laicatc.com>
parents:
43
diff
changeset
|
26 convert $graphicsdir/${name}.eps $builddir/${name}.jpg.tmp |
43
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
27 |
48
6f4667d1372d
Try to make web item updates atomic-ish.
Jim Hague <jim.hague@laicatc.com>
parents:
43
diff
changeset
|
28 abc2midi $filename -o $builddir/${name}.mid.tmp |
6f4667d1372d
Try to make web item updates atomic-ish.
Jim Hague <jim.hague@laicatc.com>
parents:
43
diff
changeset
|
29 timidity -Ow -o $builddir/${name}.wav.tmp $builddir/${name}.mid.tmp |
6f4667d1372d
Try to make web item updates atomic-ish.
Jim Hague <jim.hague@laicatc.com>
parents:
43
diff
changeset
|
30 lame --quiet $builddir/${name}.wav.tmp $builddir/${name}.mp3.tmp |
6f4667d1372d
Try to make web item updates atomic-ish.
Jim Hague <jim.hague@laicatc.com>
parents:
43
diff
changeset
|
31 |
6f4667d1372d
Try to make web item updates atomic-ish.
Jim Hague <jim.hague@laicatc.com>
parents:
43
diff
changeset
|
32 mv $builddir/${name}.jpg.tmp $builddir/${name}.jpg |
6f4667d1372d
Try to make web item updates atomic-ish.
Jim Hague <jim.hague@laicatc.com>
parents:
43
diff
changeset
|
33 mv $builddir/${name}.mid.tmp $builddir/${name}.mid |
6f4667d1372d
Try to make web item updates atomic-ish.
Jim Hague <jim.hague@laicatc.com>
parents:
43
diff
changeset
|
34 mv $builddir/${name}.mp3.tmp $builddir/${name}.mp3 |
6f4667d1372d
Try to make web item updates atomic-ish.
Jim Hague <jim.hague@laicatc.com>
parents:
43
diff
changeset
|
35 rm $builddir/${name}.wav.tmp |
43
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
36 done |
d92717f8130c
First go at producing a very simple website.
Jim Hague <jim.hague@laicatc.com>
parents:
diff
changeset
|
37 |