Files
Pigeon/pigeon.sh
T
2026-10-14 23:44:34 -04:00

31 lines
776 B
Bash

STUDENT_URL="$1"
PROJECT_ID="$2"
RELEASE_TAG="$3"
COMMIT_ID="$4"
: ${PIGEON_GITLAB_TOKEN:?}
: ${PIGEON_GRADER_URL:?}
DIRECTORY=`mktemp -d /tmp/pigeon.XXXXXXXXXX`
trap 'rm -rf "$DIRECTORY"' EXIT
cd "$DIRECTORY"
git clone "$STUDENT_URL" student
git clone "$ASSIGNMENT_URL" assignment
ASSIGNMENT="${STUDENT_URL:#*\.}"
cp -a "$TESTS"/"$ASSIGNMENT"/. "$DIRECTORY"/
mkfs.ext4 -q -F -d "$STUDENT" 'student.img' 64M
mkfs.ext4 -q -F -d "$DIRECTORY" 'tests.img' 16M
mkfs.ext4 -q -F 'results.img' 16M
@pigeon-vm@ student.img tests.img results.img
curl --request PUT \
--header "PRIVATE-TOKEN: $GITLAB_TOKEN" \
--header 'Content-Type: application/json' \
--data "{\"description\": \"$RESULTS\"}" \
--url "https://gitlab.com/api/v4/projects/$PROJECT_ID/releases/$TAG_NAME"