Changeset 14472 for trunk/base
- Timestamp:
- Oct 8, 2005, 5:40:18 AM (19 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/base/src/portmgr/IndexRegen.sh
r14470 r14472 1 1 #!/bin/bash 2 3 2 4 3 #### … … 10 9 #### 11 10 12 13 11 # Configuration 14 12 # ROOT directory, where everything is. This must exist. … … 19 17 DP_USER=paul 20 18 # DP group. 21 DP_GROUP= paul19 DP_GROUP=admin 22 20 # CVS user. 23 21 CVS_USER=pguyot 24 22 # e-mail address to spam in case of failure. 25 SPAM_LOVERS=p guyot@kallisys.net23 SPAM_LOVERS=portmgr@opendarwin.org 26 24 27 25 # Other settings (probably don't need to be changed). … … 64 62 echo "/usr/bin/ssh -i ${SSH_KEY} \$*" >> $SSH_WRAPPER 1 && \ 65 63 chmod +x $SSH_WRAPPER \ 66 || (echo "Creation of wrapper failed" ; exit 1)64 || { echo "Creation of wrapper failed" ; exit 1 ; } 67 65 fi 68 66 … … 72 70 cd ${TREE} && \ 73 71 CVS_RSH=${SSH_WRAPPER} cvs -q -d $CVS_ROOT co darwinports > $FAILURE_LOG 2>&1 \ 74 || (echo "CVS checkout failed" >> $FAILURE_LOG ; FAILED=1)72 || { echo "CVS checkout failed" >> $FAILURE_LOG ; FAILED=1 ; } 75 73 else 76 74 cd ${TREE}/${CVS_MODULE} && \ 77 75 CVS_RSH=${SSH_WRAPPER} cvs -q update -dP > $FAILURE_LOG 2>&1 \ 78 || (echo "CVS update failed" >> $FAILURE_LOG ; FAILED=1)76 || { echo "CVS update failed" >> $FAILURE_LOG ; FAILED=1 ; } 79 77 fi 80 78 81 79 # (re)configure. 82 if [ $ {FAILED}-eq 0 ]; then80 if [ $FAILED -eq 0 ]; then 83 81 cd ${TREE}/${CVS_MODULE}/base/ && \ 84 82 mkdir -p ${TCLPKG} && \ … … 88 86 --with-install-user=${DP_USER} \ 89 87 --with-install-group=${DP_GROUP} > $FAILURE_LOG 2>&1 \ 90 || (echo "./configure failed" >> $FAILURE_LOG ; FAILED=1)88 || { echo "./configure failed" >> $FAILURE_LOG ; FAILED=1 ; } 91 89 fi 92 90 93 # (re)build and (re)install94 if [ $ {FAILED}-eq 0 ]; then95 cd ${TREE}/${CVS_MODULE}/base/ && \96 (make && make install) > $FAILURE_LOG 2>&1\97 || (echo "make && make install failed" >> $FAILURE_LOG ; FAILED=1)91 # (re)build 92 if [ $FAILED -eq 0 ]; then 93 { cd ${TREE}/${CVS_MODULE}/base/ && \ 94 make > $FAILURE_LOG 2>&1 ; } \ 95 || { echo "make failed" >> $FAILURE_LOG ; FAILED=1 ; } 98 96 fi 99 97 100 # re-index 101 if [ ${FAILED} -eq 0 ]; then 102 cd ${TREE}/${CVS_MODULE}/dports/ && \ 103 ${PREFIX}/bin/portindex | tee ${PORTINDEX_LOG} | \ 104 grep -A2 Failed > ${COMMIT_MSG} \ 105 || (cat ${PORTINDEX_LOG} > $FAILURE_LOG; \ 106 echo "portindex failed" >> $FAILURE_LOG; FAILED=1) 98 # (re)install 99 if [ $FAILED -eq 0 ]; then 100 { cd ${TREE}/${CVS_MODULE}/base/ && \ 101 make install > $FAILURE_LOG 2>&1 ; } \ 102 || { echo "make install failed" >> $FAILURE_LOG ; FAILED=1 ; } 107 103 fi 108 104 109 # commit the file. 110 # (COMMIT_MSG contains the list of ports that failed (from grep -A2 Failed)) 111 if [ ${FAILED} -eq 0 ]; then 112 # Append the last 5 lines of the log. 113 tail -n 5 ${PORTINDEX_LOG} >> ${COMMIT_MSG} 105 # (re)index 106 if [ $FAILED -eq 0 ]; then 107 { cd ${TREE}/${CVS_MODULE}/dports/ && \ 108 ${PREFIX}/bin/portindex | tee $PORTINDEX_LOG > $FAILURE_LOG 2>&1 ; } \ 109 || { echo "portindex failed" >> $FAILURE_LOG ; FAILED=1 ; } 110 fi 111 112 # check all ports were indexed. 113 if [ $FAILED -eq 0 ]; then 114 grep Failed $FAILURE_LOG \ 115 && { echo "some ports couldn\'t be indexed" >> $FAILURE_LOG ; FAILED=1 ; } 116 fi 117 118 # commit the file if and only if all ports were successfully indexed. 119 if [ $FAILED -eq 0 ]; then 120 # Use the last 5 lines of the log for the commit message. 121 tail -n 5 $PORTINDEX_LOG > $COMMIT_MSG 114 122 115 # Commit the file.116 cd ${TREE}/${CVS_MODULE}/dports/ && \117 cvs commit PortIndex -F ${COMMIT_MSG} > $FAILURE_LOG 2>&1\118 || (echo "cvs commit failed" >> $FAILURE_LOG ; FAILED=1)123 # Actually commit the file. 124 { cd ${TREE}/${CVS_MODULE}/dports/ && \ 125 cvs commit -F $COMMIT_MSG PortIndex > $FAILURE_LOG 2>&1 ; } \ 126 || { echo "cvs commit failed" >> $FAILURE_LOG ; FAILED=1 ; } 119 127 fi 120 128 121 129 # spam if something went wrong. 122 if [ ${FAILED} -eq 1 ]; then 123 # mail -s "AutoIndex Failure on ${DATE}" ${SPAM_LOVERS} < $FAILURE_LOG 124 cat $FAILURE_LOG 130 if [ $FAILED -ne 0 ]; then 131 mail -s "AutoIndex Failure on ${DATE}" $SPAM_LOVERS < $FAILURE_LOG 132 else 133 # trash log files 134 rm -f $PORTINDEX_LOG $COMMIT_MSG $FAILURE_LOG 125 135 fi 126 136 127 # trash log files128 rm -f ${PORTINDEX_LOG} ${COMMIT_MSG} $FAILURE_LOG
Note: See TracChangeset
for help on using the changeset viewer.