Skip to content

Commit ea99460

Browse files
committed
Add sdk base image
1 parent 80c83e3 commit ea99460

File tree

4 files changed

+49
-11
lines changed

4 files changed

+49
-11
lines changed

.travis.yml

+9-9
Original file line numberDiff line numberDiff line change
@@ -159,36 +159,36 @@ jobs:
159159
name: Docker images for arm64
160160
arch: arm64
161161
script:
162-
- make image-build-ansible image-build-helm image-build-scorecard-test image-build-scorecard-test-kuttl
163-
- make image-push-ansible image-push-helm image-push-scorecard-test image-push-scorecard-test-kuttl
162+
- make image-build-ansible image-build-helm image-build-scorecard-test image-build-scorecard-test-kuttl image-build-sdk
163+
- make image-push-ansible image-push-helm image-push-scorecard-test image-push-scorecard-test-kuttl image-push-sdk
164164

165165
# Build and deploy amd64 docker images
166166
- <<: *deploy
167167
name: Docker images for amd64
168168
arch: amd64
169169
script:
170-
- make image-build-ansible image-build-helm image-build-scorecard-test image-build-scorecard-test-kuttl
171-
- make image-push-ansible image-push-helm image-push-scorecard-test image-push-scorecard-test-kuttl
170+
- make image-build-ansible image-build-helm image-build-scorecard-test image-build-scorecard-test-kuttl image-build-sdk
171+
- make image-push-ansible image-push-helm image-push-scorecard-test image-push-scorecard-test-kuttl image-push-sdk
172172

173173
# Build and deploy ppc64le docker images
174174
- <<: *deploy
175175
name: Docker images for ppc64le
176176
arch: ppc64le
177177
script:
178-
- make image-build-ansible image-build-helm image-build-scorecard-test image-build-scorecard-test-kuttl
179-
- make image-push-ansible image-push-helm image-push-scorecard-test image-push-scorecard-test-kuttl
178+
- make image-build-ansible image-build-helm image-build-scorecard-test image-build-scorecard-test-kuttl image-build-sdk
179+
- make image-push-ansible image-push-helm image-push-scorecard-test image-push-scorecard-test-kuttl image-push-sdk
180180

181181
# Build and deploy s390x docker images
182182
- <<: *deploy
183183
name: Docker images for s390x
184184
arch: s390x
185185
script:
186-
- make image-build-ansible image-build-helm image-build-scorecard-test
187-
- make image-push-ansible image-push-helm image-push-scorecard-test
186+
- make image-build-ansible image-build-helm image-build-scorecard-test image-build-sdk
187+
- make image-push-ansible image-push-helm image-push-scorecard-test image-push-sdk
188188

189189
# Build and deploy ansible multi-arch manifest list
190190
- stage: deploy-manifest-multiarch
191191
<<: *manifest-deploy
192192
name: Manifest lists
193193
script:
194-
- make image-push-ansible-multiarch image-push-helm-multiarch image-push-scorecard-test-multiarch image-push-scorecard-test-kuttl-multiarch
194+
- make image-push-ansible-multiarch image-push-helm-multiarch image-push-scorecard-test-multiarch image-push-scorecard-test-kuttl-multiarch image-push-sdk-multiarch

Makefile

+17-2
Original file line numberDiff line numberDiff line change
@@ -31,18 +31,21 @@ GO_BUILD_ARGS = \
3131

3232
ANSIBLE_BASE_IMAGE = quay.io/operator-framework/ansible-operator
3333
HELM_BASE_IMAGE = quay.io/operator-framework/helm-operator
34+
OPERATOR_SDK_BASE_IMAGE = quay.io/operator-framework/operator-sdk
3435
CUSTOM_SCORECARD_TESTS_BASE_IMAGE = quay.io/operator-framework/custom-scorecard-tests
3536
SCORECARD_TEST_BASE_IMAGE = quay.io/operator-framework/scorecard-test
3637
SCORECARD_TEST_KUTTL_BASE_IMAGE = quay.io/operator-framework/scorecard-test-kuttl
3738

3839
ANSIBLE_IMAGE ?= $(ANSIBLE_BASE_IMAGE)
3940
HELM_IMAGE ?= $(HELM_BASE_IMAGE)
41+
OPERATOR_SDK_IMAGE ?= $(OPERATOR_SDK_BASE_IMAGE)
4042
CUSTOM_SCORECARD_TESTS_IMAGE ?= $(CUSTOM_SCORECARD_TESTS_BASE_IMAGE)
4143
SCORECARD_TEST_IMAGE ?= $(SCORECARD_TEST_BASE_IMAGE)
4244
SCORECARD_TEST_KUTTL_IMAGE ?= $(SCORECARD_TEST_KUTTL_BASE_IMAGE)
4345

4446
ANSIBLE_ARCHES:="amd64" "ppc64le" "arm64" "s390x"
4547
HELM_ARCHES:="amd64" "ppc64le" "arm64" "s390x"
48+
OPERATOR_SDK_ARCHES:="amd64" "ppc64le" "arm64" "s390x"
4649
SCORECARD_TEST_ARCHES:="amd64" "ppc64le" "arm64" "s390x"
4750
SCORECARD_TEST_KUTTL_ARCHES:="amd64" "ppc64le" "arm64"
4851
# the custom scorecard test image is a scorecard example only
@@ -184,9 +187,9 @@ build/%.asc: ## Create release signatures for operator-sdk release binaries
184187

185188
image: image-build image-push ## Build and push all images
186189

187-
image-build: image-build-ansible image-build-helm image-build-scorecard-test image-build-scorecard-test-kuttl image-build-custom-scorecard-tests ## Build all images
190+
image-build: image-build-ansible image-build-helm image-build-scorecard-test image-build-scorecard-test-kuttl image-build-custom-scorecard-tests image-build-sdk ## Build all images
188191

189-
image-push: image-push-ansible image-push-helm image-push-scorecard-test image-push-scorecard-test-kuttl ## Push all images
192+
image-push: image-push-ansible image-push-helm image-push-scorecard-test image-push-scorecard-test-kuttl image-push-sdk ## Push all images
190193

191194
# Ansible operator image scaffold/build/push.
192195
.PHONY: image-scaffold-ansible image-build-ansible image-push-ansible image-push-ansible-multiarch
@@ -218,6 +221,18 @@ image-push-helm:
218221
image-push-helm-multiarch:
219222
./hack/image/push-manifest-list.sh $(HELM_IMAGE) ${HELM_ARCHES}
220223

224+
.PHONY: image-build-sdk image-push-sdk image-push-sdk-multiarch
225+
226+
image-build-sdk: build/operator-sdk-dev-linux-gnu
227+
./hack/image/build-sdk-image.sh $(OPERATOR_SDK_BASE_IMAGE):dev
228+
229+
image-push-sdk:
230+
./hack/image/push-image-tags.sh $(OPERATOR_SDK_BASE_IMAGE):dev $(OPERATOR_SDK_IMAGE)-$(shell go env GOARCH)
231+
232+
image-push-sdk-multiarch:
233+
./hack/image/push-manifest-list.sh $(OPERATOR_SDK_IMAGE) ${OPERATOR_SDK_ARCHES}
234+
235+
221236
# Scorecard test image scaffold/build/push.
222237
.PHONY: image-build-scorecard-test image-push-scorecard-test image-push-scorecard-test-multiarch
223238

hack/image/build-sdk-image.sh

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
#!/usr/bin/env bash
2+
3+
set -eux
4+
5+
source hack/lib/test_lib.sh
6+
source hack/lib/image_lib.sh
7+
8+
ROOTDIR="$(pwd)"
9+
TMPDIR="$(mktemp -d)"
10+
trap_add 'rm -rf $TMPDIR' EXIT
11+
12+
# build the base image
13+
pushd $TMPDIR
14+
cp $ROOTDIR/build/operator-sdk-dev-linux-gnu .
15+
docker build -f $ROOTDIR/hack/image/sdk/Dockerfile -t $1 .
16+
17+
# TODO(asmacdo) any reason to load image into kind?
18+
popd

hack/image/sdk/Dockerfile

+5
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
FROM registry.access.redhat.com/ubi8/ubi
2+
3+
COPY operator-sdk-dev-linux-gnu /usr/local/bin/operator-sdk
4+
5+
ENTRYPOINT ["/usr/local/bin/operator-sdk"]

0 commit comments

Comments
 (0)