Skip to content

Commit fdbd3dc

Browse files
Break release into pieces, build images in parallel
1 parent 3777cfb commit fdbd3dc

File tree

2 files changed

+41
-21
lines changed

2 files changed

+41
-21
lines changed

hack/build-images.sh

Lines changed: 27 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -43,28 +43,36 @@ ln_or_cp "${OS_OUTPUT_BINPATH}/linux/amd64/gitserver" examples/gitserver/b
4343
tag_prefix="${OS_IMAGE_PREFIX:-"openshift/origin"}"
4444

4545
# images that depend on "${tag_prefix}-source"
46-
os::build::image "${tag_prefix}-pod" images/pod
47-
os::build::image "${tag_prefix}-cluster-capacity" images/cluster-capacity
48-
os::build::image "${tag_prefix}-service-catalog" images/service-catalog
46+
( os::build::image "${tag_prefix}-pod" images/pod ) &
47+
( os::build::image "${tag_prefix}-cluster-capacity" images/cluster-capacity ) &
48+
( os::build::image "${tag_prefix}-service-catalog" images/service-catalog ) &
49+
50+
for i in `jobs -p`; do wait $i; done
4951

5052
# images that depend on "${tag_prefix}-base"
51-
os::build::image "${tag_prefix}" images/origin
52-
os::build::image "${tag_prefix}-haproxy-router" images/router/haproxy
53-
os::build::image "${tag_prefix}-keepalived-ipfailover" images/ipfailover/keepalived
54-
os::build::image "${tag_prefix}-docker-registry" images/dockerregistry
55-
os::build::image "${tag_prefix}-egress-router" images/egress/router
56-
os::build::image "${tag_prefix}-egress-http-proxy" images/egress/http-proxy
57-
os::build::image "${tag_prefix}-federation" images/federation
53+
( os::build::image "${tag_prefix}" images/origin ) &
54+
( os::build::image "${tag_prefix}-haproxy-router" images/router/haproxy ) &
55+
( os::build::image "${tag_prefix}-keepalived-ipfailover" images/ipfailover/keepalived ) &
56+
( os::build::image "${tag_prefix}-docker-registry" images/dockerregistry ) &
57+
( os::build::image "${tag_prefix}-egress-router" images/egress/router ) &
58+
( os::build::image "${tag_prefix}-egress-http-proxy" images/egress/http-proxy ) &
59+
( os::build::image "${tag_prefix}-federation" images/federation ) &
60+
61+
for i in `jobs -p`; do wait $i; done
62+
5863
# images that depend on "${tag_prefix}
59-
os::build::image "${tag_prefix}-gitserver" examples/gitserver
60-
os::build::image "${tag_prefix}-deployer" images/deployer
61-
os::build::image "${tag_prefix}-recycler" images/recycler
62-
os::build::image "${tag_prefix}-docker-builder" images/builder/docker/docker-builder
63-
os::build::image "${tag_prefix}-sti-builder" images/builder/docker/sti-builder
64-
os::build::image "${tag_prefix}-f5-router" images/router/f5
65-
os::build::image "openshift/node" images/node
64+
( os::build::image "${tag_prefix}-gitserver" examples/gitserver ) &
65+
( os::build::image "${tag_prefix}-deployer" images/deployer ) &
66+
( os::build::image "${tag_prefix}-recycler" images/recycler ) &
67+
( os::build::image "${tag_prefix}-docker-builder" images/builder/docker/docker-builder ) &
68+
( os::build::image "${tag_prefix}-sti-builder" images/builder/docker/sti-builder ) &
69+
( os::build::image "${tag_prefix}-f5-router" images/router/f5 ) &
70+
( os::build::image "openshift/node" images/node ) &
71+
72+
for i in `jobs -p`; do wait $i; done
73+
6674
# images that depend on "openshift/node"
67-
os::build::image "openshift/openvswitch" images/openvswitch
75+
( os::build::image "openshift/openvswitch" images/openvswitch ) &
6876

6977
# extra images (not part of infrastructure)
70-
os::build::image "openshift/hello-openshift" examples/hello-openshift
78+
( os::build::image "openshift/hello-openshift" examples/hello-openshift ) &

hack/release.sh

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,27 @@ elif [[ "$( git rev-parse "${tag}" )" != "$( git rev-parse HEAD )" ]]; then
1515
fi
1616
commit="$( git rev-parse ${tag} )"
1717

18+
export OS_GIT_COMMIT="${commit}"
1819
export OS_GIT_TREE_STATE=clean
1920
export OS_BUILD_ENV_PRESERVE=_output/local/releases
2021

2122
# Build images and push to the hub
22-
if [[ -z "${1-}" || "${1-}" == "images" ]]; then
23+
if [[ -z "${1-}" || "${1-}" == "base" ]]; then
2324
# Ensure that the build is using the latest release image
2425
docker pull "${OS_BUILD_ENV_IMAGE}"
2526
hack/build-base-images.sh
26-
hack/env OS_GIT_COMMIT="${commit}" make build-images
27+
fi
28+
29+
# Build images and push to the hub
30+
if [[ -z "${1-}" || "${1-}" == "rpms" ]]; then
31+
# Ensure that the build is using the latest release image
32+
hack/env make build-rpms
33+
fi
34+
35+
# Build images and push to the hub
36+
if [[ -z "${1-}" || "${1-}" == "images" ]]; then
37+
# Ensure that the build is using the latest release image
38+
hack/env make build-images -o build-rpms
2739
OS_PUSH_ALWAYS=1 OS_PUSH_TAG="${tag}" OS_TAG="" OS_PUSH_LOCAL="1" hack/push-release.sh
2840
fi
2941

0 commit comments

Comments
 (0)