Skip to content

Commit 1985df2

Browse files
committed
Merge pull request #7 from nghiant2710/master
Change the way how image built. No longer bind mount docker.sock sock…
2 parents ac22bac + bdc3668 commit 1985df2

File tree

5 files changed

+58
-41
lines changed

5 files changed

+58
-41
lines changed

Dockerfile

-3
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,8 @@
11
FROM debian:jessie
22

3-
RUN echo "deb http://http.debian.net/debian jessie-backports main" >> /etc/apt/sources.list
4-
53
RUN apt-get -q update \
64
&& apt-get -qy install \
75
curl \
8-
docker.io \
96
debootstrap \
107
python \
118
python-pip \

automation/build-image.sh

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
#!/bin/bash
2+
3+
set -o errexit
4+
set -o pipefail
5+
6+
MIRROR='http://ftp.uk.debian.org/debian/'
7+
8+
docker build -t amd64-debian-mkimage .
9+
10+
for suite in $SUITES; do
11+
12+
rm -rf output
13+
mkdir -p output
14+
docker run --rm --privileged -e REPO=$REPO \
15+
-e SUITE=$suite \
16+
-e MIRROR=$MIRROR \
17+
-v `pwd`/output:/output amd64-debian-mkimage
18+
19+
docker build -t $REPO:$suite output/
20+
done

automation/jenkins-build.sh

+35-4
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,37 @@
11
#!/bin/bash
22

3-
# Jenkins build steps
4-
docker build -t amd64-debian-mkimage .
5-
docker run --privileged -e REGION_NAME=$REGION_NAME -e ACCESS_KEY=$ACCESS_KEY -e SECRET_KEY=$SECRET_KEY -e BUCKET_NAME=$BUCKET_NAME -v /var/run/docker.sock:/var/run/docker.sock amd64-debian-mkimage
6-
docker push resin/amd64-debian
3+
set -o errexit
4+
set -o pipefail
5+
6+
export SUITES='wheezy jessie'
7+
export REPO='resin/amd64-debian'
8+
LATEST='jessie'
9+
dir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
10+
date=$(date +'%Y%m%d' -u)
11+
12+
bash "$dir/build-image.sh"
13+
for suite in $SUITES; do
14+
15+
docker run --rm $REPO:$suite bash -c 'dpkg-query -l' > $suite
16+
17+
# Upload to S3 (using AWS CLI)
18+
printf "$ACCESS_KEY\n$SECRET_KEY\n$REGION_NAME\n\n" | aws configure
19+
aws s3 cp $suite s3://$BUCKET_NAME/image_info/amd64-debian/$suite/
20+
aws s3 cp $suite s3://$BUCKET_NAME/image_info/amd64-debian/$suite/$suite_$date
21+
rm -f $suite
22+
23+
docker tag -f $REPO:$suite $REPO:$suite-$date
24+
if [ $LATEST == $suite ]; then
25+
docker tag -f $REPO:$suite $REPO:latest
26+
fi
27+
done
28+
29+
docker push $REPO
30+
31+
# Clean up unnecessary docker images after pushing
32+
if [ $? -eq 0 ]; then
33+
for suite in $SUITES; do
34+
docker rmi -f $REPO:$suite
35+
docker rmi -f $REPO:$suite-$date
36+
done
37+
fi

build.sh

+2-24
Original file line numberDiff line numberDiff line change
@@ -2,28 +2,6 @@
22

33
set -o errexit
44

5-
SUITES='wheezy jessie'
6-
MIRROR='http://ftp.uk.debian.org/debian/'
7-
REPO='resin/amd64-debian'
8-
LATEST='jessie'
5+
dir=$(mktemp --tmpdir=/var/tmp -d)
96

10-
for suite in $SUITES; do
11-
dir=$(mktemp --tmpdir=/var/tmp -d)
12-
date=$(date +'%Y%m%d' -u)
13-
14-
./mkimage.sh -t $REPO:$suite --dir=$dir debootstrap --variant=minbase --arch=amd64 --include=sudo $suite $MIRROR
15-
rm -rf $dir
16-
17-
docker run --rm $REPO:$suite bash -c 'dpkg-query -l' > $suite
18-
19-
# Upload to S3 (using AWS CLI)
20-
printf "$ACCESS_KEY\n$SECRET_KEY\n$REGION_NAME\n\n" | aws configure
21-
aws s3 cp $suite s3://$BUCKET_NAME/image_info/amd64-debian/$suite/
22-
aws s3 cp $suite s3://$BUCKET_NAME/image_info/amd64-debian/$suite/$suite_$date
23-
rm -f $suite
24-
25-
docker tag -f $REPO:$suite $REPO:$suite-$date
26-
if [ $LATEST == $suite ]; then
27-
docker tag -f $REPO:$suite $REPO:latest
28-
fi
29-
done
7+
./mkimage.sh -t $REPO:$SUITE --dir=$dir debootstrap --variant=minbase --arch=amd64 --include=sudo $SUITE $MIRROR

mkimage.sh

+1-10
Original file line numberDiff line numberDiff line change
@@ -110,13 +110,4 @@ done
110110

111111
( set -x; rm -rf "$rootfsDir" )
112112

113-
if [ "$tag" ]; then
114-
( set -x; docker build -t "$tag" "$dir" )
115-
elif [ "$delDir" ]; then
116-
# if we didn't specify a tag and we're going to delete our dir, let's just build an untagged image so that we did _something_
117-
( set -x; docker build "$dir" )
118-
fi
119-
120-
if [ "$delDir" ]; then
121-
( set -x; rm -rf "$dir" )
122-
fi
113+
cp "$dir"/* /output/

0 commit comments

Comments
 (0)