Browse Source

test docker image before pushing

pull/435/head
Giancarlo Rubio 8 years ago
parent
commit
1438243934
  1. 4
      Makefile
  2. 1
      circle.yml
  3. 29
      test_image.sh

4
Makefile

@ -76,6 +76,10 @@ docker:
@echo ">> building docker image"
@docker build -t "$(DOCKER_IMAGE_NAME):$(DOCKER_IMAGE_TAG)" .
test-docker:
@echo ">> testing docker image"
./test_image.sh "$(DOCKER_IMAGE_NAME):$(DOCKER_IMAGE_TAG)" 9100
$(GOPATH)/bin/promu promu:
@GOOS= GOARCH= $(GO) get -u github.com/prometheus/promu

1
circle.yml

@ -33,6 +33,7 @@ dependencies:
test:
override:
- docker run --rm -t -v "$(pwd):/app" "${DOCKER_TEST_IMAGE_NAME}" -i "${REPO_PATH}" -T
- make test-docker
deployment:
hub_branch:

29
test_image.sh

@ -0,0 +1,29 @@
#!/bin/bash
set -exo pipefail
docker_image=$1
port=$2
wait_start() {
for in in {1..10}; do
if /usr/bin/curl -s -m 5 -f "http://localhost:${port}/metrics" > /dev/null ; then exit 0 ;
else
sleep 1
fi
done
exit 1
}
docker_start() {
docker run -d -p "${port}":"${port}" "${docker_image}"
}
if [[ "$#" -ne 2 ]] ; then
echo "Usage: $0 quay.io/prometheus/node-exporter:v0.13.0 9100" >&2
exit 1
fi
docker_start
wait_start
Loading…
Cancel
Save