Skip to content
GitLab
Explore
Sign in
Primary navigation
Search or go to…
Project
G
GoikLectures
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Requirements
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Locked files
Deploy
Releases
Container Registry
Model registry
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
Repository analytics
Code review analytics
Issue analytics
Insights
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Terms and privacy
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Goik Martin
GoikLectures
Commits
bd41294f
Commit
bd41294f
authored
5 years ago
by
Goik Martin
Browse files
Options
Downloads
Patches
Plain Diff
Processing multiple .zip archive arguments
parent
0b4d77e4
No related branches found
Branches containing commit
No related tags found
No related merge requests found
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
AuswertungKlausur/noten.sh
+68
-58
68 additions, 58 deletions
AuswertungKlausur/noten.sh
with
68 additions
and
58 deletions
AuswertungKlausur/noten.sh
+
68
−
58
View file @
bd41294f
...
...
@@ -10,72 +10,82 @@ SRCREPRESENT=src/main/java/de/hdm_stuttgart/mi/sd1/task2/ChangeAmount.java
TESTJAR
=
sd1_2019summer_exam-0.9-fat-tests.jar
# Strings like e.g. "Aufgabe 2" referencing "Aufgabe 2: (30/50)"
declare
-a
MARKERS
=(
"
Aufgabe 1"
"Aufgabe
2"
)
declare
-a
MARKERS
=(
"
Task 1"
"Task
2"
)
# Hands off beyond this line
#--------------------------------------------------------------------------------------------
zip
=
$1
fbname
=
$(
basename
"
$zip
"
.zip
)
evaluateProject
()
{
zip
=
$1
fbname
=
$(
basename
"
$zip
"
.zip
)
rm
-rf
/tmp/Reference
cp
-r
$PROJECTREF
/tmp/Reference
pushd
/tmp/Reference 1> /dev/null
mvn
-T4
clean
>
/dev/null 2>&1
rm
-rf
src/main/java
popd
1> /dev/null
mkdir
Unpack
;
pushd
Unpack 1> /dev/null
unzip ../
$fbname
.zip
>
/dev/null
pomFileCount
=
`
find
.
-name
pom.xml|wc
-l
`
if
[[
1
=
$pomFileCount
]]
;
then
projectDir
=
`
find
.
-name
pom.xml
`
projectDir
=
${
projectDir
%/*
}
rm
-rf
~/results.log /tmp/Reference
cp
-r
$PROJECTREF
/tmp/Reference
pushd
/tmp/Reference
mvn
-T4
clean
>
/dev/null 2>&1
rm
-rf
src/main/java
popd
if
[
-f
"
${
projectDir
}
"
/
$SRCREPRESENT
]
;
then
cp
-r
/tmp/Reference
.
cp
-r
"
$projectDir
"
/src/main/java Reference/src/main
pushd
Reference 1> /dev/null
mvn
-T4
compile test-compile
>
/dev/null 2>&1
if
[
$?
-eq
0
]
;
then
mvn
-T4
-Dmaven
.test.skip
=
true
package
>
/dev/null 2>&1
result
=
""
mkdir
Unpack
;
pushd
Unpack
unzip ../
$fbname
.zip
>
/dev/null
pomFileCount
=
`
find
.
-name
pom.xml|wc
-l
`
if
[[
1
=
$pomFileCount
]]
;
then
projectDir
=
`
find
.
-name
pom.xml
`
projectDir
=
${
projectDir
%/*
}
echo
"Found project
$projectDir
"
mvnOutput
=
`
java
-jar
target/
$TESTJAR
`
if
[
-f
"
${
projectDir
}
"
/
$SRCREPRESENT
]
;
then
echo
"Found
$projectDir
/
$SRCREPRESENT
"
cp
-r
/tmp/Reference
.
cp
-r
"
$projectDir
"
/src/main/java Reference/src/main
pushd
Reference
mvn
-T4
compile test-compile
>
/dev/null 2>&1
if
[
$?
-eq
0
]
;
then
mvn
-T4
-Dmaven
.test.skip
=
true
package
>
/dev/null 2>&1
result
=
""
for
mark
in
"
${
MARKERS
[@]
}
"
;
do
result+
=
`
java
-jar
target/
$TESTJAR
|
grep
"
$mark
"
|sed
's/^[ ]*//'
`
result+
=
" "
done
else
echo
"
$projectDir
does not compile"
exit
1
;
# for mark in "${MARKERS[@]}"; do
# result+=`java -jar target/$TESTJAR | grep "$mark"|sed 's/^[ ]*//'`
# result+=" "
# done
result
=
$mvnOutput
else
result
=
"
$projectDir
does not compile"
fi
popd
1> /dev/null
echo
"
$fbname
"
echo
"
$result
"
#Cleanup user project
pushd
"
$projectDir
"
1> /dev/null
rm
-rf
*
.iml .idea A1.log
mvn clean
>
/dev/null 2>&1
popd
1> /dev/null
rm
../
"
$fbname
"
.zip
zip
-r
../
"
$fbname
"
.zip
"
$projectDir
"
>
/dev/null 2>&1
else
echo
"
$fbname
:
${
projectDir
}
/
$SRCREPRESENT
not found"
exit
1
fi
else
echo
"
$fbname
: Found more than one directory component"
exit
1
fi
popd
echo
"
$fbname
$result
"
>>
~/results.log
#Cleanup user project
pushd
"
$projectDir
"
rm
-rf
*
.iml .idea A1.log
mvn clean
>
/dev/null 2>&1
popd
rm
../
"
$fbname
"
.zip
zip
-r
../
"
$fbname
"
.zip
"
$projectDir
"
>
/dev/null 2>&1
else
echo
"
$fbname
:
${
projectDir
}
/
$SRCREPRESENT
not found"
exit
1
fi
else
echo
"
$fbname
: Found more than one directory component"
>>
~/results.log
exit
1
fi
popd
# return from Unpack
rm
-rf
Unpack
popd
1> /dev/null
# return from Unpack
rm
-rf
Unpack
echo
"-----------------------------------------------------"
uid
=
`
echo
$1
|
sed
-e
s/.zip//
`
grep
$uid
~/bonusprojekte.csv
echo
"+++++++++++++++++++++++++++++++++++++++++++++++++++++"
}
for
zip
in
"
$@
"
do
evaluateProject
$zip
done
echo
"---------------------------------------"
cat
~/results.log
echo
"+++++++++++++++++++++++++++++++++++++++"
uid
=
`
echo
$1
|
sed
-e
s/.zip//
`
grep
$uid
~/bonusprojekte.csv
echo
"---------------------------------------"
#end
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment