[OOM-K8S-CERT-EXTERNAL-PROVIDER] Configuration for local development 93/114493/5
authorJan Malkiewicz <jan.malkiewicz@nokia.com>
Mon, 2 Nov 2020 13:53:30 +0000 (14:53 +0100)
committerJan Malkiewicz <jan.malkiewicz@nokia.com>
Thu, 5 Nov 2020 08:04:13 +0000 (09:04 +0100)
Issue-ID: OOM-2559
Signed-off-by: Jan Malkiewicz <jan.malkiewicz@nokia.com>
Change-Id: I5ee38593cff665dc7d0e0d17f4df569be129d778

certServiceK8sExternalProvider/.gitignore
certServiceK8sExternalProvider/Dockerfile
certServiceK8sExternalProvider/Makefile
certServiceK8sExternalProvider/deploy/deployment.yaml
certServiceK8sExternalProvider/dev/Dockerfile.dev [new file with mode: 0644]

index 716231c..f2595cc 100644 (file)
@@ -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"]
index ac35393..b8f5f6f 100644 (file)
 # ============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"
index 3e21dc2..20dd65a 100644 (file)
@@ -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 (file)
index 0000000..29c960b
--- /dev/null
@@ -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"]