Skip to content

Commit 5854e12

Browse files
committed
Pull Dockerfile from centralized CFT base image
1 parent ceec5d3 commit 5854e12

File tree

3 files changed

+13
-174
lines changed

3 files changed

+13
-174
lines changed

Makefile

Lines changed: 10 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -16,15 +16,9 @@
1616
SHELL := /usr/bin/env bash
1717

1818
# Docker build config variables
19-
BUILD_TERRAFORM_VERSION ?= 0.11.10
20-
BUILD_CLOUD_SDK_VERSION ?= 216.0.0
21-
BUILD_PROVIDER_GOOGLE_VERSION ?= 1.17.1
22-
BUILD_PROVIDER_GSUITE_VERSION ?= 0.1.8
23-
DOCKER_IMAGE_TERRAFORM := cftk/terraform
24-
DOCKER_TAG_TERRAFORM ?= ${BUILD_TERRAFORM_VERSION}_${BUILD_CLOUD_SDK_VERSION}_${BUILD_PROVIDER_GOOGLE_VERSION}_${BUILD_PROVIDER_GSUITE_VERSION}
25-
BUILD_RUBY_VERSION := 2.5.3
26-
DOCKER_IMAGE_KITCHEN_TERRAFORM := cftk/kitchen_terraform
27-
DOCKER_TAG_KITCHEN_TERRAFORM ?= ${BUILD_TERRAFORM_VERSION}_${BUILD_CLOUD_SDK_VERSION}_${BUILD_PROVIDER_GOOGLE_VERSION}_${BUILD_PROVIDER_GSUITE_VERSION}
19+
DOCKER_TAG_KITCHEN_TERRAFORM ?= 0.11.10_216.0.0_1.19.1_0.1.10
20+
DOCKER_REPO_BASE_KITCHEN_TERRAFORM := gcr.io/cloud-foundation-cicd/cft/kitchen-terraform:${DOCKER_TAG_KITCHEN_TERRAFORM}
21+
DOCKER_IMAGE_KITCHEN_TERRAFORM := cft/kitchen-terraform_terraform-google-kubernetes-engine
2822

2923
# All is the first target in the file so it will get picked up when you just run 'make' on its own
3024
all: check_shell check_python check_golang check_terraform check_docker check_base_files test_check_headers check_headers check_trailing_whitespace generate_docs
@@ -94,57 +88,45 @@ version:
9488
@source helpers/version-repo.sh
9589

9690
# Build Docker
97-
.PHONY: docker_build_terraform
98-
docker_build_terraform:
99-
docker build -f build/docker/terraform/Dockerfile \
100-
--build-arg BUILD_TERRAFORM_VERSION=${BUILD_TERRAFORM_VERSION} \
101-
--build-arg BUILD_CLOUD_SDK_VERSION=${BUILD_CLOUD_SDK_VERSION} \
102-
--build-arg BUILD_PROVIDER_GOOGLE_VERSION=${BUILD_PROVIDER_GOOGLE_VERSION} \
103-
--build-arg BUILD_PROVIDER_GSUITE_VERSION=${BUILD_PROVIDER_GSUITE_VERSION} \
104-
--build-arg CREDENTIALS_FILE=${CREDENTIALS_FILE} \
105-
-t ${DOCKER_IMAGE_TERRAFORM}:${DOCKER_TAG_TERRAFORM} .
106-
10791
.PHONY: docker_build_kitchen_terraform
10892
docker_build_kitchen_terraform:
10993
docker build -f build/docker/kitchen_terraform/Dockerfile \
110-
--build-arg BUILD_TERRAFORM_IMAGE="${DOCKER_IMAGE_TERRAFORM}:${DOCKER_TAG_TERRAFORM}" \
111-
--build-arg BUILD_RUBY_VERSION="${BUILD_RUBY_VERSION}" \
112-
--build-arg CREDENTIALS_FILE="${CREDENTIALS_FILE}" \
94+
--build-arg BASE_IMAGE=${DOCKER_REPO_BASE_KITCHEN_TERRAFORM} \
11395
-t ${DOCKER_IMAGE_KITCHEN_TERRAFORM}:${DOCKER_TAG_KITCHEN_TERRAFORM} .
11496

11597
# Run docker
11698
.PHONY: docker_run
11799
docker_run:
118100
docker run --rm -it \
119-
-v $(CURDIR):/cftk/workdir \
101+
-v $(CURDIR):/cft/workdir \
120102
${DOCKER_IMAGE_KITCHEN_TERRAFORM}:${DOCKER_TAG_KITCHEN_TERRAFORM} \
121103
/bin/bash
122104

123105
.PHONY: docker_create
124-
docker_create: docker_build_terraform docker_build_kitchen_terraform
106+
docker_create: docker_build_kitchen_terraform
125107
docker run --rm -it \
126-
-v $(CURDIR):/cftk/workdir \
108+
-v $(CURDIR):/cft/workdir \
127109
${DOCKER_IMAGE_KITCHEN_TERRAFORM}:${DOCKER_TAG_KITCHEN_TERRAFORM} \
128110
/bin/bash -c "kitchen create"
129111

130112
.PHONY: docker_converge
131113
docker_converge:
132114
docker run --rm -it \
133-
-v $(CURDIR):/cftk/workdir \
115+
-v $(CURDIR):/cft/workdir \
134116
${DOCKER_IMAGE_KITCHEN_TERRAFORM}:${DOCKER_TAG_KITCHEN_TERRAFORM} \
135117
/bin/bash -c "kitchen converge && kitchen converge"
136118

137119
.PHONY: docker_verify
138120
docker_verify:
139121
docker run --rm -it \
140-
-v $(CURDIR):/cftk/workdir \
122+
-v $(CURDIR):/cft/workdir \
141123
${DOCKER_IMAGE_KITCHEN_TERRAFORM}:${DOCKER_TAG_KITCHEN_TERRAFORM} \
142124
/bin/bash -c "kitchen verify"
143125

144126
.PHONY: docker_destroy
145127
docker_destroy:
146128
docker run --rm -it \
147-
-v $(CURDIR):/cftk/workdir \
129+
-v $(CURDIR):/cft/workdir \
148130
${DOCKER_IMAGE_KITCHEN_TERRAFORM}:${DOCKER_TAG_KITCHEN_TERRAFORM} \
149131
/bin/bash -c "kitchen destroy"
150132

build/docker/kitchen_terraform/Dockerfile

Lines changed: 3 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -12,58 +12,17 @@
1212
# See the License for the specific language governing permissions and
1313
# limitations under the License.
1414

15-
ARG BUILD_TERRAFORM_IMAGE
16-
ARG BUILD_RUBY_VERSION
17-
# hadolint ignore=DL3006
18-
FROM $BUILD_TERRAFORM_IMAGE as cfkt_terraform
15+
ARG BASE_IMAGE
1916

20-
21-
22-
FROM ruby:$BUILD_RUBY_VERSION-alpine
17+
FROM $BASE_IMAGE
2318

2419
RUN apk add --no-cache \
25-
bash=4.4.19-r1 \
26-
curl=7.61.1-r1 \
27-
git=2.18.1-r0 \
28-
g++=6.4.0-r9 \
29-
jq=1.6_rc1-r1 \
30-
make=4.2.1-r2 \
31-
musl-dev=1.1.19-r10 \
32-
python2=2.7.15-r1 \
33-
python2-dev=2.7.15-r1 \
34-
py2-pip=10.0.1-r0 \
3520
ca-certificates=20171114-r3
3621

3722
ADD https://storage.googleapis.com/kubernetes-release/release/v1.12.2/bin/linux/amd64/kubectl /usr/local/bin/kubectl
3823
RUN chmod +x /usr/local/bin/kubectl
3924

40-
SHELL ["/bin/bash", "-c"]
41-
42-
ENV APP_BASE_DIR="/cftk"
43-
44-
COPY --from=cfkt_terraform $APP_BASE_DIR $APP_BASE_DIR
45-
46-
ARG CREDENTIALS_FILE
47-
48-
ENV HOME="$APP_BASE_DIR/home"
49-
ENV PATH $APP_BASE_DIR/bin:$APP_BASE_DIR/google-cloud-sdk/bin:$PATH
50-
ENV GOOGLE_APPLICATION_CREDENTIALS="$APP_BASE_DIR/workdir/$CREDENTIALS_FILE" \
51-
CLOUDSDK_AUTH_CREDENTIAL_FILE_OVERRIDE="$APP_BASE_DIR/workdir/$CREDENTIALS_FILE"
52-
53-
# Fix base64 inconsistency
54-
SHELL ["/bin/bash", "-c"]
55-
RUN echo 'base64() { if [[ $@ == "--decode" ]]; then command base64 -d | more; else command base64 "$@"; fi; }' >> $APP_BASE_DIR/home/.bashrc
56-
57-
RUN terraform --version && \
58-
gcloud --version && \
59-
ruby --version && \
60-
bundle --version
61-
62-
COPY ./Gemfile /opt/kitchen/
63-
6425
WORKDIR /opt/kitchen
26+
COPY ./Gemfile /opt/kitchen/
6527
RUN bundle install
66-
67-
RUN gcloud components install beta --quiet
68-
6928
WORKDIR $APP_BASE_DIR/workdir

build/docker/terraform/Dockerfile

Lines changed: 0 additions & 102 deletions
This file was deleted.

0 commit comments

Comments
 (0)