Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
M
mariadb
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
mariadb
Commits
df22808b
Commit
df22808b
authored
Feb 22, 2005
by
joreland@mysql.com
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
wl1292 - ndb autotest scripts
split into script/conf for easier deployment
parent
52e904c2
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
236 additions
and
0 deletions
+236
-0
ndb/test/run-test/example.conf
ndb/test/run-test/example.conf
+10
-0
ndb/test/run-test/ndb-autotest.sh
ndb/test/run-test/ndb-autotest.sh
+226
-0
No files found.
ndb/test/run-test/example.conf
0 → 100644
View file @
df22808b
target
=
pc
-
linux
-
i686
base_dir
=/
ndb
src_clone_base
=
mysqldev
@
bk
-
internal
.
mysql
.
com
:/
home
/
bk
/
mysql
run_dir
=/
space
/
autotest
build_dir
=/
ndb
hosts
=
"ndb01 ndb02 ndb03 ndb04 ndb05 ndb06 ndb07 ndb08 ndb09 ndb10 ndb11 ndb12"
result_host
=
"ndb.mysql.com"
result_path
=
"public_html"
configure
=
'CC=gcc CXX=gcc CFLAGS="-Wall -pedantic -Wno-long-long" CXXFLAGS="-Wall -pedantic -Wno-long-long" ./configure --with-ndbcluster --with-ndb-test --with-ndbcc-flags="-g -DERROR_INSERT"'
ndb/test/run-test/ndb-autotest.sh
0 → 100755
View file @
df22808b
#!/bin/sh
save_args
=
$*
VERSION
=
"ndb-autotest.sh version 1.0"
DATE
=
`
date
'+%Y-%m-%d'
`
export
DATE
set
-e
ulimit
-Sc
unlimited
echo
"
`
date
`
starting:
$*
"
RSYNC_RSH
=
ssh
export
RSYNC_RSH
do_clone
=
yes
build
=
yes
deploy
=
yes
clone
=
5.0-ndb
RUN
=
"daily-basic daily-devel"
conf
=
autotest.conf
while
[
"
$1
"
]
do
case
"
$1
"
in
--no-clone
)
do_clone
=
""
;;
--no-build
)
build
=
""
;;
--no-deploy
)
deploy
=
""
;;
--clone
=
*
)
clone
=
`
echo
$1
|
sed
s/--clone
=
//
`
;;
--conf
=
*
)
conf
=
`
echo
$1
|
sed
s/--conf
=
//
`
;;
--version
)
echo
$VERSION
;
exit
;;
*
)
RUN
=
$*
;;
esac
shift
done
if
[
-f
$conf
]
then
.
$conf
else
echo
"Can't find config file:
$conf
"
exit
fi
env
LOCK
=
$HOME
/.autotest-lock
src_clone
=
$src_clone_base
-
$clone
if
[
-f
$LOCK
]
then
echo
"Lock file exists:
$LOCK
"
exit
1
fi
echo
"
$DATE
$RUN
"
>
$LOCK
trap
"rm -f
$LOCK
"
ERR
dst_place
=
${
build_dir
}
/clone-mysql-
$clone
-
$DATE
if
[
"
$do_clone
"
]
then
rm
-rf
$dst_place
bk clone
$src_clone
$dst_place
fi
if
[
"
$build
"
]
then
cd
$dst_place
rm
-rf
$run_dir
/
*
aclocal
;
autoheader
;
autoconf
;
automake
(
cd
innobase
;
aclocal
;
autoheader
;
autoconf
;
automake
)
(
cd
bdb/dist
;
sh s_all
)
eval
$configure
--prefix
=
$run_dir
make
make
install
fi
###
# check script version
#
script
=
$run_dir
/mysql-test/ndb/ndb-autotest.sh
if
[
-x
$script
]
then
$script
--version
>
/tmp/version.
$$
else
echo
$VERSION
>
/tmp/version.
$$
fi
match
=
`
grep
-c
"
$VERSION
"
/tmp/version.
$$
`
rm
-f
/tmp/version.
$$
if
[
$match
-eq
0
]
then
echo
"Incorrect script version...restarting"
cp
$run_dir
/mysql-test/ndb/ndb-autotest.sh /tmp/at.
$$
.sh
rm
-rf
$run_dir
$dst_place
sh /tmp/at.
$$
.sh
$save_args
exit
fi
# Check that all interesting files are present
test_dir
=
$run_dir
/mysql-test/ndb
atrt
=
$test_dir
/atrt
html
=
$test_dir
/make-html-reports.sh
PATH
=
$test_dir
:
$PATH
export
PATH
filter
(){
neg
=
$1
shift
while
[
$#
-gt
0
]
do
if
[
`
grep
-c
$1
$neg
`
-eq
0
]
;
then
echo
$1
;
fi
shift
done
}
###
# check ndb_cpcc fail hosts
#
ndb_cpcc
$hosts
|
awk
'{ if($1=="Failed"){ print;}}'
>
/tmp/failed.
$DATE
filter /tmp/failed.
$DATE
$hosts
>
/tmp/hosts.
$DATE
hosts
=
`
cat
/tmp/hosts.
$DATE
`
if
[
"
$deploy
"
]
then
(
cd
/
&&
tar
cfz /tmp/build.
$DATE
.tgz
$run_dir
)
for
i
in
$hosts
do
ok
=
0
scp /tmp/build.
$DATE
.tgz
$i
:/tmp/build.
$DATE
.
$$
.tgz
&&
\
ssh
$i
"rm -rf /space/autotest/*"
&&
\
ssh
$i
"cd / && tar xfz /tmp/build.
$DATE
.
$$
.tgz"
&&
\
ssh
$i
"rm /tmp/build.
$DATE
.
$$
.tgz"
&&
ok
=
1
if
[
$ok
-eq
0
]
then
echo
"
$i
failed during scp/ssh, excluding"
echo
$i
>>
/tmp/failed.
$DATE
fi
done
fi
rm
-f
/tmp/build.
$DATE
.tgz
###
# handle scp failed hosts
#
filter /tmp/failed.
$DATE
$hosts
>
/tmp/hosts.
$DATE
hosts
=
`
cat
/tmp/hosts.
$DATE
`
cat
/tmp/failed.
$DATE
>
/tmp/filter_hosts.
$$
###
# functions for running atrt
#
choose
(){
SRC
=
$1
TMP1
=
/tmp/choose.
$$
TMP2
=
/tmp/choose.
$$
.
$$
shift
cp
$SRC
$TMP1
i
=
1
while
[
$#
-gt
0
]
do
sed
-e
s,
"CHOOSE_host
$i
"
,
$1
,g <
$TMP1
>
$TMP2
mv
$TMP2
$TMP1
shift
i
=
`
expr
$i
+ 1
`
done
cat
$TMP1
rm
-f
$TMP1
}
start
(){
rm
-rf
report.txt result
*
log.txt
$atrt
-v
-v
-r
-R
--log-file
=
log.txt
--testcase-file
=
$test_dir
/
$2
-tests
.txt &
pid
=
$!
echo
$pid
>
run.pid
wait
$pid
rm
run.pid
[
-f
log.txt
]
&&
mv
log.txt
$3
[
-f
report.txt
]
&&
mv
report.txt
$3
[
"
`
find
.
-name
'result*'
`
"
]
&&
mv
result
*
$3
cd
$3
sh
$html
.
$1
$DATE
cd
../..
tar
cvz /tmp/res.
$$
.tgz
`
basename
$3
`
/
$DATE
scp /tmp/res.
$$
.tgz
$result_host
:
$result_path
ssh
$result_host
"cd
$result_path
&& tar xfz res.
$$
.tgz && rm -f res.
$$
.tgz"
rm
-f
/tmp/res.
$$
.tgz
}
p
=
`
pwd
`
for
dir
in
$RUN
do
echo
"Fixing hosts for
$dir
"
run_dir
=
$base_dir
/run-
$dir
-mysql-
$clone
-
$target
res_dir
=
$base_dir
/result-
$dir
-mysql-
$clone
-
$target
/
$DATE
mkdir
-p
$res_dir
rm
-rf
$res_dir
/
*
count
=
`
grep
-c
"COMPUTER"
$run_dir
/1.ndb_mgmd/initconfig.template
`
avail_hosts
=
`
filter /tmp/filter_hosts.
$$
$hosts
`
avail
=
`
echo
$avail_hosts
|
wc
-w
`
if
[
$count
-gt
$avail
]
then
echo
"Not enough hosts"
echo
"Needs:
$count
available:
$avail
(
$avail_hosts
)"
break
;
fi
run_hosts
=
`
echo
$avail_hosts
|
awk
'{for(i=1;i<='
$count
';i++)print $i;}'
`
choose
$run_dir
/d.template
$run_hosts
>
$run_dir
/d.txt
choose
$run_dir
/1.ndb_mgmd/initconfig.template
$run_hosts
>
$run_dir
/1.ndb_mgmd/config.ini
echo
$run_hosts
>>
/tmp/filter_hosts.
$$
cd
$run_dir
start
$dir
-mysql-
$clone
-
$target
$dir
$res_dir
&
done
cd
$p
rm
/tmp/filter_hosts.
$$
wait
rm
-f
$LOCK
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment