1
0
mirror of https://github.com/rancher/os.git synced 2025-06-23 13:37:03 +00:00
os/scripts/ci

60 lines
1.4 KiB
Plaintext
Raw Normal View History

2015-02-09 04:38:37 +00:00
#!/bin/bash
set -ex
2015-02-09 04:38:37 +00:00
cd $(dirname $0)/..
export DOCKER_IMAGE=${DOCKER_IMAGE:=rancher-os-build}
2015-02-19 18:26:59 +00:00
export DOCKER_BASE=rancher/dind:v0.1.0
2015-02-09 04:38:37 +00:00
source scripts/build-common
mkdir -p ${BUILD}
2015-02-09 04:38:37 +00:00
DOCKER_FILE=$(pwd)/.dockerfile
generate_images()
{
2015-02-19 18:26:59 +00:00
if [ "$RUN_EXEC" = "true" ]; then
./scripts/build-images
return
fi
2015-02-09 04:38:37 +00:00
IMAGE_ID=$(docker images --no-trunc -q ${DOCKER_IMAGE})
if [ -e ${BUILD}/${IMAGE_ID} ]; then
DOCKER_BASE=$(<${BUILD}/${IMAGE_ID})
else
2015-02-20 18:29:17 +00:00
echo Running: docker run -d --privileged ${DOCKER_IMAGE} /source/scripts/build-images
2015-02-09 04:38:37 +00:00
CID=$(docker run -d --privileged ${DOCKER_IMAGE} /source/scripts/build-images)
docker logs -f ${CID} &
trap "docker rm -fv ${CID}" exit
2015-02-19 21:16:26 +00:00
[ "$(docker wait $CID)" == 0 ]
2015-02-09 04:38:37 +00:00
DOCKER_BASE=$(docker commit $CID)
echo ${DOCKER_BASE} > ${BUILD}/${IMAGE_ID}
fi
}
2015-03-14 23:07:39 +00:00
if [ -x "$(which wrapdocker)" ] && ! docker info >/dev/null 2>&1; then
2015-03-07 04:56:47 +00:00
wrapdocker
fi
2015-02-09 04:38:37 +00:00
run ./scripts/bootstrap
ARGS=
for i in $(ls -d * .* | sort -u | grep -Ev '(\.|\.\.|\.dockerfile|build|tmp|dist|.git|.idea|.vagrant|scripts|bin|state)$'); do
2015-02-09 04:38:37 +00:00
if [ -d $i ]; then
run --assets $i
else
ARGS="${ARGS} $i"
fi
done
2015-03-20 18:35:21 +00:00
run --assets ./scripts/version --assets "${ARGS}" ./scripts/build
run --assets ./scripts/build-common --assets ./assets ./scripts/download
run --assets ./scripts/build-images
finish
generate_images
reset_docker_build
run ./scripts/package "$@"
2015-02-09 04:38:37 +00:00
finish