aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJan Malkiewicz <jan.malkiewicz@nokia.com>2020-11-02 14:53:30 +0100
committerJan Malkiewicz <jan.malkiewicz@nokia.com>2020-11-05 09:04:13 +0100
commit857b3d0e65f1a37000d12d6df8d7e5a917e15b23 (patch)
tree120221139ee6e861a1ced553a202e2d56879ff1c
parenta622e8871c9bea86aff16ffe5ae021abe08326fe (diff)
[OOM-K8S-CERT-EXTERNAL-PROVIDER] Configuration for local development
Issue-ID: OOM-2559 Signed-off-by: Jan Malkiewicz <jan.malkiewicz@nokia.com> Change-Id: I5ee38593cff665dc7d0e0d17f4df569be129d778
-rw-r--r--certServiceK8sExternalProvider/.gitignore1
-rw-r--r--certServiceK8sExternalProvider/Dockerfile6
-rw-r--r--certServiceK8sExternalProvider/Makefile22
-rw-r--r--certServiceK8sExternalProvider/deploy/deployment.yaml10
-rw-r--r--certServiceK8sExternalProvider/dev/Dockerfile.dev38
5 files changed, 66 insertions, 11 deletions
diff --git a/certServiceK8sExternalProvider/.gitignore b/certServiceK8sExternalProvider/.gitignore
index 7281d290..34d77f6e 100644
--- a/certServiceK8sExternalProvider/.gitignore
+++ b/certServiceK8sExternalProvider/.gitignore
@@ -1,2 +1,3 @@
bin
+dev/certs
.tmp_pack_folder*
diff --git a/certServiceK8sExternalProvider/Dockerfile b/certServiceK8sExternalProvider/Dockerfile
index 716231cf..f2595cce 100644
--- a/certServiceK8sExternalProvider/Dockerfile
+++ b/certServiceK8sExternalProvider/Dockerfile
@@ -38,11 +38,11 @@ COPY main.go main.go
COPY src/ ./src
# Build
-RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 GO111MODULE=on go build -a -o oom-certservice-k8s-external-provider main.go
+RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 GO111MODULE=on go build -a -o oom-certservice-cmpv2issuer main.go
# Runtime container definition
FROM gcr.io/distroless/static:latest
WORKDIR /
-COPY --from=builder /workspace/oom-certservice-k8s-external-provider .
-ENTRYPOINT ["/oom-certservice-k8s-external-provider"]
+COPY --from=builder /workspace/oom-certservice-cmpv2issuer .
+ENTRYPOINT ["/oom-certservice-cmpv2issuer"]
diff --git a/certServiceK8sExternalProvider/Makefile b/certServiceK8sExternalProvider/Makefile
index ac353934..b8f5f6fc 100644
--- a/certServiceK8sExternalProvider/Makefile
+++ b/certServiceK8sExternalProvider/Makefile
@@ -17,16 +17,32 @@
# ============LICENSE_END=========================================================
#
+ip_addr=$(shell hostname -I | awk '{print $$1}')
+cmpv2_issuer_pod_id=$(shell kubectl -n onap get po | grep cmpv2issuer | awk '{print $$1}')
build:
- go build -v -o bin/oom-certservice-k8s-external-provider
+ CGO_ENABLED=0 GOOS=linux GOARCH=amd64 GO111MODULE=on go build -v -o bin/oom-certservice-cmpv2issuer
test: build
go test ./...
build-docker-image:
- docker build -t onap/oom-certservice-k8s-external-provider .
+ docker build -t onap/oom-certservice-cmpv2issuer:latest .
run-docker-image:
- docker run -it onap/oom-certservice-k8s-external-provider
+ docker run -it onap/oom-certservice-cmpv2issuer:latest
+dev-copy-certs:
+ mkdir -p dev/certs
+ cp ../certs/cmpv2Issuer-cert.pem dev/certs/cmpv2Issuer-cert.pem
+ cp ../certs/cmpv2Issuer-key.pem dev/certs/cmpv2Issuer-key.pem
+ cp ../certs/cacert.pem dev/certs/cacert.pem
+
+dev-build-docker-image: build dev-copy-certs
+ docker build -t onap-dev/cmpv2issuer:latest . -f dev/Dockerfile.dev
+
+dev-run-docker-image:
+ docker run -it onap-dev/cmpv2issuer:latest
+
+dev-update-docker-hosts-file:
+ kubectl exec -it -n onap ${cmpv2_issuer_pod_id} -c kube-rbac-proxy -- sh -c "echo '$(ip_addr) oom-cert-service' >> /etc/hosts"
diff --git a/certServiceK8sExternalProvider/deploy/deployment.yaml b/certServiceK8sExternalProvider/deploy/deployment.yaml
index 3e21dc2e..20dd65a8 100644
--- a/certServiceK8sExternalProvider/deploy/deployment.yaml
+++ b/certServiceK8sExternalProvider/deploy/deployment.yaml
@@ -32,7 +32,7 @@ metadata:
prometheus.io/scrape: "true"
labels:
control-plane: controller-manager
- name: certservice-issuer-controller-manager-metrics-service
+ name: oom-certservice-cmpv2issuer-metrics-service
namespace: onap
spec:
ports:
@@ -47,7 +47,7 @@ kind: Deployment
metadata:
labels:
control-plane: controller-manager
- name: certservice-issuer-controller-manager
+ name: oom-certservice-cmpv2issuer
namespace: onap
spec:
replicas: 1
@@ -73,9 +73,9 @@ spec:
- args:
- --metrics-addr=127.0.0.1:8080
command:
- - /oom-certservice-k8s-external-provider
- image: onap/oom-certservice-k8s-external-provider:1.0.0
- name: oom-certservice-k8s-external-provider
+ - /oom-certservice-cmpv2issuer
+ image: onap/oom-certservice-cmpv2issuer:1.0.0
+ name: provider
resources:
limits:
cpu: 250m
diff --git a/certServiceK8sExternalProvider/dev/Dockerfile.dev b/certServiceK8sExternalProvider/dev/Dockerfile.dev
new file mode 100644
index 00000000..29c960b9
--- /dev/null
+++ b/certServiceK8sExternalProvider/dev/Dockerfile.dev
@@ -0,0 +1,38 @@
+# ============LICENSE_START=======================================================
+# oom-certservice-k8s-external-provider
+# ================================================================================
+# Copyright (C) 2020 Nokia. All rights reserved.
+# ================================================================================
+# This source code was copied from the following git repository:
+# https://github.com/smallstep/step-issuer
+# The source code was modified for usage in the ONAP project.
+# ================================================================================
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+# ============LICENSE_END=========================================================
+#
+
+# You can easily switch between PROD image (gcr.io) and DEV image (alpine)
+#FROM gcr.io/distroless/static:latest
+FROM alpine:latest
+RUN apk add --no-cache bash sudo vim curl jq
+
+RUN mkdir /certs
+
+COPY dev/certs/cmpv2Issuer-cert.pem /certs/cmpv2Issuer-cert.pem
+COPY dev/certs/cmpv2Issuer-key.pem /certs/cmpv2Issuer-key.pem
+COPY dev/certs/cacert.pem /certs/cacert.pem
+
+WORKDIR /
+COPY bin/oom-certservice-cmpv2issuer /oom-certservice-cmpv2issuer
+
+ENTRYPOINT ["/oom-certservice-cmpv2issuer"]