update
This commit is contained in:
82
src/shardmaster/mkclass.sh
Normal file
82
src/shardmaster/mkclass.sh
Normal file
@@ -0,0 +1,82 @@
|
||||
#!/bin/sh
|
||||
|
||||
#
|
||||
# create or update 6.824-golabs-YEAR
|
||||
#
|
||||
# if a directory has a file mkclass.ignore, ignore the files listed in that file
|
||||
|
||||
umask 2
|
||||
|
||||
# update this repository:
|
||||
CLASSREPO=git@g.csail.mit.edu:6.824-golabs-2021
|
||||
|
||||
# include only these src/ directories (e.g. not paxos)
|
||||
SRCS="mr mrapps main labrpc raft kvraft shardkv shardmaster labgob porcupine models"
|
||||
|
||||
SD=$(cd $(dirname $0)/.. && /bin/pwd)
|
||||
CD=/tmp/golabs.$$
|
||||
git clone $CLASSREPO $CD || exit 1
|
||||
|
||||
mkdir -p $CD/src/
|
||||
|
||||
cp $SD/mygo/Makefile $CD/Makefile
|
||||
(cd $CD/ && git add Makefile 2> /dev/null )
|
||||
|
||||
cp $SD/mygo/.check-build $CD/.check-build
|
||||
(cd $CD/ && git add .check-build 2> /dev/null )
|
||||
|
||||
cp $SD/mygo/.gitignore $CD/.gitignore
|
||||
(cd $CD/ && git add .gitignore 2> /dev/null )
|
||||
|
||||
cp $SD/mygo/src/.gitignore $CD/src/.gitignore || exit 1
|
||||
(cd $CD/src && git add .gitignore)
|
||||
|
||||
cp $SD/mygo/src/go.mod $CD/src/go.mod
|
||||
(cd $CD/ && git add src/go.mod 2> /dev/null )
|
||||
|
||||
cp $SD/mygo/src/go.sum $CD/src/go.sum
|
||||
(cd $CD/ && git add src/go.sum 2> /dev/null )
|
||||
|
||||
# for D in `(cd $SD/mygo/src ; ls)`
|
||||
for D in `echo $SRCS`
|
||||
do
|
||||
mkdir -p $CD/src/$D || exit 1
|
||||
(cd $SD/mygo/src/$D
|
||||
for F in `ls`
|
||||
do
|
||||
if [ -s mkclass.ignore ]
|
||||
then
|
||||
if grep -q $F mkclass.ignore
|
||||
then
|
||||
I=1
|
||||
else
|
||||
I=0
|
||||
fi
|
||||
else
|
||||
I=0
|
||||
fi
|
||||
if [ "$F" = "out" ]
|
||||
then
|
||||
I=1
|
||||
fi
|
||||
if [ "$F" = "mkclass.ignore" ]
|
||||
then
|
||||
I=1
|
||||
fi
|
||||
if echo $F | grep -q '~$'
|
||||
then
|
||||
I=1
|
||||
fi
|
||||
if [ $I -eq 1 ]
|
||||
then
|
||||
echo "ignore $F"
|
||||
else
|
||||
$SD/bin/mklab.pl $CD/src/$D $F
|
||||
(cd $CD/src/$D && git add $F 2> /dev/null )
|
||||
fi
|
||||
done)
|
||||
done
|
||||
|
||||
(cd $CD ; git commit -am 'update')
|
||||
|
||||
echo "Now, examine and push the repo in $CD"
|
||||
Reference in New Issue
Block a user