2 ################################################################################
5 # Description: Copies files to the release area
6 # Author: Andrew@DeFaria.com
7 # Created: Thu Dec 13 19:11:15 2001
9 # Modifications:07/09/2003: AD: Added sequential option so as to perform the
10 # copying sequentially.
11 # 07/23/2003: AD: Added check on release number
13 # (c) Copyright 2001, Andrew@DeFaria.com, all rights reserved
15 ################################################################################
16 # Set me to command name
19 # Source /etc/site_parms
20 if [ -f /etc/site_parms ]; then
23 echo "$me: WARNING: /etc/site_parms does not exist!"
27 adm_base="$SITE_TOOLS_PATH/adm"
30 adm_fpath=${adm_fpath:-$adm_base/functions}
35 # Get cards definition
36 . $SITE_TOOLS_PATH/adm/etc/cards
39 if [ ! -z "$1" ]; then
40 display -e "$me: Error: $1\n"
42 display "Usage: $me: [-v|erbose} [-d|ebug] [-c|reate] [-view <view_path>]"
43 display "\t\t[-s|equential] [-o|verwrite] [-n|ocheck] -r|elease <release>"
47 display "\t-verbose\tCauses verbose output"
48 display "\t-debug\t\tCauses debug output"
49 display "\t-create\t\tWill create release areas if they didn't exist"
50 display "\t-view\t\tSpecify alternate path to view to get images from"
51 display "\t\t\t(Default: Current directory)"
52 display "\t-sequential\tPerform copying sequentially (Default: off)"
53 display "\t-overwrite\tOverwrite old files (default don't overwrite)"
54 display "\t-nocheck\tDo not check that the release string is in the"
55 display "\t\t\tsuperfile (default check)"
56 display "\t-release\tRelease area name (Required)"
65 if [ $overwrite = "no" ]; then
66 filedate=$(ls -l "$to" | awk '{printf "%s-%s-%s", $7, $8, $9}' | tr ":" ".")
67 verbose "Saving previous file as $to.$filedate"
68 nice mv "$to" "$to".$filedate
86 while [ $# -ge 1 ]; do
94 usage "Release ID not specified!"
109 if [ $# -le 1 ]; then
110 usage "View not specified!"
113 viewarea="$1/salira/neopon/build"
133 usage "Unknown parameter encountered: \"$1\""
140 if [ -z "$release" ]; then
141 usage "Release not specified!"
147 if [ $check = "yes" ]; then
148 # Check release string is correct
150 for card in $cards; do
151 if [ -f "$card.sf" ]; then
156 release_string=$(dumpsf -f $card.sf | grep "Build Version:" | awk '{print $NF}')
157 if [ "$release_string" != "$release" ]; then
158 error "Release specified ($release) does not match release in superfile ($release_string)" 2
163 for site_release_server in $SITE_RELEASE_SERVER; do
164 site_release_server[$i]=$site_release_server
170 for site_release_path in $SITE_RELEASE_PATH; do
171 site_release_path[$i]=$site_release_path
176 while [[ ! -z ${site_release_server[$i]} ]]; do
177 if [ $i -eq 1 ]; then
178 release_areas="//${site_release_server[$i]}/${site_release_path[$i]}/$release"
180 release_areas="$release_areas //${site_release_server[$i]}/${site_release_path[$i]}/$release"
185 for area in $release_areas; do
186 if [ ! -d "$area" ]; then
187 if [ "$create" = "yes" ]; then
189 verbose "Created release area $area"
191 warning "$area does not exist!" 2
193 echo -e "Would you like to create this area? (y/n): \c"
196 answer=$(echo $answer | tr [:upper:] [:lower:])
198 if [ "$answer" = "y" ]; then
201 if [ $? -ne 0 ]; then
202 error "Unable to create area: $area"
205 display "Area not created!"
212 for area in $release_areas; do
213 for card in $cards; do
214 # Check to see if card's build directory is present
215 if [ "$card" = "scc" ]; then
221 if [ -d "$viewarea/$card_dirname" ]; then
223 if [ ! -f "$viewarea/$card.build.log" ]; then
224 warning "No build log found for card $card! - Skipping"
226 verbose "Copying $card.build.log to $area/$card.build.log"
227 debug "Executing: \"$viewarea/$card.build.log\" \"$area/$card.build.log\" $background"
228 copyfile "$viewarea/$card.build.log" "$area/$card.build.log" $background
229 debug "Executed: \"$viewarea/$card.build.log\" \"$area/$card.build.log\" $background"
233 if [ ! -f "$viewarea/$card.sf" ]; then
234 warning "No superfile found for card $card! - Skipping"
236 verbose "Copying $card.sf to $area/$card.sf"
237 debug "Executing: \"$viewarea/$card.sf\" \"$area/$card.sf\" $background"
238 copyfile "$viewarea/$card.sf" "$area/$card.sf" $background
239 debug "Executed: \"$viewarea/$card.sf\" \"$area/$card.sf\" $background"
242 # Copy elf files and map files
243 if [ ! -f $viewarea/$card_dirname/vxWorks_st.elf ]; then
244 warning "No image for $card found! - Skipping"
246 verbose "Copying $card image to $area/$card.[elf|map]"
247 debug "Executing: \"$viewarea/$card_dirname/vxWorks_st.elf\" \"$area/$card.elf\" $background"
248 copyfile "$viewarea/$card_dirname/vxWorks_st.elf" "$area/$card.elf" $background
249 debug "Executed: \"$viewarea/$card_dirname/vxWorks_st.elf\" \"$area/$card.elf\" $background"
250 debug "Executing: \"$viewarea/$card_dirname/vxWorks_st.map\" \"$area/$card.map\" $background"
251 copyfile "$viewarea/$card_dirname/vxWorks_st.map" "$area/$card.map" $background
252 debug "Executed: \"$viewarea/$card_dirname/vxWorks_st.map\" \"$area/$card.map\" $background"
258 if [ "$sequenctial" = "&" ]; then
259 echo -n "Waiting for copying to complete... "