8 tagForVersion=v${version}
10 ###############################################################################
12 declare -a repositories=(
13 "simantics/third-party.git" "third-party"
14 "simantics/platform.git" "platform"
15 "simantics/fmil.git" "fmil"
16 "simantics/interop.git" "interop"
17 "simantics/district.git" "district"
18 "simantics/matlab.git" "matlab"
19 "simantics/python.git" "python"
21 "simantics/sysdyn.git" "sysdyn"
22 "simantics/3d.git" "3d"
23 "members/fmi.git" "fmi"
24 "members/simupedia.git" "simupedia"
27 repositoryCount=$((${#repositories[@]} / 2))
30 eval $1=\${repositories[$(($2 * 2))]}
34 eval $1=\${repositories[$(($2 * 2 + 1))]}
37 ###############################################################################
40 echo "[$(($1+1))/${repositoryCount}] $2"
44 echo "git clone ssh://${user}@www.simantics.org:29418/$1"
45 git clone ssh://${user}@www.simantics.org:29418/$1
54 echo "git fetch --all"
64 echo "git push origin $1"
69 echo "git checkout $1"
74 echo "git tag $1 -m \"Simantics $1 simultaneous release\""
75 git tag $1 -m "Simantics $1 simultaneous release"
84 echo "git push origin --tags"
85 git push origin --tags
96 function listBranches {
100 ###############################################################################
105 pushd $version > /dev/null
106 for (( i=0; i<${repositoryCount}; i++ )); do
116 pushd $version > /dev/null
119 for (( i=0; i<${repositoryCount}; i++ )); do
121 msg $i "Create $branch branch in $lp"
122 pushd $lp > /dev/null
128 for (( i=0; i<${repositoryCount}; i++ )); do
130 msg $i "Checkout $branch branch in $lp"
131 pushd $lp > /dev/null
137 for (( i=0; i<${repositoryCount}; i++ )); do
139 msg $i "Tag ${version} for $lp"
140 pushd $lp > /dev/null
147 for (( i=0; i<${repositoryCount}; i++ )); do
149 msg $i "List branches in $lp"
150 pushd $lp > /dev/null
156 for (( i=0; i<${repositoryCount}; i++ )); do
158 msg $i "List tags in $lp"
159 pushd $lp > /dev/null
165 for (( i=0; i<${repositoryCount}; i++ )); do
167 msg $i "Remove tag $tagForVersion from $lp"
168 pushd $lp > /dev/null
169 removeTag ${tagForVersion}
174 for (( i=0; i<${repositoryCount}; i++ )); do
176 msg $i "Fetch from remote origin in $lp"
177 pushd $lp > /dev/null
183 for (( i=0; i<${repositoryCount}; i++ )); do
185 msg $i "Pull from remote origin in $lp"
186 pushd $lp > /dev/null
192 for (( i=0; i<${repositoryCount}; i++ )); do
194 msg $i "Push branch $branch to remote origin in $lp"
195 pushd $lp > /dev/null
201 for (( i=0; i<${repositoryCount}; i++ )); do
203 msg $i "Push tags to remote origin in $lp"
204 pushd $lp > /dev/null
210 for (( i=0; i<${repositoryCount}; i++ )); do
212 msg $i "Status of $lp"
213 pushd $lp > /dev/null
219 echo "Usage: ${self} <version> <branch-name> <user-name> clone|branch|checkout|fetch|list-tags|pull|push|push-tags|remove-tag|status|tag"