mirror of
https://github.com/DominicBreuker/pspy.git
synced 2025-12-21 11:44:51 +00:00
try code coverage reporting on circle
This commit is contained in:
@@ -3,6 +3,7 @@ FROM golang:1.10-stretch
|
||||
RUN apt-get update && apt-get -y install cron python3 sudo procps
|
||||
|
||||
### Test and build ###
|
||||
|
||||
# copy source code
|
||||
COPY main.go /go/src/github.com/dominicbreuker/pspy/main.go
|
||||
COPY cmd /go/src/github.com/dominicbreuker/pspy/cmd
|
||||
@@ -27,7 +28,7 @@ RUN useradd -ms /bin/bash myuser && \
|
||||
adduser myuser sudo && \
|
||||
echo 'myuser ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
|
||||
USER myuser
|
||||
|
||||
RUN sudo chown -R myuser:myuser /go/*
|
||||
|
||||
# drop into bash shell
|
||||
COPY docker/entrypoint-testing.sh /entrypoint.sh
|
||||
|
||||
@@ -1,5 +1,40 @@
|
||||
#!/bin/bash
|
||||
|
||||
### test covereage
|
||||
|
||||
if [ -z ${CC_TEST_REPORTER_ID+x} ]; then
|
||||
echo "[+] skipping test coverage"
|
||||
else
|
||||
echo "[+] reporting test coverage"
|
||||
curl -L https://codeclimate.com/downloads/test-reporter/test-reporter-latest-linux-amd64 > ./cc-test-reporter
|
||||
chmod +x ./cc-test-reporter
|
||||
|
||||
# git config --global user.email "dummy@example.com"
|
||||
# git config --global user.name "Mr Robot"
|
||||
# git init
|
||||
# git add .
|
||||
# git commit -m 'commit that makes cc test reporter happy'
|
||||
|
||||
./cc-test-reporter before-build
|
||||
|
||||
for pkg in $(go list ./... | grep -v main); do
|
||||
echo "doing $pkg"
|
||||
go test -coverprofile=$(echo $pkg | tr / -).cover $pkg
|
||||
done
|
||||
echo "mode: set" > c.out
|
||||
grep -h -v "^mode:" ./*.cover >> c.out
|
||||
rm -f *.cover
|
||||
|
||||
echo "reporting now"
|
||||
./cc-test-reporter after-build
|
||||
|
||||
rm c.out
|
||||
|
||||
rm ./cc-test-reporter
|
||||
fi
|
||||
|
||||
### integration test
|
||||
|
||||
sudo cron -f &
|
||||
sleep 1
|
||||
sudo ps | grep cron 1>/dev/null
|
||||
|
||||
Reference in New Issue
Block a user