Skip to content
# Copyright 2018 Google LLC
#
# 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.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.
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: cartservice
spec:
serviceName: cartservice
selector:
matchLabels:
app: cartservice
version: "1"
replicas: 3
template:
metadata:
labels:
app: cartservice
version: "1"
spec:
terminationGracePeriodSeconds: 5
containers:
- name: server
image: hipster/cartservice
imagePullPolicy: Always
ports:
- containerPort: 7070
env:
- name: SERVICE_NAME
value: "cartservice"
- name: REDIS_ADDR
value: "redis-cart:6379"
- name: PORT
value: "7070"
- name: LISTEN_ADDR
value: "0.0.0.0"
- name: HIPSTER_SICK # Used for GCP demo
value: "false"
- name: JAEGER_HOST
#value: "jaeger"
valueFrom:
fieldRef:
fieldPath: status.hostIP
- name: JAEGER_PORT
value: "6831"
- name: POD_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
- name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: NODE_NAME
valueFrom:
fieldRef:
fieldPath: spec.nodeName
resources:
requests:
cpu: 400m
memory: 128Mi
limits:
cpu: 600m
memory: 256Mi
#readinessProbe:
# initialDelaySeconds: 15
# exec:
# command: ["/bin/grpc_health_probe", "-addr=:7070", "-rpc-timeout=5s"]
#livenessProbe:
# initialDelaySeconds: 15
# periodSeconds: 10
# exec:
# command: ["/bin/grpc_health_probe", "-addr=:7070", "-rpc-timeout=5s"]
---
apiVersion: v1
kind: Service
metadata:
name: cartservice
spec:
type: ClusterIP
selector:
app: cartservice
version: "1"
ports:
- name: grpc
port: 7070
targetPort: 7070
# Copyright 2018 Google LLC
#
# 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.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.
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: checkoutservice
spec:
serviceName: checkoutservice
selector:
matchLabels:
app: checkoutservice
version: "1"
replicas: 3
template:
metadata:
labels:
app: checkoutservice
version: "1"
spec:
containers:
- name: server
image: hipster/checkoutservice
imagePullPolicy: Always
ports:
- containerPort: 5050
#readinessProbe:
# exec:
# command: ["/bin/grpc_health_probe", "-addr=:5050"]
#livenessProbe:
# exec:
# command: ["/bin/grpc_health_probe", "-addr=:5050"]
env:
- name: PORT
value: "5050"
- name: PRODUCT_CATALOG_SERVICE_ADDR
value: "productcatalogservice:3550"
- name: SHIPPING_SERVICE_ADDR
value: "shippingservice:50051"
- name: PAYMENT_SERVICE_ADDR
value: "paymentservice:50051"
- name: EMAIL_SERVICE_ADDR
value: "emailservice:5000"
- name: CURRENCY_SERVICE_ADDR
value: "currencyservice:7000"
- name: CART_SERVICE_ADDR
value: "cartservice:7070"
#- name: DISABLE_STATS
# value: "1"
#- name: DISABLE_TRACING
# value: "1"
- name: POD_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
- name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: NODE_NAME
valueFrom:
fieldRef:
fieldPath: spec.nodeName
- name: DISABLE_PROFILER
value: "1"
- name: JAEGER_SERVICE_ADDR
value: "jaeger-collector:14268/api/traces"
- name: SERVICE_NAME
value: "checkoutservice"
resources:
requests:
cpu: 100m
memory: 64Mi
limits:
cpu: 200m
memory: 128Mi
---
apiVersion: v1
kind: Service
metadata:
name: checkoutservice
spec:
type: ClusterIP
selector:
app: checkoutservice
version: "1"
ports:
- name: grpc
port: 5050
targetPort: 5050
# Copyright 2018 Google LLC
#
# 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.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.
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: currencyservice
spec:
serviceName: currencyservice
selector:
matchLabels:
app: currencyservice
version: "1"
replicas: 3
template:
metadata:
labels:
app: currencyservice
version: "1"
spec:
terminationGracePeriodSeconds: 5
containers:
- name: server
image: hipster/currencyservice
imagePullPolicy: Always
ports:
- name: grpc
containerPort: 7000
env:
- name: PORT
value: "7000"
- name: JAEGER_HOST
#value: "jaeger"
valueFrom:
fieldRef:
fieldPath: status.hostIP
- name: JAEGER_PORT
value: "6832"
#- name: ZIPKIN_COLLECTOR_URL
# value: "http://jaeger-collector:9411/api/v2/spans"
- name: SERVICE_NAME
value: "currencyservice"
- name: POD_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
- name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: NODE_NAME
valueFrom:
fieldRef:
fieldPath: spec.nodeName
#readinessProbe:
# exec:
# command: ["/bin/grpc_health_probe", "-addr=:7000"]
#livenessProbe:
# exec:
# command: ["/bin/grpc_health_probe", "-addr=:7000"]
resources:
requests:
cpu: 200m
memory: 128Mi
limits:
cpu: 400m
memory: 256Mi
---
apiVersion: v1
kind: Service
metadata:
name: currencyservice
spec:
type: ClusterIP
selector:
app: currencyservice
version: "1"
ports:
- name: grpc
port: 7000
targetPort: 7000
# Copyright 2018 Google LLC
#
# 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.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.
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: emailservice
spec:
serviceName: emailservice
selector:
matchLabels:
app: emailservice
version: "1"
replicas: 3
template:
metadata:
labels:
app: emailservice
version: "1"
spec:
terminationGracePeriodSeconds: 5
containers:
- name: server
image: hipster/emailservice
ports:
- containerPort: 8080
env:
- name: PORT
value: "8080"
# - name: DISABLE_TRACING
# value: "1"
- name: DISABLE_PROFILER
value: "1"
- name: JAEGER_HOST
value: "jaeger-collector"
- name: SERVICE_NAME
value: "emailservice"
- name: POD_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
- name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: NODE_NAME
valueFrom:
fieldRef:
fieldPath: spec.nodeName
#readinessProbe:
# periodSeconds: 5
# exec:
# command: ["/bin/grpc_health_probe", "-addr=:8080"]
#livenessProbe:
# periodSeconds: 5
# exec:
# command: ["/bin/grpc_health_probe", "-addr=:8080"]
resources:
requests:
cpu: 200m
memory: 512Mi
limits:
cpu: 400m
memory: 1025Mi
---
apiVersion: v1
kind: Service
metadata:
name: emailservice
spec:
type: ClusterIP
selector:
app: emailservice
version: "1"
ports:
- name: grpc
port: 5000
targetPort: 8080
apiVersion: v1
kind: Service
metadata:
name: frontend
spec:
type: ClusterIP
selector:
app: frontend
ports:
- name: http
port: 80
targetPort: 8080
---
apiVersion: v1
kind: Service
metadata:
name: frontend-external
spec:
type: NodePort #LoadBalancer
selector:
app: frontend
ports:
- name: http
port: 80
nodePort: 33458
targetPort: 8080
# Copyright 2018 Google LLC
#
# 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.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.
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: frontend
spec:
serviceName: frontend
selector:
matchLabels:
app: frontend
version: "1"
replicas: 3
template:
metadata:
labels:
app: frontend
version: "1"
annotations:
sidecar.istio.io/rewriteAppHTTPProbers: "true"
spec:
containers:
- name: server
image: hipster/frontend
ports:
- containerPort: 8080
#readinessProbe:
# initialDelaySeconds: 10
# httpGet:
# path: "/_healthz"
# port: 8080
# httpHeaders:
# - name: "Cookie"
# value: "shop_session-id=x-readiness-probe"
#livenessProbe:
# initialDelaySeconds: 10
# httpGet:
# path: "/_healthz"
# port: 8080
# httpHeaders:
# - name: "Cookie"
# value: "shop_session-id=x-liveness-probe"
env:
- name: PORT
value: "8080"
- name: PRODUCT_CATALOG_SERVICE_ADDR
value: "productcatalogservice:3550"
- name: CURRENCY_SERVICE_ADDR
value: "currencyservice:7000"
- name: CART_SERVICE_ADDR
value: "cartservice:7070"
- name: RECOMMENDATION_SERVICE_ADDR
value: "recommendationservice:8080"
- name: SHIPPING_SERVICE_ADDR
value: "shippingservice:50051"
- name: CHECKOUT_SERVICE_ADDR
value: "checkoutservice:5050"
- name: AD_SERVICE_ADDR
value: "adservice:9555"
- name: ENV_PLATFORM
value: "gcp"
- name: POD_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
- name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: NODE_NAME
valueFrom:
fieldRef:
fieldPath: spec.nodeName
# - name: DISABLE_TRACING
# value: "1"
- name: DISABLE_PROFILER
value: "1"
- name: JAEGER_SERVICE_ADDR
value: "jaeger-collector:14268/api/traces"
- name: SERVICE_NAME
value: "frontend"
resources:
requests:
cpu: 200m
memory: 128Mi
limits:
cpu: 400m
memory: 256Mi
# Copyright 2018 Google LLC
#
# 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.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.
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: paymentservice
spec:
serviceName: paymentservice
selector:
matchLabels:
app: paymentservice
version: "1"
replicas: 3
template:
metadata:
labels:
version: "1"
app: paymentservice
spec:
terminationGracePeriodSeconds: 5
containers:
- name: server
image: hipster/paymentservice
ports:
- containerPort: 50051
env:
- name: SERVICE_NAME
value: "paymentservice"
- name: PORT
value: "50051"
- name: JAEGER_HOST
# value: "jaeger"
valueFrom:
fieldRef:
fieldPath: status.hostIP
- name: JAEGER_PORT
value: "6832"
- name: POD_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
- name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: NODE_NAME
valueFrom:
fieldRef:
fieldPath: spec.nodeName
#readinessProbe:
# exec:
# command: ["/bin/grpc_health_probe", "-addr=:50051"]
#livenessProbe:
# exec:
# command: ["/bin/grpc_health_probe", "-addr=:50051"]
resources:
requests:
cpu: 200m
memory: 128Mi
limits:
cpu: 400m
memory: 256Mi
---
apiVersion: v1
kind: Service
metadata:
name: paymentservice
spec:
type: ClusterIP
selector:
app: paymentservice
version: "1"
ports:
- name: grpc
port: 50051
targetPort: 50051
# Copyright 2018 Google LLC
#
# 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.
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: productcatalogservice
spec:
serviceName: productcatalogservice
selector:
matchLabels:
app: productcatalogservice
version: "1"
replicas: 3
template:
metadata:
labels:
app: productcatalogservice
version: "1"
spec:
terminationGracePeriodSeconds: 5
containers:
- name: server
image: hipster/productcatalogservice
imagePullPolicy: Always
ports:
- containerPort: 3550
env:
- name: PORT
value: "3550"
- name: MYSQL_ADDR
value: "mysql:3306"
- name: ConnMaxLifeTime
value: "100"
- name: mySQLmaxIdleConns
value: "10"
- name: SQL_USER
value: "root"
- name: SQL_PASSWORD
value: "root123"
# - name: DISABLE_STATS
# value: "1"
# - name: DISABLE_TRACING
# value: "1"
- name: DISABLE_PROFILER
value: "1"
- name: JAEGER_SERVICE_ADDR
value: "jaeger-collector:14268/api/traces"
- name: SERVICE_NAME
value: "productcatalogservice"
- name: POD_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
- name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: NODE_NAME
valueFrom:
fieldRef:
fieldPath: spec.nodeName
- name: MYSQL_ADDR
value: "basic-tidb-external.tidb-cluster:4000"
- name: SQL_USER
value: "root"
- name: SQL_PASSWORD
value: ""
- name: ConnMaxLifeTime
value: "100"
- name: mySQLmaxIdleConns
value: "10"
#readinessProbe:
# exec:
# command: ["/bin/grpc_health_probe", "-addr=:3550"]
#livenessProbe:
# exec:
# command: ["/bin/grpc_health_probe", "-addr=:3550"]
resources:
requests:
cpu: 200m
memory: 128Mi
limits:
cpu: 400m
memory: 256Mi
---
apiVersion: v1
kind: Service
metadata:
name: productcatalogservice
spec:
type: ClusterIP
selector:
app: productcatalogservice
version: "1"
ports:
- name: grpc
port: 3550
targetPort: 3550
# Copyright 2018 Google LLC
#
# 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.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.
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: recommendationservice
spec:
serviceName: recommendationservice
selector:
matchLabels:
app: recommendationservice
version: "1"
replicas: 3
template:
metadata:
labels:
app: recommendationservice
version: "1"
spec:
terminationGracePeriodSeconds: 5
containers:
- name: server
image: hipster/recommendationservice
ports:
- containerPort: 8080
#readinessProbe:
# periodSeconds: 5
# exec:
# command: ["/bin/grpc_health_probe", "-addr=:8080"]
#livenessProbe:
# periodSeconds: 5
# exec:
# command: ["/bin/grpc_health_probe", "-addr=:8080"]
env:
- name: PORT
value: "8080"
- name: PRODUCT_CATALOG_SERVICE_ADDR
value: "productcatalogservice:3550"
- name: JAEGER_HOST
value: "jaeger-collector"
- name: SERVICE_NAME
value: "recommendationservice"
- name: POD_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
- name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: NODE_NAME
valueFrom:
fieldRef:
fieldPath: spec.nodeName
resources:
requests:
cpu: 200m
memory: 440Mi
limits:
cpu: 400m
memory: 900Mi
---
apiVersion: v1
kind: Service
metadata:
name: recommendationservice
spec:
type: ClusterIP
selector:
app: recommendationservice
version: "1"
ports:
- name: grpc
port: 8080
targetPort: 8080
# Copyright 2018 Google LLC
#
# 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.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.
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: redis-cart
spec:
serviceName: redis-cart
selector:
matchLabels:
app: redis-cart
version: "1"
template:
metadata:
labels:
app: redis-cart
version: "1"
spec:
containers:
- name: redis
image: redis:alpine
ports:
- containerPort: 6379
readinessProbe:
periodSeconds: 5
tcpSocket:
port: 6379
livenessProbe:
periodSeconds: 5
tcpSocket:
port: 6379
volumeMounts:
- mountPath: /data
name: redis-data
resources:
limits:
memory: 256Mi
cpu: 125m
requests:
cpu: 70m
memory: 200Mi
volumes:
- name: redis-data
emptyDir: {}
---
apiVersion: v1
kind: Service
metadata:
name: redis-cart
spec:
type: ClusterIP
selector:
app: redis-cart
version: "1"
ports:
- name: redis
port: 6379
targetPort: 6379
# Copyright 2018 Google LLC
#
# 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.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.
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: shippingservice
spec:
serviceName: shippingservice
selector:
matchLabels:
app: shippingservice
version: "1"
replicas: 3
template:
metadata:
labels:
app: shippingservice
version: "1"
spec:
containers:
- name: server
image: hipster/shippingservice
ports:
- containerPort: 50051
env:
- name: PORT
value: "50051"
#- name: DISABLE_STATS
# value: "1"
# - name: DISABLE_TRACING
# value: "1"
- name: DISABLE_PROFILER
value: "1"
- name: JAEGER_SERVICE_ADDR
value: "jaeger-collector:14268/api/traces"
- name: SERVICE_NAME
value: "shippingservice"
- name: POD_IP
valueFrom:
fieldRef:
fieldPath: status.podIP
- name: POD_NAME
valueFrom:
fieldRef:
fieldPath: metadata.name
- name: NODE_NAME
valueFrom:
fieldRef:
fieldPath: spec.nodeName
#readinessProbe:
# periodSeconds: 5
# exec:
# command: ["/bin/grpc_health_probe", "-addr=:50051"]
#livenessProbe:
# exec:
# command: ["/bin/grpc_health_probe", "-addr=:50051"]
resources:
requests:
cpu: 200m
memory: 128Mi
limits:
cpu: 400m
memory: 256Mi
---
apiVersion: v1
kind: Service
metadata:
name: shippingservice
spec:
type: ClusterIP
selector:
app: shippingservice
version: "1"
ports:
- name: grpc
port: 50051
targetPort: 50051
Generating tags...
- hipster/emailservice -> 10.0.80.205:5000/hipster/hipster_emailservice:latest
- hipster/productcatalogservice -> 10.0.80.205:5000/hipster/hipster_productcatalogservice:latest
- hipster/recommendationservice -> 10.0.80.205:5000/hipster/hipster_recommendationservice:latest
- hipster/shippingservice -> 10.0.80.205:5000/hipster/hipster_shippingservice:latest
- hipster/checkoutservice -> 10.0.80.205:5000/hipster/hipster_checkoutservice:latest
- hipster/paymentservice -> 10.0.80.205:5000/hipster/hipster_paymentservice:latest
- hipster/currencyservice -> 10.0.80.205:5000/hipster/hipster_currencyservice:latest
- hipster/cartservice -> 10.0.80.205:5000/hipster/hipster_cartservice:latest
- hipster/frontend -> 10.0.80.205:5000/hipster/hipster_frontend:latest
- hipster/adservice -> 10.0.80.205:5000/hipster/hipster_adservice:latest
Some taggers failed. Rerun with -vdebug for errors.
Checking cache...
- hipster/emailservice: Not found. Building
- hipster/productcatalogservice: Not found. Building
- hipster/recommendationservice: Not found. Building
- hipster/shippingservice: Not found. Building
- hipster/checkoutservice: Not found. Building
- hipster/paymentservice: Not found. Building
- hipster/currencyservice: Not found. Building
- hipster/cartservice: Not found. Building
- hipster/frontend: Not found. Building
- hipster/adservice: Not found. Building
Building [hipster/emailservice]...
Sending build context to Docker daemon 106kB
Step 1/15 : FROM python:3.7-slim as base
---> 867339bd5033
Step 2/15 : FROM base as builder
---> 867339bd5033
Step 3/15 : RUN apt-get -qq update && apt-get install -y --no-install-recommends g++ && rm -rf /var/lib/apt/lists/*
---> Running in 2470b66d216a
Reading package lists...
Building dependency tree...
Reading state information...
The following additional packages will be installed:
binutils binutils-common binutils-x86-64-linux-gnu cpp cpp-8 g++-8 gcc gcc-8
libasan5 libatomic1 libbinutils libc-dev-bin libc6-dev libcc1-0 libgcc-8-dev
libgomp1 libisl19 libitm1 liblsan0 libmpc3 libmpfr6 libmpx2 libquadmath0
libstdc++-8-dev libtsan0 libubsan1 linux-libc-dev
Suggested packages:
binutils-doc cpp-doc gcc-8-locales g++-multilib g++-8-multilib gcc-8-doc
libstdc++6-8-dbg gcc-multilib make manpages-dev autoconf automake libtool
flex bison gdb gcc-doc gcc-8-multilib libgcc1-dbg libgomp1-dbg libitm1-dbg
libatomic1-dbg libasan5-dbg liblsan0-dbg libtsan0-dbg libubsan1-dbg
libmpx2-dbg libquadmath0-dbg glibc-doc libstdc++-8-doc
Recommended packages:
manpages manpages-dev
The following NEW packages will be installed:
binutils binutils-common binutils-x86-64-linux-gnu cpp cpp-8 g++ g++-8 gcc
gcc-8 libasan5 libatomic1 libbinutils libc-dev-bin libc6-dev libcc1-0
libgcc-8-dev libgomp1 libisl19 libitm1 liblsan0 libmpc3 libmpfr6 libmpx2
libquadmath0 libstdc++-8-dev libtsan0 libubsan1 linux-libc-dev
0 upgraded, 28 newly installed, 0 to remove and 1 not upgraded.
Need to get 43.4 MB of archives.
After this operation, 175 MB of additional disk space will be used.
Get:1 http://deb.debian.org/debian buster/main amd64 binutils-common amd64 2.31.1-16 [2073 kB]
Get:2 http://deb.debian.org/debian buster/main amd64 libbinutils amd64 2.31.1-16 [478 kB]
Get:3 http://deb.debian.org/debian buster/main amd64 binutils-x86-64-linux-gnu amd64 2.31.1-16 [1823 kB]
Get:4 http://deb.debian.org/debian buster/main amd64 binutils amd64 2.31.1-16 [56.8 kB]
Get:5 http://deb.debian.org/debian buster/main amd64 libisl19 amd64 0.20-2 [587 kB]
Get:6 http://deb.debian.org/debian buster/main amd64 libmpfr6 amd64 4.0.2-1 [775 kB]
Get:7 http://deb.debian.org/debian buster/main amd64 libmpc3 amd64 1.1.0-1 [41.3 kB]
Get:8 http://deb.debian.org/debian buster/main amd64 cpp-8 amd64 8.3.0-6 [8914 kB]
Get:9 http://deb.debian.org/debian buster/main amd64 cpp amd64 4:8.3.0-1 [19.4 kB]
Get:10 http://deb.debian.org/debian buster/main amd64 libcc1-0 amd64 8.3.0-6 [46.6 kB]
Get:11 http://deb.debian.org/debian buster/main amd64 libgomp1 amd64 8.3.0-6 [75.8 kB]
Get:12 http://deb.debian.org/debian buster/main amd64 libitm1 amd64 8.3.0-6 [27.7 kB]
Get:13 http://deb.debian.org/debian buster/main amd64 libatomic1 amd64 8.3.0-6 [9032 B]
Get:14 http://deb.debian.org/debian buster/main amd64 libasan5 amd64 8.3.0-6 [362 kB]
Get:15 http://deb.debian.org/debian buster/main amd64 liblsan0 amd64 8.3.0-6 [131 kB]
Get:16 http://deb.debian.org/debian buster/main amd64 libtsan0 amd64 8.3.0-6 [283 kB]
Get:17 http://deb.debian.org/debian buster/main amd64 libubsan1 amd64 8.3.0-6 [120 kB]
Get:18 http://deb.debian.org/debian buster/main amd64 libmpx2 amd64 8.3.0-6 [11.4 kB]
Get:19 http://deb.debian.org/debian buster/main amd64 libquadmath0 amd64 8.3.0-6 [133 kB]
Get:20 http://deb.debian.org/debian buster/main amd64 libgcc-8-dev amd64 8.3.0-6 [2298 kB]
Get:21 http://deb.debian.org/debian buster/main amd64 gcc-8 amd64 8.3.0-6 [9452 kB]
Get:22 http://deb.debian.org/debian buster/main amd64 gcc amd64 4:8.3.0-1 [5196 B]
Get:23 http://deb.debian.org/debian buster/main amd64 libc-dev-bin amd64 2.28-10 [275 kB]
Get:24 http://deb.debian.org/debian buster/main amd64 linux-libc-dev amd64 4.19.181-1 [1441 kB]
Get:25 http://deb.debian.org/debian buster/main amd64 libc6-dev amd64 2.28-10 [2691 kB]
Get:26 http://deb.debian.org/debian buster/main amd64 libstdc++-8-dev amd64 8.3.0-6 [1532 kB]
Get:27 http://deb.debian.org/debian buster/main amd64 g++-8 amd64 8.3.0-6 [9752 kB]
Get:28 http://deb.debian.org/debian buster/main amd64 g++ amd64 4:8.3.0-1 [1644 B]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 43.4 MB in 14min 51s (48.7 kB/s)
Selecting previously unselected package binutils-common:amd64.
(Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 6840 files and directories currently installed.)
Preparing to unpack .../00-binutils-common_2.31.1-16_amd64.deb ...
Unpacking binutils-common:amd64 (2.31.1-16) ...
Selecting previously unselected package libbinutils:amd64.
Preparing to unpack .../01-libbinutils_2.31.1-16_amd64.deb ...
Unpacking libbinutils:amd64 (2.31.1-16) ...
Selecting previously unselected package binutils-x86-64-linux-gnu.
Preparing to unpack .../02-binutils-x86-64-linux-gnu_2.31.1-16_amd64.deb ...
Unpacking binutils-x86-64-linux-gnu (2.31.1-16) ...
Selecting previously unselected package binutils.
Preparing to unpack .../03-binutils_2.31.1-16_amd64.deb ...
Unpacking binutils (2.31.1-16) ...
Selecting previously unselected package libisl19:amd64.
Preparing to unpack .../04-libisl19_0.20-2_amd64.deb ...
Unpacking libisl19:amd64 (0.20-2) ...
Selecting previously unselected package libmpfr6:amd64.
Preparing to unpack .../05-libmpfr6_4.0.2-1_amd64.deb ...
Unpacking libmpfr6:amd64 (4.0.2-1) ...
Selecting previously unselected package libmpc3:amd64.
Preparing to unpack .../06-libmpc3_1.1.0-1_amd64.deb ...
Unpacking libmpc3:amd64 (1.1.0-1) ...
Selecting previously unselected package cpp-8.
Preparing to unpack .../07-cpp-8_8.3.0-6_amd64.deb ...
Unpacking cpp-8 (8.3.0-6) ...
Selecting previously unselected package cpp.
Preparing to unpack .../08-cpp_4%3a8.3.0-1_amd64.deb ...
Unpacking cpp (4:8.3.0-1) ...
Selecting previously unselected package libcc1-0:amd64.
Preparing to unpack .../09-libcc1-0_8.3.0-6_amd64.deb ...
Unpacking libcc1-0:amd64 (8.3.0-6) ...
Selecting previously unselected package libgomp1:amd64.
Preparing to unpack .../10-libgomp1_8.3.0-6_amd64.deb ...
Unpacking libgomp1:amd64 (8.3.0-6) ...
Selecting previously unselected package libitm1:amd64.
Preparing to unpack .../11-libitm1_8.3.0-6_amd64.deb ...
Unpacking libitm1:amd64 (8.3.0-6) ...
Selecting previously unselected package libatomic1:amd64.
Preparing to unpack .../12-libatomic1_8.3.0-6_amd64.deb ...
Unpacking libatomic1:amd64 (8.3.0-6) ...
Selecting previously unselected package libasan5:amd64.
Preparing to unpack .../13-libasan5_8.3.0-6_amd64.deb ...
Unpacking libasan5:amd64 (8.3.0-6) ...
Selecting previously unselected package liblsan0:amd64.
Preparing to unpack .../14-liblsan0_8.3.0-6_amd64.deb ...
Unpacking liblsan0:amd64 (8.3.0-6) ...
Selecting previously unselected package libtsan0:amd64.
Preparing to unpack .../15-libtsan0_8.3.0-6_amd64.deb ...
Unpacking libtsan0:amd64 (8.3.0-6) ...
Selecting previously unselected package libubsan1:amd64.
Preparing to unpack .../16-libubsan1_8.3.0-6_amd64.deb ...
Unpacking libubsan1:amd64 (8.3.0-6) ...
Selecting previously unselected package libmpx2:amd64.
Preparing to unpack .../17-libmpx2_8.3.0-6_amd64.deb ...
Unpacking libmpx2:amd64 (8.3.0-6) ...
Selecting previously unselected package libquadmath0:amd64.
Preparing to unpack .../18-libquadmath0_8.3.0-6_amd64.deb ...
Unpacking libquadmath0:amd64 (8.3.0-6) ...
Selecting previously unselected package libgcc-8-dev:amd64.
Preparing to unpack .../19-libgcc-8-dev_8.3.0-6_amd64.deb ...
Unpacking libgcc-8-dev:amd64 (8.3.0-6) ...
Selecting previously unselected package gcc-8.
Preparing to unpack .../20-gcc-8_8.3.0-6_amd64.deb ...
Unpacking gcc-8 (8.3.0-6) ...
Selecting previously unselected package gcc.
Preparing to unpack .../21-gcc_4%3a8.3.0-1_amd64.deb ...
Unpacking gcc (4:8.3.0-1) ...
Selecting previously unselected package libc-dev-bin.
Preparing to unpack .../22-libc-dev-bin_2.28-10_amd64.deb ...
Unpacking libc-dev-bin (2.28-10) ...
Selecting previously unselected package linux-libc-dev:amd64.
Preparing to unpack .../23-linux-libc-dev_4.19.181-1_amd64.deb ...
Unpacking linux-libc-dev:amd64 (4.19.181-1) ...
Selecting previously unselected package libc6-dev:amd64.
Preparing to unpack .../24-libc6-dev_2.28-10_amd64.deb ...
Unpacking libc6-dev:amd64 (2.28-10) ...
Selecting previously unselected package libstdc++-8-dev:amd64.
Preparing to unpack .../25-libstdc++-8-dev_8.3.0-6_amd64.deb ...
Unpacking libstdc++-8-dev:amd64 (8.3.0-6) ...
Selecting previously unselected package g++-8.
Preparing to unpack .../26-g++-8_8.3.0-6_amd64.deb ...
Unpacking g++-8 (8.3.0-6) ...
Selecting previously unselected package g++.
Preparing to unpack .../27-g++_4%3a8.3.0-1_amd64.deb ...
Unpacking g++ (4:8.3.0-1) ...
Setting up binutils-common:amd64 (2.31.1-16) ...
Setting up linux-libc-dev:amd64 (4.19.181-1) ...
Setting up libgomp1:amd64 (8.3.0-6) ...
Setting up libasan5:amd64 (8.3.0-6) ...
Setting up libmpfr6:amd64 (4.0.2-1) ...
Setting up libquadmath0:amd64 (8.3.0-6) ...
Setting up libmpc3:amd64 (1.1.0-1) ...
Setting up libatomic1:amd64 (8.3.0-6) ...
Setting up libmpx2:amd64 (8.3.0-6) ...
Setting up libubsan1:amd64 (8.3.0-6) ...
Setting up libisl19:amd64 (0.20-2) ...
Setting up libbinutils:amd64 (2.31.1-16) ...
Setting up cpp-8 (8.3.0-6) ...
Setting up libc-dev-bin (2.28-10) ...
Setting up libcc1-0:amd64 (8.3.0-6) ...
Setting up liblsan0:amd64 (8.3.0-6) ...
Setting up libitm1:amd64 (8.3.0-6) ...
Setting up binutils-x86-64-linux-gnu (2.31.1-16) ...
Setting up libtsan0:amd64 (8.3.0-6) ...
Setting up binutils (2.31.1-16) ...
Setting up libgcc-8-dev:amd64 (8.3.0-6) ...
Setting up cpp (4:8.3.0-1) ...
Setting up libc6-dev:amd64 (2.28-10) ...
Setting up libstdc++-8-dev:amd64 (8.3.0-6) ...
Setting up gcc-8 (8.3.0-6) ...
Setting up gcc (4:8.3.0-1) ...
Setting up g++-8 (8.3.0-6) ...
Setting up g++ (4:8.3.0-1) ...
update-alternatives: using /usr/bin/g++ to provide /usr/bin/c++ (c++) in auto mode
Processing triggers for libc-bin (2.28-10) ...
---> 3cd79e99d32f
Step 4/15 : COPY requirements.txt .
---> 0fde0831d74d
Step 5/15 : RUN pip install -r requirements.txt
---> Running in 3789c128188e
Collecting cachetools==3.0.0
Downloading cachetools-3.0.0-py2.py3-none-any.whl (12 kB)
Collecting certifi==2018.11.29
Downloading certifi-2018.11.29-py2.py3-none-any.whl (154 kB)
Collecting chardet==3.0.4
Downloading chardet-3.0.4-py2.py3-none-any.whl (133 kB)
Collecting google-api-core[grpc]==1.6.0
Downloading google_api_core-1.6.0-py2.py3-none-any.whl (64 kB)
Collecting google-api-python-client==1.7.8
Downloading google_api_python_client-1.7.8-py3-none-any.whl (56 kB)
Collecting google-auth-httplib2==0.0.3
Downloading google_auth_httplib2-0.0.3-py2.py3-none-any.whl (6.3 kB)
Collecting google-auth==1.6.2
Downloading google_auth-1.6.2-py2.py3-none-any.whl (73 kB)
Collecting google-cloud-core==0.29.1
Downloading google_cloud_core-0.29.1-py2.py3-none-any.whl (25 kB)
Collecting google-cloud-profiler==1.0.8
Downloading google-cloud-profiler-1.0.8.tar.gz (31 kB)
Collecting google-cloud-trace==0.20.2
Downloading google_cloud_trace-0.20.2-py2.py3-none-any.whl (61 kB)
Collecting googleapis-common-protos==1.5.5
Downloading googleapis-common-protos-1.5.5.tar.gz (33 kB)
Collecting grpcio-health-checking==1.12.1
Downloading grpcio-health-checking-1.12.1.tar.gz (4.5 kB)
Collecting grpcio==1.30.0
Downloading grpcio-1.30.0-cp37-cp37m-manylinux2010_x86_64.whl (3.0 MB)
Collecting httplib2==0.18.0
Downloading httplib2-0.18.0-py3-none-any.whl (95 kB)
Collecting idna==2.8
Downloading idna-2.8-py2.py3-none-any.whl (58 kB)
Collecting jinja2==2.10
Downloading Jinja2-2.10-py2.py3-none-any.whl (126 kB)
Collecting markupsafe==1.1.0
Downloading MarkupSafe-1.1.0-cp37-cp37m-manylinux1_x86_64.whl (27 kB)
Collecting protobuf==3.6.1
Downloading protobuf-3.6.1-cp37-cp37m-manylinux1_x86_64.whl (1.1 MB)
Collecting pyasn1-modules==0.2.3
Downloading pyasn1_modules-0.2.3-py2.py3-none-any.whl (65 kB)
Collecting pyasn1==0.4.5
Downloading pyasn1-0.4.5-py2.py3-none-any.whl (73 kB)
Collecting python-json-logger==0.1.9
Downloading python_json_logger-0.1.9-py2.py3-none-any.whl (4.0 kB)
Collecting pytz==2018.9
Downloading pytz-2018.9-py2.py3-none-any.whl (510 kB)
Collecting requests==2.21.0
Downloading requests-2.21.0-py2.py3-none-any.whl (57 kB)
Collecting rsa==4.0
Downloading rsa-4.0-py2.py3-none-any.whl (38 kB)
Collecting six==1.12.0
Downloading six-1.12.0-py2.py3-none-any.whl (10 kB)
Collecting uritemplate==3.0.0
Downloading uritemplate-3.0.0-py2.py3-none-any.whl (10 kB)
Collecting urllib3==1.24.2
Downloading urllib3-1.24.2-py2.py3-none-any.whl (131 kB)
Collecting wrapt==1.12.1
Downloading wrapt-1.12.1.tar.gz (27 kB)
Collecting opentelemetry-api==0.12.b0
Downloading opentelemetry_api-0.12b0-py3-none-any.whl (43 kB)
Collecting opentelemetry-sdk==0.12.b0
Downloading opentelemetry_sdk-0.12b0-py3-none-any.whl (37 kB)
Collecting opentelemetry-exporter-jaeger==0.12.b0
Downloading opentelemetry_exporter_jaeger-0.12b0-py3-none-any.whl (27 kB)
Collecting opentelemetry-instrumentation-grpc==0.12.b0
Downloading opentelemetry_instrumentation_grpc-0.12b0-py3-none-any.whl (19 kB)
Collecting opentelemetry.instrumentation==0.12b0
Downloading opentelemetry_instrumentation-0.12b0-py3-none-any.whl (10 kB)
Collecting grpcio-tools==1.27.2
Downloading grpcio_tools-1.27.2-cp37-cp37m-manylinux2010_x86_64.whl (2.4 MB)
Collecting thrift==0.13.0
Downloading thrift-0.13.0.tar.gz (59 kB)
Collecting google-api-core<2.0.0dev,>=1.0.0
Downloading google_api_core-1.29.0-py2.py3-none-any.whl (93 kB)
Requirement already satisfied: setuptools in /usr/local/lib/python3.7/site-packages (from protobuf==3.6.1->-r requirements.txt (line 24)) (57.0.0)
Building wheels for collected packages: google-cloud-profiler, googleapis-common-protos, grpcio-health-checking, wrapt, thrift
Building wheel for google-cloud-profiler (setup.py): started
Building wheel for google-cloud-profiler (setup.py): finished with status 'done'
Created wheel for google-cloud-profiler: filename=google_cloud_profiler-1.0.8-cp37-cp37m-linux_x86_64.whl size=428052 sha256=91bd76b6a206a8812db40ab53a797f8bce7f319c34f088229fe0167106b8ddde
Stored in directory: /root/.cache/pip/wheels/8f/c4/48/f41d1d859dfd6d87c06e751d27782dcfd9834f47dbd86a0eb4
Building wheel for googleapis-common-protos (setup.py): started
Building wheel for googleapis-common-protos (setup.py): finished with status 'done'
Created wheel for googleapis-common-protos: filename=googleapis_common_protos-1.5.5-py3-none-any.whl size=69375 sha256=60495257849069ef38224b3379b2e82999969decabfcda76cb74e5816dfdc1c1
Stored in directory: /root/.cache/pip/wheels/0d/3b/ac/9e4a20a7dbc8f0e74bc862cdf2cc301e0f6ea146b9ce56bffd
Building wheel for grpcio-health-checking (setup.py): started
Building wheel for grpcio-health-checking (setup.py): finished with status 'done'
Created wheel for grpcio-health-checking: filename=grpcio_health_checking-1.12.1-py3-none-any.whl size=5615 sha256=67f55d80e37eacc444e3500b540d180402b7da96a7821f3201729b6fb52aa0cf
Stored in directory: /root/.cache/pip/wheels/68/45/16/bf3c43928d72adb17c774b31642cfe14c364e4dc63cc27f281
Building wheel for wrapt (setup.py): started
Building wheel for wrapt (setup.py): finished with status 'done'
Created wheel for wrapt: filename=wrapt-1.12.1-cp37-cp37m-linux_x86_64.whl size=33303 sha256=359cc5a123964ce9773711e0ba2e1c3627d18987a3c6f2803455201bf934ada0
Stored in directory: /root/.cache/pip/wheels/62/76/4c/aa25851149f3f6d9785f6c869387ad82b3fd37582fa8147ac6
Building wheel for thrift (setup.py): started
Building wheel for thrift (setup.py): finished with status 'done'
Created wheel for thrift: filename=thrift-0.13.0-cp37-cp37m-linux_x86_64.whl size=182577 sha256=c731fb9ff1fb3de32d0d5eda64198c4f3ebf2c7d3640e00eabbcf33798401fd1
Stored in directory: /root/.cache/pip/wheels/79/35/5a/19f5dadf91f62bd783aaa8385f700de9bc14772e09ab0f006a
Successfully built google-cloud-profiler googleapis-common-protos grpcio-health-checking wrapt thrift
Installing collected packages: six, pyasn1, urllib3, rsa, pyasn1-modules, protobuf, idna, chardet, certifi, cachetools, requests, pytz, httplib2, googleapis-common-protos, google-auth, uritemplate, opentelemetry-api, grpcio, google-auth-httplib2, google-api-core, wrapt, thrift, opentelemetry-sdk, markupsafe, google-cloud-core, google-api-python-client, python-json-logger, opentelemetry-instrumentation-grpc, opentelemetry.instrumentation, opentelemetry-exporter-jaeger, jinja2, grpcio-tools, grpcio-health-checking, google-cloud-trace, google-cloud-profiler
Successfully installed cachetools-3.0.0 certifi-2018.11.29 chardet-3.0.4 google-api-core-1.6.0 google-api-python-client-1.7.8 google-auth-1.6.2 google-auth-httplib2-0.0.3 google-cloud-core-0.29.1 google-cloud-profiler-1.0.8 google-cloud-trace-0.20.2 googleapis-common-protos-1.5.5 grpcio-1.30.0 grpcio-health-checking-1.12.1 grpcio-tools-1.27.2 httplib2-0.18.0 idna-2.8 jinja2-2.10 markupsafe-1.1.0 opentelemetry-api-0.12b0 opentelemetry-exporter-jaeger-0.12b0 opentelemetry-instrumentation-grpc-0.12b0 opentelemetry-sdk-0.12b0 opentelemetry.instrumentation-0.12b0 protobuf-3.6.1 pyasn1-0.4.5 pyasn1-modules-0.2.3 python-json-logger-0.1.9 pytz-2018.9 requests-2.21.0 rsa-4.0 six-1.12.0 thrift-0.13.0 uritemplate-3.0.0 urllib3-1.24.2 wrapt-1.12.1
WARNING: Running pip as root will break packages and permissions. You should install packages reliably by using venv: https://pip.pypa.io/warnings/venv
 ---> 2880d96e5d9b
Step 6/15 : FROM base as final
---> 867339bd5033
Step 7/15 : ENV PYTHONUNBUFFERED=1
---> Using cache
---> 1b8bd9eb698c
Step 8/15 : ENV ENABLE_PROFILER=1
---> Using cache
---> 1cd1fddd9c3e
Step 9/15 : RUN apt-get -qq update && apt-get install -y --no-install-recommends wget procps
---> Using cache
---> 8d72bcfe09c3
Step 10/15 : RUN GRPC_HEALTH_PROBE_VERSION=v0.2.0 && wget -qO/bin/grpc_health_probe https://github.com/grpc-ecosystem/grpc-health-probe/releases/download/${GRPC_HEALTH_PROBE_VERSION}/grpc_health_probe-linux-amd64 && chmod +x /bin/grpc_health_probe
---> Using cache
---> 53fdf9a64c9f
Step 11/15 : WORKDIR /email_server
---> Using cache
---> 42bbaf2eecbb
Step 12/15 : COPY --from=builder /usr/local/lib/python3.7/ /usr/local/lib/python3.7/
---> 722fdcee222c
Step 13/15 : COPY . .
---> f6598fb56d5b
Step 14/15 : EXPOSE 8080
---> Running in 3af2dbb31aa4
---> 4038d845c910
Step 15/15 : ENTRYPOINT [ "python", "email_server.py" ]
---> Running in f4be2ddd276b
---> dce466901e6c
Successfully built dce466901e6c
Successfully tagged 10.0.80.205:5000/hipster/hipster_emailservice:latest
The push refers to repository [10.0.80.205:5000/hipster/hipster_emailservice]
b4e022e15f4e: Preparing
cd434a7b0ab1: Preparing
f51bffcdd5f9: Preparing
fc5b6c78d88e: Preparing
74438fe1759f: Preparing
55131b45c60c: Preparing
8506f6dcbf82: Preparing
4a36e2652108: Preparing
f9ef7f1bcb19: Preparing
02c055ef67f5: Preparing
55131b45c60c: Waiting
8506f6dcbf82: Waiting
4a36e2652108: Waiting
f9ef7f1bcb19: Waiting
02c055ef67f5: Waiting
fc5b6c78d88e: Mounted from hipster/hipster_hipster-emailservice
74438fe1759f: Mounted from hipster/hipster_hipster-emailservice
55131b45c60c: Layer already exists
f51bffcdd5f9: Mounted from hipster/hipster_hipster-emailservice
8506f6dcbf82: Layer already exists
f9ef7f1bcb19: Layer already exists
4a36e2652108: Layer already exists
02c055ef67f5: Layer already exists
b4e022e15f4e: Pushed
cd434a7b0ab1: Pushed
latest: digest: sha256:b2b38de467d72b259ee2b80dcf8941b67dcc5dbbeddac27c5b505c6693681675 size: 2422
Building [hipster/productcatalogservice]...
Sending build context to Docker daemon 163.8kB
Step 1/13 : FROM golang:1.14.7 AS builder
---> 0fc73a78e79d
Step 2/13 : WORKDIR /build/src
---> Using cache
---> 04507f2fb6bd
Step 3/13 : ENV GOPROXY https://goproxy.cn
---> Using cache
---> 79bd6a19d55f
Step 4/13 : COPY . .
---> bf1073981fa8
Step 5/13 : RUN go build -tags netgo -o /productcatalogservice .
---> Running in 9bc5224ebef6
go: downloading go.opentelemetry.io/otel v0.10.0
go: downloading go.opentelemetry.io/contrib v0.10.0
go: downloading google.golang.org/grpc v1.31.0
go: downloading github.com/GoogleCloudPlatform/microservices-demo v0.2.0
go: downloading github.com/golang/protobuf v1.4.2
go: downloading go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc v0.0.0-20200810162615-444937fc0fba
go: downloading github.com/sirupsen/logrus v1.4.2
go: downloading go.opentelemetry.io/otel/sdk v0.10.0
go: downloading go.opentelemetry.io/otel/exporters/trace/jaeger v0.10.0
go: downloading google.golang.org/protobuf v1.23.0
go: downloading golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1
go: downloading github.com/apache/thrift v0.13.0
go: downloading google.golang.org/api v0.29.0
go: downloading golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e
go: downloading google.golang.org/genproto v0.0.0-20200331122359-1ee6d9798940
go: downloading golang.org/x/text v0.3.2
go: downloading golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a
 ---> 8b4f3ee6953a
Step 6/13 : FROM alpine AS release
---> 6dbb9cc54074
Step 7/13 : RUN apk add --no-cache ca-certificates procps
---> Using cache
---> aeda954eee3a
Step 8/13 : RUN GRPC_HEALTH_PROBE_VERSION=v0.2.0 && wget -qO/bin/grpc_health_probe https://github.com/grpc-ecosystem/grpc-health-probe/releases/download/${GRPC_HEALTH_PROBE_VERSION}/grpc_health_probe-linux-amd64 && chmod +x /bin/grpc_health_probe
---> Using cache
---> e8720f0ae7dc
Step 9/13 : WORKDIR /productcatalogservice
---> Using cache
---> 3e468cdcd28a
Step 10/13 : COPY --from=builder /productcatalogservice ./server
---> 10054f0457dd
Step 11/13 : COPY products.json .
---> aed3b6c22633
Step 12/13 : EXPOSE 3550
---> Running in ddf1299f914c
---> 49394628352d
Step 13/13 : ENTRYPOINT ["/productcatalogservice/server"]
---> Running in 972af029228e
---> c8e9ed9cdd90
Successfully built c8e9ed9cdd90
Successfully tagged 10.0.80.205:5000/hipster/hipster_productcatalogservice:latest
The push refers to repository [10.0.80.205:5000/hipster/hipster_productcatalogservice]
1887ae5ceef0: Preparing
6dcd189a676a: Preparing
4bb72cf29b74: Preparing
804608a419b0: Preparing
42f8f0972c9e: Preparing
b2d5eeeaba3a: Preparing
b2d5eeeaba3a: Waiting
42f8f0972c9e: Mounted from hipster/hipster_hipster-productcatalogservice
4bb72cf29b74: Mounted from hipster/hipster_hipster-productcatalogservice
b2d5eeeaba3a: Layer already exists
804608a419b0: Mounted from hipster/hipster_hipster-productcatalogservice
1887ae5ceef0: Pushed
6dcd189a676a: Pushed
latest: digest: sha256:6c3643f6a46c578f73033e8e97a9679faf9a420a77b22d40ec8a5f15f5ce1842 size: 1575
Building [hipster/recommendationservice]...
Sending build context to Docker daemon 103.9kB
Step 1/11 : FROM python:3.7-slim
---> 867339bd5033
Step 2/11 : RUN apt-get update -qqy && apt-get -qqy install wget g++ procps && rm -rf /var/lib/apt/lists/*
---> Using cache
---> 5c9a228afeea
Step 3/11 : ENV PYTHONUNBUFFERED=0
---> Using cache
---> bf15c9ea442d
Step 4/11 : RUN GRPC_HEALTH_PROBE_VERSION=v0.2.0 && wget -qO/bin/grpc_health_probe https://github.com/grpc-ecosystem/grpc-health-probe/releases/download/${GRPC_HEALTH_PROBE_VERSION}/grpc_health_probe-linux-amd64 && chmod +x /bin/grpc_health_probe
---> Using cache
---> 09018502225c
Step 5/11 : WORKDIR /recommendationservice
---> Using cache
---> 3b58ee8bd035
Step 6/11 : COPY requirements.txt requirements.txt
---> f0b47482b49c
Step 7/11 : RUN pip install -r requirements.txt
---> Running in b412520e4039
Collecting cachetools==3.1.0
Downloading cachetools-3.1.0-py2.py3-none-any.whl (12 kB)
Collecting certifi==2018.11.29
Downloading certifi-2018.11.29-py2.py3-none-any.whl (154 kB)
Collecting chardet==3.0.4
Downloading chardet-3.0.4-py2.py3-none-any.whl (133 kB)
Collecting enum34==1.1.10
Downloading enum34-1.1.10-py3-none-any.whl (11 kB)
Collecting futures
Downloading futures-3.1.1-py3-none-any.whl (2.8 kB)
Collecting google-api-core[grpc]==1.6.0
Downloading google_api_core-1.6.0-py2.py3-none-any.whl (64 kB)
Collecting google-api-python-client==1.7.8
Downloading google_api_python_client-1.7.8-py3-none-any.whl (56 kB)
Collecting google-auth-httplib2==0.0.3
Downloading google_auth_httplib2-0.0.3-py2.py3-none-any.whl (6.3 kB)
Collecting google-auth==1.6.2
Downloading google_auth-1.6.2-py2.py3-none-any.whl (73 kB)
Collecting google-cloud-core==0.29.1
Downloading google_cloud_core-0.29.1-py2.py3-none-any.whl (25 kB)
Collecting google-cloud-profiler==1.0.8
Downloading google-cloud-profiler-1.0.8.tar.gz (31 kB)
Collecting google-cloud-trace==0.20.2
Downloading google_cloud_trace-0.20.2-py2.py3-none-any.whl (61 kB)
Collecting google-python-cloud-debugger==2.9
Downloading google_python_cloud_debugger-2.9-cp37-cp37m-manylinux1_x86_64.whl (460 kB)
Collecting googleapis-common-protos==1.5.6
Downloading googleapis-common-protos-1.5.6.tar.gz (33 kB)
Collecting grpcio-health-checking==1.13.0
Downloading grpcio-health-checking-1.13.0.tar.gz (4.5 kB)
Collecting grpcio==1.30.0
Downloading grpcio-1.30.0-cp37-cp37m-manylinux2010_x86_64.whl (3.0 MB)
Collecting httplib2==0.18.0
Downloading httplib2-0.18.0-py3-none-any.whl (95 kB)
Collecting idna==2.8
Downloading idna-2.8-py2.py3-none-any.whl (58 kB)
Collecting protobuf==3.6.1
Downloading protobuf-3.6.1-cp37-cp37m-manylinux1_x86_64.whl (1.1 MB)
Collecting pyasn1-modules==0.2.4
Downloading pyasn1_modules-0.2.4-py2.py3-none-any.whl (66 kB)
Collecting pyasn1==0.4.5
Downloading pyasn1-0.4.5-py2.py3-none-any.whl (73 kB)
Collecting python-json-logger==0.1.9
Downloading python_json_logger-0.1.9-py2.py3-none-any.whl (4.0 kB)
Collecting pytz==2018.9
Downloading pytz-2018.9-py2.py3-none-any.whl (510 kB)
Collecting pyyaml==5.1
Downloading PyYAML-5.1.tar.gz (274 kB)
Collecting requests==2.21.0
Downloading requests-2.21.0-py2.py3-none-any.whl (57 kB)
Collecting rsa==4.0
Downloading rsa-4.0-py2.py3-none-any.whl (38 kB)
Collecting six==1.12.0
Downloading six-1.12.0-py2.py3-none-any.whl (10 kB)
Collecting uritemplate==3.0.0
Downloading uritemplate-3.0.0-py2.py3-none-any.whl (10 kB)
Collecting urllib3==1.24.2
Downloading urllib3-1.24.2-py2.py3-none-any.whl (131 kB)
Collecting wrapt==1.12.1
Downloading wrapt-1.12.1.tar.gz (27 kB)
Collecting opentelemetry-api==0.12.b0
Downloading opentelemetry_api-0.12b0-py3-none-any.whl (43 kB)
Collecting opentelemetry-sdk==0.12.b0
Downloading opentelemetry_sdk-0.12b0-py3-none-any.whl (37 kB)
Collecting opentelemetry-exporter-jaeger==0.12.b0
Downloading opentelemetry_exporter_jaeger-0.12b0-py3-none-any.whl (27 kB)
Collecting opentelemetry-instrumentation-grpc==0.12.b0
Downloading opentelemetry_instrumentation_grpc-0.12b0-py3-none-any.whl (19 kB)
Collecting opentelemetry.instrumentation==0.12b0
Downloading opentelemetry_instrumentation-0.12b0-py3-none-any.whl (10 kB)
Collecting grpcio-tools==1.27.2
Downloading grpcio_tools-1.27.2-cp37-cp37m-manylinux2010_x86_64.whl (2.4 MB)
Collecting thrift==0.13.0
Downloading thrift-0.13.0.tar.gz (59 kB)
Collecting google-api-core<2.0.0dev,>=1.0.0
Downloading google_api_core-1.29.0-py2.py3-none-any.whl (93 kB)
Requirement already satisfied: setuptools in /usr/local/lib/python3.7/site-packages (from protobuf==3.6.1->-r requirements.txt (line 26)) (57.0.0)
Building wheels for collected packages: google-cloud-profiler, googleapis-common-protos, grpcio-health-checking, pyyaml, wrapt, thrift
Building wheel for google-cloud-profiler (setup.py): started
Building wheel for google-cloud-profiler (setup.py): finished with status 'done'
Created wheel for google-cloud-profiler: filename=google_cloud_profiler-1.0.8-cp37-cp37m-linux_x86_64.whl size=428052 sha256=5ddbafe1a990cbcee108027f950a6616bff25f69d8fedaf5dd8a6812ecb5aeea
Stored in directory: /root/.cache/pip/wheels/8f/c4/48/f41d1d859dfd6d87c06e751d27782dcfd9834f47dbd86a0eb4
Building wheel for googleapis-common-protos (setup.py): started
Building wheel for googleapis-common-protos (setup.py): finished with status 'done'
Created wheel for googleapis-common-protos: filename=googleapis_common_protos-1.5.6-py3-none-any.whl size=69376 sha256=2589671e1d998e4ef355729efaaaecc7cd54436b0117c4946ae24203ff2ca23e
Stored in directory: /root/.cache/pip/wheels/5e/af/b7/09ba83ed2fe779d0b976d31c57e5d9f373fc46701f95171d2b
Building wheel for grpcio-health-checking (setup.py): started
Building wheel for grpcio-health-checking (setup.py): finished with status 'done'
Created wheel for grpcio-health-checking: filename=grpcio_health_checking-1.13.0-py3-none-any.whl size=5670 sha256=45d1574d6d4bdf67230a862bbcc48165670f11450e2a28875ad89df67330c4f8
Stored in directory: /root/.cache/pip/wheels/e7/cc/c5/175a24f988e002bd9959b7326bcd6bcef078c79b53b4d122eb
Building wheel for pyyaml (setup.py): started
Building wheel for pyyaml (setup.py): finished with status 'done'
Created wheel for pyyaml: filename=PyYAML-5.1-cp37-cp37m-linux_x86_64.whl size=44091 sha256=aeb3b14d94dae20cded0b69d2577ae7536c1d14c5b3b42bd3af304b0d2fe2bc1
Stored in directory: /root/.cache/pip/wheels/77/f5/10/d00a2bd30928b972790053b5de0c703ca87324f3fead0f2fd9
Building wheel for wrapt (setup.py): started
Building wheel for wrapt (setup.py): finished with status 'done'
Created wheel for wrapt: filename=wrapt-1.12.1-cp37-cp37m-linux_x86_64.whl size=33303 sha256=4c71f3a765f188c53f6d0ff44d90a98c5d61156f1dd04144b3a997f6e3065b4c
Stored in directory: /root/.cache/pip/wheels/62/76/4c/aa25851149f3f6d9785f6c869387ad82b3fd37582fa8147ac6
Building wheel for thrift (setup.py): started
Building wheel for thrift (setup.py): finished with status 'done'
Created wheel for thrift: filename=thrift-0.13.0-cp37-cp37m-linux_x86_64.whl size=182577 sha256=3c39bf826ba06a0eff827b8212d399c8d2c1e757ea2595f64bec5e8184440fe8
Stored in directory: /root/.cache/pip/wheels/79/35/5a/19f5dadf91f62bd783aaa8385f700de9bc14772e09ab0f006a
Successfully built google-cloud-profiler googleapis-common-protos grpcio-health-checking pyyaml wrapt thrift
Installing collected packages: six, pyasn1, urllib3, rsa, pyasn1-modules, protobuf, idna, chardet, certifi, cachetools, requests, pytz, httplib2, googleapis-common-protos, google-auth, uritemplate, opentelemetry-api, grpcio, google-auth-httplib2, google-api-core, wrapt, thrift, pyyaml, opentelemetry-sdk, google-cloud-core, google-api-python-client, python-json-logger, opentelemetry-instrumentation-grpc, opentelemetry.instrumentation, opentelemetry-exporter-jaeger, grpcio-tools, grpcio-health-checking, google-python-cloud-debugger, google-cloud-trace, google-cloud-profiler, futures, enum34
Successfully installed cachetools-3.1.0 certifi-2018.11.29 chardet-3.0.4 enum34-1.1.10 futures-3.1.1 google-api-core-1.6.0 google-api-python-client-1.7.8 google-auth-1.6.2 google-auth-httplib2-0.0.3 google-cloud-core-0.29.1 google-cloud-profiler-1.0.8 google-cloud-trace-0.20.2 google-python-cloud-debugger-2.9 googleapis-common-protos-1.5.6 grpcio-1.30.0 grpcio-health-checking-1.13.0 grpcio-tools-1.27.2 httplib2-0.18.0 idna-2.8 opentelemetry-api-0.12b0 opentelemetry-exporter-jaeger-0.12b0 opentelemetry-instrumentation-grpc-0.12b0 opentelemetry-sdk-0.12b0 opentelemetry.instrumentation-0.12b0 protobuf-3.6.1 pyasn1-0.4.5 pyasn1-modules-0.2.4 python-json-logger-0.1.9 pytz-2018.9 pyyaml-5.1 requests-2.21.0 rsa-4.0 six-1.12.0 thrift-0.13.0 uritemplate-3.0.0 urllib3-1.24.2 wrapt-1.12.1
WARNING: Running pip as root will break packages and permissions. You should install packages reliably by using venv: https://pip.pypa.io/warnings/venv
 ---> f70a92388072
Step 8/11 : COPY . .
---> ecf97047d68d
Step 9/11 : ENV PORT "8080"
---> Running in bc0e7c99fb6a
---> 5abf5e2571e7
Step 10/11 : EXPOSE 8080
---> Running in 2cd2b1199e13
---> bb6a33ff65f3
Step 11/11 : ENTRYPOINT ["python", "/recommendationservice/recommendation_server.py"]
---> Running in 4eb3fd582cc8
---> cb81a29da5d5
Successfully built cb81a29da5d5
Successfully tagged 10.0.80.205:5000/hipster/hipster_recommendationservice:latest
The push refers to repository [10.0.80.205:5000/hipster/hipster_recommendationservice]
23b4cdc70c28: Preparing
16333196fa8d: Preparing
c32c3bbc0464: Preparing
442094ec1085: Preparing
2efafd8084b7: Preparing
d659c147796b: Preparing
55131b45c60c: Preparing
8506f6dcbf82: Preparing
4a36e2652108: Preparing
f9ef7f1bcb19: Preparing
02c055ef67f5: Preparing
d659c147796b: Waiting
55131b45c60c: Waiting
8506f6dcbf82: Waiting
4a36e2652108: Waiting
f9ef7f1bcb19: Waiting
02c055ef67f5: Waiting
442094ec1085: Pushed
c32c3bbc0464: Pushed
55131b45c60c: Layer already exists
23b4cdc70c28: Pushed
4a36e2652108: Layer already exists
8506f6dcbf82: Layer already exists
2efafd8084b7: Pushed
f9ef7f1bcb19: Layer already exists
02c055ef67f5: Layer already exists
16333196fa8d: Pushed
d659c147796b: Pushed
latest: digest: sha256:af0b62d936c8fe704c855952a61231b526db932682401c1be1b7ee345992c82b size: 2629
Building [hipster/shippingservice]...
Sending build context to Docker daemon 157.2kB
Step 1/12 : FROM golang:1.14.7 AS builder
---> 0fc73a78e79d
Step 2/12 : WORKDIR /build/src
---> Using cache
---> 04507f2fb6bd
Step 3/12 : ENV GOPROXY https://goproxy.cn
---> Using cache
---> 79bd6a19d55f
Step 4/12 : COPY . .
---> 964dee28094a
Step 5/12 : RUN go build -tags netgo -o shippingservice
---> Running in 22c731fbec98
go: downloading go.opentelemetry.io/otel v0.10.0
go: downloading google.golang.org/grpc v1.31.0
go: downloading golang.org/x/net v0.0.0-20200707034311-ab3426394381
go: downloading go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc v0.0.0-20200810162615-444937fc0fba
go: downloading github.com/GoogleCloudPlatform/microservices-demo v0.2.0
go: downloading github.com/sirupsen/logrus v1.6.0
go: downloading go.opentelemetry.io/otel/exporters/trace/jaeger v0.10.0
go: downloading go.opentelemetry.io/otel/sdk v0.10.0
go: downloading github.com/golang/protobuf v1.4.2
go: downloading golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1
go: downloading google.golang.org/protobuf v1.23.0
go: downloading github.com/apache/thrift v0.13.0
go: downloading google.golang.org/genproto v0.0.0-20200331122359-1ee6d9798940
go: downloading google.golang.org/api v0.29.0
go: downloading golang.org/x/text v0.3.2
go: downloading golang.org/x/sync v0.0.0-20200625203802-6e8e738ad208
 ---> 0530505e549a
Step 6/12 : FROM alpine as release
---> 6dbb9cc54074
Step 7/12 : RUN apk add --no-cache ca-certificates procps
---> Using cache
---> aeda954eee3a
Step 8/12 : RUN GRPC_HEALTH_PROBE_VERSION=v0.2.0 && wget -qO/bin/grpc_health_probe https://github.com/grpc-ecosystem/grpc-health-probe/releases/download/${GRPC_HEALTH_PROBE_VERSION}/grpc_health_probe-linux-amd64 && chmod +x /bin/grpc_health_probe
---> Using cache
---> e8720f0ae7dc
Step 9/12 : COPY --from=builder /build/src/shippingservice /shippingservice
---> 3d924a0e795c
Step 10/12 : ENV APP_PORT=50051
---> Running in cc57b80ba315
---> 599c5c296ed6
Step 11/12 : EXPOSE 50051
---> Running in 5e22c84bb06f
---> 0f0f92479b41
Step 12/12 : ENTRYPOINT ["/shippingservice"]
---> Running in d94339a9b5c1
---> cb8c94148c35
Successfully built cb8c94148c35
Successfully tagged 10.0.80.205:5000/hipster/hipster_shippingservice:latest
The push refers to repository [10.0.80.205:5000/hipster/hipster_shippingservice]
9009f8cce130: Preparing
804608a419b0: Preparing
42f8f0972c9e: Preparing
b2d5eeeaba3a: Preparing
b2d5eeeaba3a: Layer already exists
804608a419b0: Mounted from hipster/hipster_productcatalogservice
42f8f0972c9e: Mounted from hipster/hipster_productcatalogservice
9009f8cce130: Pushed
latest: digest: sha256:db702354862ab5842c6dd0cd2a6239581e7283c48bda9963becac84a90cc2282 size: 1160
Building [hipster/checkoutservice]...
Sending build context to Docker daemon 172kB
Step 1/11 : FROM golang:1.14.7 AS builder
---> 0fc73a78e79d
Step 2/11 : WORKDIR /build/src
---> Using cache
---> 04507f2fb6bd
Step 3/11 : ENV GOPROXY https://goproxy.cn
---> Using cache
---> 79bd6a19d55f
Step 4/11 : COPY . .
---> 1e8e575d885c
Step 5/11 : RUN go build -gcflags='-N -l' -tags netgo -o /checkoutservice .
---> Running in 35244979267f
go: downloading github.com/GoogleCloudPlatform/microservices-demo v0.2.0
go: downloading github.com/google/uuid v1.1.1
go: downloading go.opentelemetry.io/otel v0.10.0
go: downloading go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc v0.0.0-20200810162615-444937fc0fba
go: downloading google.golang.org/grpc v1.31.0
go: downloading github.com/golang/protobuf v1.4.2
go: downloading google.golang.org/protobuf v1.23.0
go: downloading go.opentelemetry.io/otel/sdk v0.10.0
go: downloading go.opentelemetry.io/otel/exporters/trace/jaeger v0.10.0
go: downloading golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e
go: downloading google.golang.org/genproto v0.0.0-20200331122359-1ee6d9798940
go: downloading github.com/sirupsen/logrus v1.4.2
go: downloading github.com/apache/thrift v0.13.0
go: downloading golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1
go: downloading google.golang.org/api v0.29.0
go: downloading golang.org/x/text v0.3.2
go: downloading golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a
 ---> 8d0a002d7058
Step 6/11 : FROM alpine as release
---> 6dbb9cc54074
Step 7/11 : RUN apk add --no-cache ca-certificates procps
---> Using cache
---> aeda954eee3a
Step 8/11 : RUN GRPC_HEALTH_PROBE_VERSION=v0.2.0 && wget -qO/bin/grpc_health_probe https://github.com/grpc-ecosystem/grpc-health-probe/releases/download/${GRPC_HEALTH_PROBE_VERSION}/grpc_health_probe-linux-amd64 && chmod +x /bin/grpc_health_probe
---> Using cache
---> e8720f0ae7dc
Step 9/11 : COPY --from=builder /checkoutservice /checkoutservice
---> 6400a6b2c86a
Step 10/11 : EXPOSE 5050
---> Running in 97fe943f4505
---> 5f2747131249
Step 11/11 : ENTRYPOINT ["/checkoutservice"]
---> Running in 9b9f07d17d82
---> 431ce1b436a2
Successfully built 431ce1b436a2
Successfully tagged 10.0.80.205:5000/hipster/hipster_checkoutservice:latest
The push refers to repository [10.0.80.205:5000/hipster/hipster_checkoutservice]
09ca013958ef: Preparing
804608a419b0: Preparing
42f8f0972c9e: Preparing
b2d5eeeaba3a: Preparing
b2d5eeeaba3a: Layer already exists
42f8f0972c9e: Mounted from hipster/hipster_shippingservice
804608a419b0: Mounted from hipster/hipster_shippingservice
09ca013958ef: Pushed
latest: digest: sha256:bd04ce8538639e684e547c4f6188fa972a56f71c151bbfa8a047618f105071b9 size: 1160
Building [hipster/paymentservice]...
Sending build context to Docker daemon 153.1kB
Step 1/13 : FROM node:12-alpine as base
12-alpine: Pulling from library/node
ddad3d7c1e96: Already exists
3a8370f05d5d: Already exists
71a8563b7fea: Already exists
119c7e14957d: Already exists
Digest: sha256:9a372efac4c436dfb6dbdea42f08d3ea60a0103a1df54a7da247e4bed1b327f7
Status: Downloaded newer image for node:12-alpine
---> deeae3752431
Step 2/13 : FROM base as builder
---> deeae3752431
Step 3/13 : RUN apk add --update --no-cache python make g++ procps
---> Running in 68192206955b
fetch http://dl-cdn.alpinelinux.org/alpine/v3.11/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.11/community/x86_64/APKINDEX.tar.gz
(1/24) Installing binutils (2.33.1-r1)
(2/24) Installing gmp (6.1.2-r1)
(3/24) Installing isl (0.18-r0)
(4/24) Installing libgomp (9.3.0-r0)
(5/24) Installing libatomic (9.3.0-r0)
(6/24) Installing mpfr4 (4.0.2-r1)
(7/24) Installing mpc1 (1.1.0-r1)
(8/24) Installing gcc (9.3.0-r0)
(9/24) Installing musl-dev (1.1.24-r3)
(10/24) Installing libc-dev (0.7.2-r0)
(11/24) Installing g++ (9.3.0-r0)
(12/24) Installing make (4.2.1-r2)
(13/24) Installing libintl (0.20.1-r2)
(14/24) Installing ncurses-terminfo-base (6.1_p20200118-r4)
(15/24) Installing ncurses-libs (6.1_p20200118-r4)
(16/24) Installing libproc (3.3.16-r0)
(17/24) Installing procps (3.3.16-r0)
(18/24) Installing libbz2 (1.0.8-r1)
(19/24) Installing expat (2.2.9-r1)
(20/24) Installing libffi (3.2.1-r6)
(21/24) Installing gdbm (1.13-r1)
(22/24) Installing readline (8.0.1-r0)
(23/24) Installing sqlite-libs (3.30.1-r2)
(24/24) Installing python2 (2.7.18-r0)
Executing busybox-1.31.1-r10.trigger
OK: 213 MiB in 40 packages
---> 4fc04baa216f
Step 4/13 : WORKDIR /usr/src/app
---> Running in d05ddcfd66d4
---> 0cd46cdd67a7
Step 5/13 : COPY package*.json ./
---> 3cd1a53a4d3c
Step 6/13 : RUN npm install --only=production
---> Running in 0412330b56bf
npm WARN deprecated @opentelemetry/plugin-grpc@0.10.2: Deprecated in favor of @opentelemetry/instrumentation-grpc

> pprof@1.1.0 install /usr/src/app/node_modules/pprof
> node-pre-gyp install --fallback-to-build
node-pre-gyp WARN Using needle for node-pre-gyp https download
[pprof] Success: "/usr/src/app/node_modules/pprof/build/node-v72-linux-x64-musl/pprof.node" is installed via remote
> grpc@1.22.2 install /usr/src/app/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library
node-pre-gyp WARN Using needle for node-pre-gyp https download
node-pre-gyp WARN Pre-built binaries not installable for grpc@1.22.2 and node@12.22.1 (node-v72 ABI, musl) (falling back to source compile with node-gyp)
node-pre-gyp WARN Hit error bad download
make: Entering directory '/usr/src/app/node_modules/grpc/build'
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/init.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/avl/avl.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/backoff/backoff.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/channel/channel_args.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/channel/channel_stack.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/channel/channel_stack_builder.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/channel/channel_trace.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/channel/channelz.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/channel/channelz_registry.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/channel/connected_channel.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/channel/handshaker.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/channel/handshaker_registry.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/channel/status_util.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/compression/compression.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/compression/compression_args.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/compression/compression_internal.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/compression/message_compress.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/compression/stream_compression.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/compression/stream_compression_gzip.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/compression/stream_compression_identity.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/debug/stats.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/debug/stats_data.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/http/format_request.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/http/httpcli.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/http/parser.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/buffer_list.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/call_combiner.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/cfstream_handle.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/combiner.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/endpoint.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/endpoint_cfstream.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/endpoint_pair_posix.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/endpoint_pair_uv.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/endpoint_pair_windows.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/error.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/error_cfstream.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/ev_epoll1_linux.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/ev_epollex_linux.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/ev_poll_posix.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/ev_posix.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/ev_windows.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/exec_ctx.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/executor.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/fork_posix.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/fork_windows.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/gethostname_fallback.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/gethostname_host_name_max.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/gethostname_sysconf.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/grpc_if_nametoindex_posix.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/grpc_if_nametoindex_unsupported.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/internal_errqueue.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/iocp_windows.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/iomgr.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/iomgr_custom.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/iomgr_internal.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/iomgr_posix.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/iomgr_posix_cfstream.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/iomgr_uv.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/iomgr_windows.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/is_epollexclusive_available.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/load_file.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/lockfree_event.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/polling_entity.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/pollset.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/pollset_custom.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/pollset_set.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/pollset_set_custom.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/pollset_set_windows.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/pollset_uv.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/pollset_windows.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/resolve_address.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/resolve_address_custom.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/resolve_address_posix.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/resolve_address_windows.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/resource_quota.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/sockaddr_utils.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/socket_factory_posix.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/socket_mutator.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/socket_utils_common_posix.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/socket_utils_linux.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/socket_utils_posix.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/socket_utils_uv.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/socket_utils_windows.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/socket_windows.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/tcp_client.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/tcp_client_cfstream.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/tcp_client_custom.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/tcp_client_posix.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/tcp_client_windows.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/tcp_custom.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/tcp_posix.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/tcp_server.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/tcp_server_custom.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/tcp_server_posix.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/tcp_server_utils_posix_common.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/tcp_server_utils_posix_ifaddrs.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/tcp_server_utils_posix_noifaddrs.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/tcp_server_windows.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/tcp_uv.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/tcp_windows.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/time_averaged_stats.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/timer.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/timer_custom.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/timer_generic.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/timer_heap.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/timer_manager.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/timer_uv.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/udp_server.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/unix_sockets_posix.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/unix_sockets_posix_noop.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/wakeup_fd_eventfd.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/wakeup_fd_nospecial.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/wakeup_fd_pipe.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/iomgr/wakeup_fd_posix.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/json/json.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/json/json_reader.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/json/json_string.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/json/json_writer.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/slice/b64.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/slice/percent_encoding.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/slice/slice.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/slice/slice_buffer.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/slice/slice_intern.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/slice/slice_string_helpers.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/api_trace.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/byte_buffer.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/byte_buffer_reader.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/call.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/call_details.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/call_log_batch.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/channel.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/channel_init.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/channel_ping.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/channel_stack_type.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/completion_queue.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/completion_queue_factory.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/event_string.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/lame_client.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/metadata_array.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/server.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/validate_metadata.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/version.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/transport/bdp_estimator.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/transport/byte_stream.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/transport/connectivity_state.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/transport/error_utils.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/transport/metadata.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/transport/metadata_batch.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/transport/pid_controller.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/transport/static_metadata.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/transport/status_conversion.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/transport/status_metadata.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/transport/timeout_encoding.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/transport/transport.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/transport/transport_op_string.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/uri/uri_parser.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/debug/trace.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/server/secure/server_secure_chttp2.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/bin_decoder.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/bin_encoder.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/chttp2_plugin.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/chttp2_transport.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/context_list.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/flow_control.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/frame_data.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/frame_goaway.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/frame_ping.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/frame_rst_stream.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/frame_settings.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/frame_window_update.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/hpack_encoder.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/hpack_parser.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/hpack_table.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/http2_settings.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/huffsyms.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/incoming_metadata.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/parsing.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/stream_lists.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/stream_map.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/varint.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/transport/writing.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/alpn/alpn.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/http/client/http_client_filter.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/http/http_filters_plugin.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/http/message_compress/message_compress_filter.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/http/server/http_server_filter.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/http/httpcli_security_connector.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/context/security_context.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/alts/alts_credentials.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/composite/composite_credentials.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/credentials.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/credentials_metadata.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/fake/fake_credentials.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/google_default/credentials_generic.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/google_default/google_default_credentials.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/iam/iam_credentials.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/jwt/json_token.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/jwt/jwt_credentials.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/jwt/jwt_verifier.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/local/local_credentials.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/oauth2/oauth2_credentials.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/plugin/plugin_credentials.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/ssl/ssl_credentials.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/tls/grpc_tls_credentials_options.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/tls/spiffe_credentials.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/security_connector/alts/alts_security_connector.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/security_connector/fake/fake_security_connector.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/security_connector/load_system_roots_fallback.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/security_connector/load_system_roots_linux.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/security_connector/local/local_security_connector.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/security_connector/security_connector.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/security_connector/ssl/ssl_security_connector.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/security_connector/ssl_utils.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/security_connector/tls/spiffe_security_connector.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/transport/client_auth_filter.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/transport/secure_endpoint.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/transport/security_handshaker.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/transport/server_auth_filter.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/transport/target_authority_table.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/transport/tsi_error.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/util/json_util.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/surface/init_secure.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/crypt/aes_gcm.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/crypt/gsec.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/frame_protector/alts_counter.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/frame_protector/alts_crypter.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/frame_protector/alts_frame_protector.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/frame_protector/alts_record_protocol_crypter_common.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/frame_protector/alts_seal_privacy_integrity_crypter.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/frame_protector/alts_unseal_privacy_integrity_crypter.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/frame_protector/frame_handler.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/handshaker/alts_handshaker_client.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/handshaker/alts_shared_resource.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/handshaker/alts_tsi_handshaker.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_integrity_only_record_protocol.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_privacy_integrity_record_protocol.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/zero_copy_frame_protector/alts_grpc_record_protocol_common.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/zero_copy_frame_protector/alts_iovec_record_protocol.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/zero_copy_frame_protector/alts_zero_copy_grpc_protector.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/alts/check_gcp_environment.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/alts/check_gcp_environment_linux.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/alts/check_gcp_environment_no_op.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/alts/check_gcp_environment_windows.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/alts/grpc_alts_credentials_client_options.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/alts/grpc_alts_credentials_options.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/lib/security/credentials/alts/grpc_alts_credentials_server_options.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/handshaker/alts_handshaker_service_api.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/handshaker/alts_handshaker_service_api_util.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/handshaker/alts_tsi_utils.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/handshaker/transport_security_common_api.o
CC(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/handshaker/altscontext.pb.o
CC(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/handshaker/handshaker.pb.o
CC(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/alts/handshaker/transport_security_common.pb.o
CC(target) Release/obj.target/grpc/deps/grpc/third_party/nanopb/pb_common.o
CC(target) Release/obj.target/grpc/deps/grpc/third_party/nanopb/pb_decode.o
CC(target) Release/obj.target/grpc/deps/grpc/third_party/nanopb/pb_encode.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/transport_security.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/client/insecure/channel_create.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/client/insecure/channel_create_posix.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/client/authority.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/client/chttp2_connector.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/backup_poller.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/channel_connectivity.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/client_channel.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/client_channel_channelz.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/client_channel_factory.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/client_channel_plugin.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/connector.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/global_subchannel_pool.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/health/health_check_client.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/http_connect_handshaker.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/http_proxy.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/lb_policy.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/lb_policy_registry.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/local_subchannel_pool.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/parse_address.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/proxy_mapper.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/proxy_mapper_registry.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/resolver.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/resolver_registry.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/resolver_result_parsing.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/resolving_lb_policy.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/retry_throttle.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/server_address.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/service_config.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/subchannel.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/subchannel_pool_interface.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/deadline/deadline_filter.o
CC(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/health/health.pb.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/fake_transport_security.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/local_transport_security.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/ssl/session_cache/ssl_session_boringssl.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/ssl/session_cache/ssl_session_cache.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/ssl/session_cache/ssl_session_openssl.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/ssl_transport_security.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/tsi/transport_security_grpc.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/server/chttp2_server.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/client/secure/secure_channel_create.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/server/insecure/server_chttp2.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/chttp2/server/insecure/server_chttp2_posix.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/inproc/inproc_plugin.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/transport/inproc/inproc_transport.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/lb_policy/grpclb/client_load_reporting_filter.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_channel_secure.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/lb_policy/grpclb/grpclb_client_stats.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/lb_policy/grpclb/load_balancer_api.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/resolver/fake/fake_resolver.o
CC(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/google/protobuf/duration.pb.o
CC(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/google/protobuf/timestamp.pb.o
CC(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/lb_policy/grpclb/proto/grpc/lb/v1/load_balancer.pb.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/lb_policy/xds/xds.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/lb_policy/xds/xds_channel_secure.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/lb_policy/xds/xds_client_stats.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/lb_policy/xds/xds_load_balancer_api.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/lb_policy/pick_first/pick_first.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/lb_policy/round_robin/round_robin.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/dns_resolver_ares.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_libuv.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_posix.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_ev_driver_windows.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_fallback.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_libuv.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_posix.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/resolver/dns/c_ares/grpc_ares_wrapper_windows.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/resolver/dns/dns_resolver_selection.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/resolver/dns/native/dns_resolver.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/client_channel/resolver/sockaddr/sockaddr_resolver.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/census/grpc_context.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/max_age/max_age_filter.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/message_size/message_size_filter.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/http/client_authority_filter.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/workarounds/workaround_cronet_compression_filter.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/ext/filters/workarounds/workaround_utils.o
CXX(target) Release/obj.target/grpc/deps/grpc/src/core/plugin_registry/grpc_plugin_registry.o
AR(target) Release/obj.target/libgrpc.a
COPY Release/libgrpc.a
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/alloc.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/atm.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/cpu_iphone.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/cpu_linux.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/cpu_posix.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/cpu_windows.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/env_linux.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/env_posix.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/env_windows.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/host_port.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/log.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/log_android.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/log_linux.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/log_posix.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/log_windows.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/mpscq.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/murmur_hash.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/string.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/string_posix.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/string_util_windows.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/string_windows.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/sync.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/sync_posix.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/sync_windows.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/time.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/time_posix.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/time_precise.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/time_windows.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/tls_pthread.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/tmpfile_msys.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/tmpfile_posix.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/tmpfile_windows.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gpr/wrap_memcpy.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gprpp/arena.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gprpp/fork.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gprpp/global_config_env.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gprpp/thd_posix.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/gprpp/thd_windows.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/profiling/basic_timers.o
CXX(target) Release/obj.target/gpr/deps/grpc/src/core/lib/profiling/stap_timers.o
AR(target) Release/obj.target/libgpr.a
COPY Release/libgpr.a
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares__close_sockets.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares__get_hostent.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares__read_line.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares__timeval.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_cancel.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_create_query.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_data.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_destroy.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_expand_name.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_expand_string.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_fds.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_free_hostent.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_free_string.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_getenv.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_gethostbyaddr.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_gethostbyname.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_getnameinfo.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_getopt.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_getsock.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_init.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_library_init.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_llist.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_mkquery.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_nowarn.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_options.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_parse_a_reply.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_parse_aaaa_reply.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_parse_mx_reply.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_parse_naptr_reply.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_parse_ns_reply.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_parse_ptr_reply.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_parse_soa_reply.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_parse_srv_reply.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_parse_txt_reply.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_platform.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_process.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_query.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_search.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_send.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_strcasecmp.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_strdup.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_strerror.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_strsplit.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_timeout.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_version.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/ares_writev.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/bitncmp.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/inet_net_pton.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/inet_ntop.o
CC(target) Release/obj.target/ares/deps/grpc/third_party/cares/cares/windows_port.o
AR(target) Release/obj.target/libares.a
COPY Release/libares.a
CC(target) Release/obj.target/address_sorting/deps/grpc/third_party/address_sorting/address_sorting.o
CC(target) Release/obj.target/address_sorting/deps/grpc/third_party/address_sorting/address_sorting_posix.o
CC(target) Release/obj.target/address_sorting/deps/grpc/third_party/address_sorting/address_sorting_windows.o
AR(target) Release/obj.target/libaddress_sorting.a
COPY Release/libaddress_sorting.a
CXX(target) Release/obj.target/grpc_node/ext/byte_buffer.o
CXX(target) Release/obj.target/grpc_node/ext/call.o
CXX(target) Release/obj.target/grpc_node/ext/call_credentials.o
CXX(target) Release/obj.target/grpc_node/ext/channel.o
CXX(target) Release/obj.target/grpc_node/ext/channel_credentials.o
CXX(target) Release/obj.target/grpc_node/ext/completion_queue.o
CXX(target) Release/obj.target/grpc_node/ext/node_grpc.o
CXX(target) Release/obj.target/grpc_node/ext/server.o
CXX(target) Release/obj.target/grpc_node/ext/server_credentials.o
CXX(target) Release/obj.target/grpc_node/ext/slice.o
CXX(target) Release/obj.target/grpc_node/ext/timeval.o
SOLINK_MODULE(target) Release/obj.target/grpc_node.node
COPY Release/grpc_node.node
COPY /usr/src/app/node_modules/grpc/src/node/extension_binary/node-v72-linux-x64-musl/grpc_node.node
TOUCH Release/obj.target/action_after_build.stamp
make: Leaving directory '/usr/src/app/node_modules/grpc/build'
> protobufjs@6.8.6 postinstall /usr/src/app/node_modules/@grpc/proto-loader/node_modules/protobufjs
> node scripts/postinstall
> protobufjs@6.8.8 postinstall /usr/src/app/node_modules/protobufjs
> node scripts/postinstall
added 317 packages from 238 contributors and audited 497 packages in 237.437s
2 packages are looking for funding
run `npm fund` for details
found 57 vulnerabilities (35 low, 3 moderate, 19 high)
run `npm audit fix` to fix them, or `npm audit` for details
---> e0b0791529d5
Step 7/13 : FROM base
---> deeae3752431
Step 8/13 : RUN GRPC_HEALTH_PROBE_VERSION=v0.2.0 && wget -qO/bin/grpc_health_probe https://github.com/grpc-ecosystem/grpc-health-probe/releases/download/${GRPC_HEALTH_PROBE_VERSION}/grpc_health_probe-linux-amd64 && chmod +x /bin/grpc_health_probe
---> Running in 0848f57464d9
---> 7a95adfa1881
Step 9/13 : WORKDIR /usr/src/app
---> Running in 0b405cd110b6
---> c308f6f59827
Step 10/13 : COPY --from=builder /usr/src/app/node_modules ./node_modules
---> 1ea1990c4bc9
Step 11/13 : COPY . .
---> ab1e0cd9945e
Step 12/13 : EXPOSE 50051
---> Running in fee208287caa
---> 03aec609b9ea
Step 13/13 : ENTRYPOINT [ "node", "index.js" ]
---> Running in ad7b18447972
---> 72ab12b33f80
Successfully built 72ab12b33f80
Successfully tagged 10.0.80.205:5000/hipster/hipster_paymentservice:latest
The push refers to repository [10.0.80.205:5000/hipster/hipster_paymentservice]
cb0524c5c789: Preparing
b0ffa3cb7a23: Preparing
ee22109982a6: Preparing
5e31302dcabf: Preparing
c29549fbad68: Preparing
efc48a5f6f42: Preparing
33816ea3af7a: Preparing
9a5d14f9f550: Preparing
efc48a5f6f42: Waiting
33816ea3af7a: Waiting
9a5d14f9f550: Waiting
c29549fbad68: Layer already exists
efc48a5f6f42: Layer already exists
33816ea3af7a: Layer already exists
cb0524c5c789: Pushed
9a5d14f9f550: Layer already exists
ee22109982a6: Pushed
5e31302dcabf: Pushed
b0ffa3cb7a23: Pushed
latest: digest: sha256:ff628eba72b815fec73f956371106fa4a9ed5374feffa7f92278680c700f6c05 size: 1997
Building [hipster/currencyservice]...
Sending build context to Docker daemon 158.7kB
Step 1/13 : FROM node:12-alpine as base
---> deeae3752431
Step 2/13 : FROM base as builder
---> deeae3752431
Step 3/13 : RUN apk add --update --no-cache python make g++
---> Running in 6b839a6167f6
fetch http://dl-cdn.alpinelinux.org/alpine/v3.11/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.11/community/x86_64/APKINDEX.tar.gz
(1/21) Installing binutils (2.33.1-r1)
(2/21) Installing gmp (6.1.2-r1)
(3/21) Installing isl (0.18-r0)
(4/21) Installing libgomp (9.3.0-r0)
(5/21) Installing libatomic (9.3.0-r0)
(6/21) Installing mpfr4 (4.0.2-r1)
(7/21) Installing mpc1 (1.1.0-r1)
(8/21) Installing gcc (9.3.0-r0)
(9/21) Installing musl-dev (1.1.24-r3)
(10/21) Installing libc-dev (0.7.2-r0)
(11/21) Installing g++ (9.3.0-r0)
(12/21) Installing make (4.2.1-r2)
(13/21) Installing libbz2 (1.0.8-r1)
(14/21) Installing expat (2.2.9-r1)
(15/21) Installing libffi (3.2.1-r6)
(16/21) Installing gdbm (1.13-r1)
(17/21) Installing ncurses-terminfo-base (6.1_p20200118-r4)
(18/21) Installing ncurses-libs (6.1_p20200118-r4)
(19/21) Installing readline (8.0.1-r0)
(20/21) Installing sqlite-libs (3.30.1-r2)
(21/21) Installing python2 (2.7.18-r0)
Executing busybox-1.31.1-r10.trigger
OK: 212 MiB in 37 packages
---> efb33c2cfb89
Step 4/13 : WORKDIR /usr/src/app
---> Running in d304365b6481
---> 1414cae75b7d
Step 5/13 : COPY package*.json ./
---> 8b8c2818f272
Step 6/13 : RUN npm install --only=production
---> Running in cf50e1321cab
npm WARN deprecated @opentelemetry/plugin-grpc@0.10.2: Deprecated in favor of @opentelemetry/instrumentation-grpc

> pprof@1.1.0 install /usr/src/app/node_modules/pprof
> node-pre-gyp install --fallback-to-build
node-pre-gyp WARN Using request for node-pre-gyp https download
[pprof] Success: "/usr/src/app/node_modules/pprof/build/node-v72-linux-x64-musl/pprof.node" is installed via remote
> grpc@1.22.2 install /usr/src/app/node_modules/grpc
> node-pre-gyp install --fallback-to-build --library=static_library
node-pre-gyp WARN Using request for node-pre-gyp https download
[grpc] Success: "/usr/src/app/node_modules/grpc/src/node/extension_binary/node-v72-linux-x64-musl/grpc_node.node" is installed via remote
> protobufjs@6.8.8 postinstall /usr/src/app/node_modules/protobufjs
> node scripts/postinstall
added 358 packages from 329 contributors and audited 532 packages in 23.177s
2 packages are looking for funding
run `npm fund` for details
found 57 vulnerabilities (35 low, 3 moderate, 19 high)
run `npm audit fix` to fix them, or `npm audit` for details
---> 9ac56a5e3b7b
Step 7/13 : FROM base
---> deeae3752431
Step 8/13 : RUN GRPC_HEALTH_PROBE_VERSION=v0.2.0 && wget -qO/bin/grpc_health_probe https://github.com/grpc-ecosystem/grpc-health-probe/releases/download/${GRPC_HEALTH_PROBE_VERSION}/grpc_health_probe-linux-amd64 && chmod +x /bin/grpc_health_probe
---> Using cache
---> 7a95adfa1881
Step 9/13 : WORKDIR /usr/src/app
---> Using cache
---> c308f6f59827
Step 10/13 : COPY --from=builder /usr/src/app/node_modules ./node_modules
---> eb38eb43b9b0
Step 11/13 : COPY . .
---> 143cf2d72092
Step 12/13 : EXPOSE 7000
---> Running in 8544f0adc451
---> d539b91bb502
Step 13/13 : CMD [ "node", "server.js" ]
---> Running in 25c9aa3d5278
---> 0ae0bed09711
Successfully built 0ae0bed09711
Successfully tagged 10.0.80.205:5000/hipster/hipster_currencyservice:latest
The push refers to repository [10.0.80.205:5000/hipster/hipster_currencyservice]
f183a5812120: Preparing
2a4dd5b7ba60: Preparing
ee22109982a6: Preparing
5e31302dcabf: Preparing
c29549fbad68: Preparing
efc48a5f6f42: Preparing
33816ea3af7a: Preparing
9a5d14f9f550: Preparing
33816ea3af7a: Waiting
efc48a5f6f42: Waiting
9a5d14f9f550: Waiting
c29549fbad68: Layer already exists
efc48a5f6f42: Layer already exists
ee22109982a6: Mounted from hipster/hipster_paymentservice
5e31302dcabf: Mounted from hipster/hipster_paymentservice
33816ea3af7a: Layer already exists
9a5d14f9f550: Layer already exists
f183a5812120: Pushed
2a4dd5b7ba60: Pushed
latest: digest: sha256:a14ce3952a441c38e91c9706e10b6916d12742a856b23e2ab3b5fb757e646423 size: 1997
Building [hipster/cartservice]...
Sending build context to Docker daemon 51.71kB
Step 1/10 : FROM mcr.microsoft.com/dotnet/core/sdk:3.1-buster as builder
3.1-buster: Pulling from dotnet/core/sdk
d960726af2be: Pulling fs layer
e8d62473a22d: Pulling fs layer
8962bc0fad55: Pulling fs layer
65d943ee54c1: Pulling fs layer
2aeff8ffa343: Pulling fs layer
8ca78c9f6db9: Pulling fs layer
d0cbf017b189: Pulling fs layer
d0cbf017b189: Verifying Checksum
d0cbf017b189: Download complete
8962bc0fad55: Verifying Checksum
8962bc0fad55: Download complete
e8d62473a22d: Verifying Checksum
e8d62473a22d: Download complete
2aeff8ffa343: Verifying Checksum
2aeff8ffa343: Download complete
65d943ee54c1: Verifying Checksum
65d943ee54c1: Download complete
d960726af2be: Verifying Checksum
d960726af2be: Download complete
d960726af2be: Pull complete
e8d62473a22d: Pull complete
8ca78c9f6db9: Verifying Checksum
8ca78c9f6db9: Download complete
8962bc0fad55: Pull complete
65d943ee54c1: Pull complete
2aeff8ffa343: Pull complete
8ca78c9f6db9: Pull complete
d0cbf017b189: Pull complete
Digest: sha256:d5deed9ec9e8bbd18945539ad4e229f25a25a6f022840b05ddcdd63668947bb7
Status: Downloaded newer image for mcr.microsoft.com/dotnet/core/sdk:3.1-buster
---> 4fe5779b0e5f
Step 2/10 : WORKDIR /app
---> Running in 8f65ddf71cf2
---> bcec547f703b
Step 3/10 : COPY . .
---> 6a4819739f80
Step 4/10 : RUN dotnet restore && dotnet build && dotnet publish -c release -r linux-musl-x64 -o /cartservice
---> Running in cf37e1ab21b7
Determining projects to restore...
Restored /app/cartservice.csproj (in 6.78 sec).
Microsoft (R) Build Engine version 16.7.2+b60ddb6f4 for .NET
Copyright (C) Microsoft Corporation. All rights reserved.
Determining projects to restore...
All projects are up-to-date for restore.
cartservice -> /app/bin/Debug/netcoreapp3.1/cartservice.dll
Build succeeded.
0 Warning(s)
0 Error(s)
Time Elapsed 00:00:02.98
Microsoft (R) Build Engine version 16.7.2+b60ddb6f4 for .NET
Copyright (C) Microsoft Corporation. All rights reserved.
Determining projects to restore...
Restored /app/cartservice.csproj (in 12.16 sec).
cartservice -> /app/bin/release/netcoreapp3.1/linux-musl-x64/cartservice.dll
cartservice -> /cartservice/
---> 8a6152464356
Step 5/10 : FROM alpine:3.8
3.8: Pulling from library/alpine
486039affc0a: Already exists
Digest: sha256:2bb501e6173d9d006e56de5bce2720eb06396803300fe1687b58a7ff32bf4c14
Status: Downloaded newer image for alpine:3.8
---> c8bccc0af957
Step 6/10 : RUN GRPC_HEALTH_PROBE_VERSION=v0.2.0 && wget -qO/bin/grpc_health_probe https://github.com/grpc-ecosystem/grpc-health-probe/releases/download/${GRPC_HEALTH_PROBE_VERSION}/grpc_health_probe-linux-amd64 && chmod +x /bin/grpc_health_probe
---> Running in 7375f7c0962a
---> bd086fedf987
Step 7/10 : RUN apk add --no-cache busybox-extras libc6-compat libunwind libuuid libgcc libstdc++ libintl icu
---> Running in 5a904476f79b
fetch http://dl-cdn.alpinelinux.org/alpine/v3.8/main/x86_64/APKINDEX.tar.gz
fetch http://dl-cdn.alpinelinux.org/alpine/v3.8/community/x86_64/APKINDEX.tar.gz
(1/9) Installing busybox-extras (1.28.4-r3)
Executing busybox-extras-1.28.4-r3.post-install
(2/9) Installing libgcc (6.4.0-r9)
(3/9) Installing libstdc++ (6.4.0-r9)
(4/9) Installing icu-libs (60.2-r3)
(5/9) Installing icu (60.2-r3)
(6/9) Installing libc6-compat (1.1.19-r11)
(7/9) Installing libintl (0.19.8.1-r2)
(8/9) Installing libunwind (1.2.1-r1)
(9/9) Installing libuuid (2.32-r0)
Executing busybox-1.28.4-r3.trigger
OK: 37 MiB in 22 packages
---> d7824327764a
Step 8/10 : WORKDIR /app
---> Running in 9775fa62322b
---> 64da6044f1aa
Step 9/10 : COPY --from=builder /cartservice .
---> 94c844fa9964
Step 10/10 : ENTRYPOINT ["./cartservice", "start"]
---> Running in d354cb838811
---> 1207f5f60dea
Successfully built 1207f5f60dea
Successfully tagged 10.0.80.205:5000/hipster/hipster_cartservice:latest
The push refers to repository [10.0.80.205:5000/hipster/hipster_cartservice]
b3d8f046d04d: Preparing
041e37b95737: Preparing
9e19f2a7138a: Preparing
8e3ef14370f4: Preparing
7444ea29e45e: Preparing
7444ea29e45e: Layer already exists
041e37b95737: Pushed
8e3ef14370f4: Pushed
9e19f2a7138a: Pushed
b3d8f046d04d: Pushed
latest: digest: sha256:0336779202950b9717ae9e4faa4b40778c462cae4cec00554334ec3e4e6d3170 size: 1370
Building [hipster/frontend]...
Sending build context to Docker daemon 544.3kB Sending build context to Docker daemon 4.254MB
Step 1/13 : FROM golang:1.14.7 as builder
---> 0fc73a78e79d
Step 2/13 : WORKDIR /build/src
---> Using cache
---> 04507f2fb6bd
Step 3/13 : COPY . .
---> cebff7d1af25
Step 4/13 : ENV GOPROXY https://goproxy.cn
---> Running in a31e3619340e
---> 631b5c6fd7e1
Step 5/13 : RUN go build -tags netgo -o main
---> Running in 57292dae372c
go: downloading github.com/sirupsen/logrus v1.4.2
go: downloading go.opentelemetry.io/otel v0.10.0
go: downloading github.com/gorilla/mux v1.7.3
go: downloading github.com/google/uuid v1.1.1
go: downloading github.com/GoogleCloudPlatform/microservices-demo v0.2.0
go: downloading github.com/pkg/errors v0.8.1
go: downloading google.golang.org/grpc v1.31.0
go: downloading golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1
go: downloading go.opentelemetry.io/contrib v0.10.0
go: downloading go.opentelemetry.io/contrib/instrumentation/net/http v0.0.0-20200807164019-6585cf196f1f
go: downloading go.opentelemetry.io/otel/sdk v0.10.0
go: downloading github.com/golang/protobuf v1.4.2
go: downloading go.opentelemetry.io/otel/exporters/trace/jaeger v0.10.0
go: downloading google.golang.org/protobuf v1.23.0
go: downloading google.golang.org/api v0.29.0
go: downloading google.golang.org/genproto v0.0.0-20200331122359-1ee6d9798940
go: downloading golang.org/x/net v0.0.0-20200324143707-d3edc9973b7e
go: downloading github.com/apache/thrift v0.13.0
go: downloading github.com/felixge/httpsnoop v1.0.1
go: downloading golang.org/x/text v0.3.2
go: downloading golang.org/x/sync v0.0.0-20200317015054-43a5402ce75a
 ---> 1e6ea4f2e510
Step 6/13 : FROM alpine as release
---> 6dbb9cc54074
Step 7/13 : RUN apk add --no-cache ca-certificates busybox-extras net-tools bind-tools procps
---> Running in bc4ec98e740b
fetch https://dl-cdn.alpinelinux.org/alpine/v3.13/main/x86_64/APKINDEX.tar.gz
fetch https://dl-cdn.alpinelinux.org/alpine/v3.13/community/x86_64/APKINDEX.tar.gz
(1/26) Installing fstrm (0.6.0-r1)
(2/26) Installing krb5-conf (1.0-r2)
(3/26) Installing libcom_err (1.45.7-r0)
(4/26) Installing keyutils-libs (1.6.3-r0)
(5/26) Installing libverto (0.3.1-r1)
(6/26) Installing krb5-libs (1.18.3-r1)
(7/26) Installing json-c (0.15-r1)
(8/26) Installing libgcc (10.2.1_pre1-r3)
(9/26) Installing libstdc++ (10.2.1_pre1-r3)
(10/26) Installing libprotobuf (3.13.0-r2)
(11/26) Installing libprotoc (3.13.0-r2)
(12/26) Installing protobuf-c (1.3.3-r4)
(13/26) Installing libuv (1.40.0-r0)
(14/26) Installing xz-libs (5.2.5-r0)
(15/26) Installing libxml2 (2.9.10-r6)
(16/26) Installing bind-libs (9.16.15-r1)
(17/26) Installing bind-tools (9.16.15-r1)
(18/26) Installing busybox-extras (1.32.1-r6)
Executing busybox-extras-1.32.1-r6.post-install
(19/26) Installing ca-certificates (20191127-r5)
(20/26) Installing mii-tool (1.60_git20140218-r2)
(21/26) Installing net-tools (1.60_git20140218-r2)
(22/26) Installing libintl (0.20.2-r2)
(23/26) Installing ncurses-terminfo-base (6.2_p20210109-r0)
(24/26) Installing ncurses-libs (6.2_p20210109-r0)
(25/26) Installing libproc (3.3.16-r0)
(26/26) Installing procps (3.3.16-r0)
Executing busybox-1.32.1-r6.trigger
Executing ca-certificates-20191127-r5.trigger
OK: 21 MiB in 40 packages
---> 8ac28dc68b19
Step 8/13 : WORKDIR /frontend
---> Running in 8dcabc6b9c85
---> cf19456fba16
Step 9/13 : COPY --from=builder /build/src/main /frontend/server
---> 6a6fd4c2cb09
Step 10/13 : COPY ./templates ./templates
---> c721a50fb25f
Step 11/13 : COPY ./static ./static
---> 18a78767f9bc
Step 12/13 : EXPOSE 8080
---> Running in 5fa59caf433b
---> 87b2f7581a10
Step 13/13 : ENTRYPOINT ["/frontend/server"]
---> Running in e32a5886e382
---> 1ff1495afb61
Successfully built 1ff1495afb61
Successfully tagged 10.0.80.205:5000/hipster/hipster_frontend:latest
The push refers to repository [10.0.80.205:5000/hipster/hipster_frontend]
ccefbb8f51b3: Preparing
b09c7cfe13ae: Preparing
91c576a47ee5: Preparing
dfd3f4ed8f3a: Preparing
4a857741c7cf: Preparing
b2d5eeeaba3a: Preparing
b2d5eeeaba3a: Waiting
dfd3f4ed8f3a: Pushed
b09c7cfe13ae: Pushed
ccefbb8f51b3: Pushed
b2d5eeeaba3a: Layer already exists
4a857741c7cf: Pushed
91c576a47ee5: Pushed
latest: digest: sha256:06c060e7204c0bf2575eb0c6682a8bf2f286a02698aa454f2b5b36480555dc66 size: 1576
Building [hipster/adservice]...
Sending build context to Docker daemon 526.8kB Sending build context to Docker daemon 14.79MB Sending build context to Docker daemon 33.11MB Sending build context to Docker daemon 53.72MB Sending build context to Docker daemon 71.97MB Sending build context to Docker daemon 87.89MB Sending build context to Docker daemon 98.27MB Sending build context to Docker daemon 111.9MB Sending build context to Docker daemon 115.6MB
Step 1/17 : FROM openjdk:8-slim as builder
8-slim: Pulling from library/openjdk
8-slim: Pulling from library/openjdk
69692152171a: Already exists
ce2b89b60818: Already exists
a3c211c6bdc9: Already exists
51c4a829ee67: Already exists
Digest: sha256:1df6c2bb668ca5d81a236e3b9e987d05c5e991cfa02f066aca765b128caa22f6
Status: Downloaded newer image for openjdk:8-slim
---> c9f0d125970b
Step 2/17 : WORKDIR /app
---> Running in b63e3d288d82
---> 07fc5c385b89
Step 3/17 : COPY ["build.gradle", "gradlew", "./"]
---> b355dc06b1d7
Step 4/17 : COPY gradle gradle
---> e94f5e4cdaab
Step 5/17 : RUN chmod +x gradlew
---> Running in 1fc99752ffc8
---> 946a5e3cab61
Step 6/17 : RUN ./gradlew downloadRepos
---> Running in 7d00a3327cbf
Downloading https://services.gradle.org/distributions/gradle-6.3-bin.zip
.........10%..........20%..........30%.........40%..........50%..........60%.........70%..........80%..........90%..........100%
Welcome to Gradle 6.3!
Here are the highlights of this release:
- Java 14 support
- Improved error messages for unexpected failures
For more details see https://docs.gradle.org/6.3/release-notes.html
Starting a Gradle Daemon (subsequent builds will be faster)
> Task :downloadRepos NO-SOURCE
Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/6.3/userguide/command_line_interface.html#sec:command_line_warnings
BUILD SUCCESSFUL in 1m 5s
---> c4921e1f18d7
Step 7/17 : COPY . .
---> d9e5ab62df98
Step 8/17 : RUN chmod +x gradlew
---> Running in 2e2f80b065ca
---> 5d7f5602855e
Step 9/17 : RUN ./gradlew installDist
---> Running in b9e3b36924ba
Starting a Gradle Daemon, 1 incompatible and 1 stopped Daemons could not be reused, use --status for details
> Task :adService
> Task :adServiceClient
> Task :extractIncludeProto
> Task :extractProto
> Task :generateProto
> Task :compileJava
> Task :processResources
> Task :classes
> Task :jar
> Task :startScripts SKIPPED
> Task :installDist
Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/6.3/userguide/command_line_interface.html#sec:command_line_warnings
BUILD SUCCESSFUL in 46s
9 actionable tasks: 9 executed
---> 080ac9fb11d4
Step 10/17 : FROM openjdk:8-slim
---> c9f0d125970b
Step 11/17 : RUN apt-get -y update && apt-get install -qqy wget procps && rm -rf /var/lib/apt/lists/*
---> Running in ebc12ce9bb98
Get:1 http://security.debian.org/debian-security buster/updates InRelease [65.4 kB]
Get:2 http://deb.debian.org/debian buster InRelease [121 kB]
Get:3 http://security.debian.org/debian-security buster/updates/main amd64 Packages [291 kB]
Get:4 http://deb.debian.org/debian buster-updates InRelease [51.9 kB]
Get:5 http://deb.debian.org/debian buster/main amd64 Packages [7907 kB]
Get:6 http://deb.debian.org/debian buster-updates/main amd64 Packages [10.9 kB]
Fetched 8448 kB in 2min 45s (51.3 kB/s)
Reading package lists...
debconf: delaying package configuration, since apt-utils is not installed
Selecting previously unselected package libncurses6:amd64.
(Reading database ... (Reading database ... 5% (Reading database ... 10% (Reading database ... 15% (Reading database ... 20% (Reading database ... 25% (Reading database ... 30% (Reading database ... 35% (Reading database ... 40% (Reading database ... 45% (Reading database ... 50% (Reading database ... 55% (Reading database ... 60% (Reading database ... 65% (Reading database ... 70% (Reading database ... 75% (Reading database ... 80% (Reading database ... 85% (Reading database ... 90% (Reading database ... 95% (Reading database ... 100% (Reading database ... 6900 files and directories currently installed.)
Preparing to unpack .../0-libncurses6_6.1+20181013-2+deb10u2_amd64.deb ...
Unpacking libncurses6:amd64 (6.1+20181013-2+deb10u2) ...
Selecting previously unselected package libprocps7:amd64.
Preparing to unpack .../1-libprocps7_2%3a3.3.15-2_amd64.deb ...
Unpacking libprocps7:amd64 (2:3.3.15-2) ...
Selecting previously unselected package procps.
Preparing to unpack .../2-procps_2%3a3.3.15-2_amd64.deb ...
Unpacking procps (2:3.3.15-2) ...
Selecting previously unselected package libpcre2-8-0:amd64.
Preparing to unpack .../3-libpcre2-8-0_10.32-5_amd64.deb ...
Unpacking libpcre2-8-0:amd64 (10.32-5) ...
Selecting previously unselected package libpsl5:amd64.
Preparing to unpack .../4-libpsl5_0.20.2-2_amd64.deb ...
Unpacking libpsl5:amd64 (0.20.2-2) ...
Selecting previously unselected package wget.
Preparing to unpack .../5-wget_1.20.1-1.1_amd64.deb ...
Unpacking wget (1.20.1-1.1) ...
Selecting previously unselected package libgpm2:amd64.
Preparing to unpack .../6-libgpm2_1.20.7-5_amd64.deb ...
Unpacking libgpm2:amd64 (1.20.7-5) ...
Selecting previously unselected package psmisc.
Preparing to unpack .../7-psmisc_23.2-1_amd64.deb ...
Unpacking psmisc (23.2-1) ...
Selecting previously unselected package publicsuffix.
Preparing to unpack .../8-publicsuffix_20190415.1030-1_all.deb ...
Unpacking publicsuffix (20190415.1030-1) ...
Setting up libpsl5:amd64 (0.20.2-2) ...
Setting up libgpm2:amd64 (1.20.7-5) ...
Setting up psmisc (23.2-1) ...
Setting up libprocps7:amd64 (2:3.3.15-2) ...
Setting up libncurses6:amd64 (6.1+20181013-2+deb10u2) ...
Setting up libpcre2-8-0:amd64 (10.32-5) ...
Setting up procps (2:3.3.15-2) ...
update-alternatives: using /usr/bin/w.procps to provide /usr/bin/w (w) in auto mode
update-alternatives: warning: skip creation of /usr/share/man/man1/w.1.gz because associated file /usr/share/man/man1/w.procps.1.gz (of link group w) doesn't exist
Setting up publicsuffix (20190415.1030-1) ...
Setting up wget (1.20.1-1.1) ...
Processing triggers for libc-bin (2.28-10) ...
---> 1643af4121f1
Step 12/17 : RUN mkdir -p /opt/cprof && wget -q -O- https://storage.googleapis.com/cloud-profiler/java/latest/profiler_java_agent.tar.gz | tar xzv -C /opt/cprof && rm -rf profiler_java_agent.tar.gz
---> Running in ce3700743a47
version.txt
NOTICES
profiler_java_agent.so
---> 7b64a8815043
Step 13/17 : RUN GRPC_HEALTH_PROBE_VERSION=v0.3.1 && wget -qO/bin/grpc_health_probe https://github.com/grpc-ecosystem/grpc-health-probe/releases/download/${GRPC_HEALTH_PROBE_VERSION}/grpc_health_probe-linux-amd64 && chmod +x /bin/grpc_health_probe
---> Running in f7ceb087fd46
---> 85ba86202d2f
Step 14/17 : WORKDIR /app
---> Running in 3f80fb013621
---> c155f175801b
Step 15/17 : COPY --from=builder /app .
---> 0b05df0c3009
Step 16/17 : EXPOSE 9555
---> Running in f752219ba80d
---> 9d33d5f2b9ac
Step 17/17 : ENTRYPOINT ["/app/build/install/hipstershop/bin/AdService"]
---> Running in 557e82550b44
---> 29e73713071c
Successfully built 29e73713071c
Successfully tagged 10.0.80.205:5000/hipster/hipster_adservice:latest
The push refers to repository [10.0.80.205:5000/hipster/hipster_adservice]
9e5f9707b9f2: Preparing
981183762fb8: Preparing
107e36ca4ff5: Preparing
bfd4a30ea3a3: Preparing
6b9b056cc303: Preparing
833e33572789: Preparing
883b3861724b: Preparing
b865cfc9b0c3: Preparing
02c055ef67f5: Preparing
833e33572789: Waiting
883b3861724b: Waiting
b865cfc9b0c3: Waiting
6b9b056cc303: Pushed
981183762fb8: Pushed
833e33572789: Layer already exists
bfd4a30ea3a3: Pushed
883b3861724b: Layer already exists
02c055ef67f5: Layer already exists
b865cfc9b0c3: Layer already exists
107e36ca4ff5: Pushed
9e5f9707b9f2: Pushed
latest: digest: sha256:7766865407462878925a8c0d247d49a939e6f66951d5fedec4a7e2e55b40bbd3 size: 2213
There is a new version (1.25.0) of Skaffold available. Download it from:
https://github.com/GoogleContainerTools/skaffold/releases/tag/v1.25.0
syntax = "proto3";
package hipstershop;
// -----------------Cart service-----------------
service CartService {
rpc AddItem(AddItemRequest) returns (Empty) {}
rpc GetCart(GetCartRequest) returns (Cart) {}
rpc EmptyCart(EmptyCartRequest) returns (Empty) {}
}
message CartItem {
string product_id = 1;
int32 quantity = 2;
}
message AddItemRequest {
string user_id = 1;
CartItem item = 2;
}
message EmptyCartRequest {
string user_id = 1;
}
message GetCartRequest {
string user_id = 1;
}
message Cart {
string user_id = 1;
repeated CartItem items = 2;
}
message Empty {}
// ---------------Recommendation service----------
service RecommendationService {
rpc ListRecommendations(ListRecommendationsRequest) returns (ListRecommendationsResponse){}
}
message ListRecommendationsRequest {
string user_id = 1;
repeated string product_ids = 2;
}
message ListRecommendationsResponse {
repeated string product_ids = 1;
}
// ---------------Product Catalog----------------
service ProductCatalogService {
rpc ListProducts(Empty) returns (ListProductsResponse) {}
rpc GetProduct(GetProductRequest) returns (Product) {}
rpc SearchProducts(SearchProductsRequest) returns (SearchProductsResponse) {}
}
message Product {
string id = 1;
string name = 2;
string description = 3;
string picture = 4;
Money price_usd = 5;
// Categories such as "vintage" or "gardening" that can be used to look up
// other related products.
repeated string categories = 6;
}
message ListProductsResponse {
repeated Product products = 1;
}
message GetProductRequest {
string id = 1;
}
message SearchProductsRequest {
string query = 1;
}
message SearchProductsResponse {
repeated Product results = 1;
}
// ---------------Shipping Service----------
service ShippingService {
rpc GetQuote(GetQuoteRequest) returns (GetQuoteResponse) {}
rpc ShipOrder(ShipOrderRequest) returns (ShipOrderResponse) {}
}
message GetQuoteRequest {
Address address = 1;
repeated CartItem items = 2;
}
message GetQuoteResponse {
Money cost_usd = 1;
}
message ShipOrderRequest {
Address address = 1;
repeated CartItem items = 2;
}
message ShipOrderResponse {
string tracking_id = 1;
}
message Address {
string street_address = 1;
string city = 2;
string state = 3;
string country = 4;
int32 zip_code = 5;
}
// -----------------Currency service-----------------
service CurrencyService {
rpc GetSupportedCurrencies(Empty) returns (GetSupportedCurrenciesResponse) {}
rpc Convert(CurrencyConversionRequest) returns (Money) {}
}
// Represents an amount of money with its currency type.
message Money {
// The 3-letter currency code defined in ISO 4217.
string currency_code = 1;
// The whole units of the amount.
// For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
int64 units = 2;
// Number of nano (10^-9) units of the amount.
// The value must be between -999,999,999 and +999,999,999 inclusive.
// If `units` is positive, `nanos` must be positive or zero.
// If `units` is zero, `nanos` can be positive, zero, or negative.
// If `units` is negative, `nanos` must be negative or zero.
// For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
int32 nanos = 3;
}
message GetSupportedCurrenciesResponse {
// The 3-letter currency code defined in ISO 4217.
repeated string currency_codes = 1;
}
message CurrencyConversionRequest {
Money from = 1;
// The 3-letter currency code defined in ISO 4217.
string to_code = 2;
}
// -------------Payment service-----------------
service PaymentService {
rpc Charge(ChargeRequest) returns (ChargeResponse) {}
}
message CreditCardInfo {
string credit_card_number = 1;
int32 credit_card_cvv = 2;
int32 credit_card_expiration_year = 3;
int32 credit_card_expiration_month = 4;
}
message ChargeRequest {
Money amount = 1;
CreditCardInfo credit_card = 2;
}
message ChargeResponse {
string transaction_id = 1;
}
// -------------Email service-----------------
service EmailService {
rpc SendOrderConfirmation(SendOrderConfirmationRequest) returns (Empty) {}
}
message OrderItem {
CartItem item = 1;
Money cost = 2;
}
message OrderResult {
string order_id = 1;
string shipping_tracking_id = 2;
Money shipping_cost = 3;
Address shipping_address = 4;
repeated OrderItem items = 5;
}
message SendOrderConfirmationRequest {
string email = 1;
OrderResult order = 2;
}
// -------------Checkout service-----------------
service CheckoutService {
rpc PlaceOrder(PlaceOrderRequest) returns (PlaceOrderResponse) {}
}
message PlaceOrderRequest {
string user_id = 1;
string user_currency = 2;
Address address = 3;
string email = 5;
CreditCardInfo credit_card = 6;
}
message PlaceOrderResponse {
OrderResult order = 1;
}
// ------------Ad service------------------
service AdService {
rpc GetAds(AdRequest) returns (AdResponse) {}
}
message AdRequest {
// List of important key words from the current page describing the context.
repeated string context_keys = 1;
}
message AdResponse {
repeated Ad ads = 1;
}
message Ad {
// url to redirect to when an ad is clicked.
string redirect_url = 1;
// short advertisement text to display.
string text = 2;
}
// Copyright 2015 The gRPC Authors
//
// 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.
// The canonical version of this proto can be found at
// https://github.com/grpc/grpc-proto/blob/master/grpc/health/v1/health.proto
syntax = "proto3";
package grpc.health.v1;
option csharp_namespace = "Grpc.Health.V1";
option go_package = "google.golang.org/grpc/health/grpc_health_v1";
option java_multiple_files = true;
option java_outer_classname = "HealthProto";
option java_package = "io.grpc.health.v1";
message HealthCheckRequest {
string service = 1;
}
message HealthCheckResponse {
enum ServingStatus {
UNKNOWN = 0;
SERVING = 1;
NOT_SERVING = 2;
}
ServingStatus status = 1;
}
service Health {
rpc Check(HealthCheckRequest) returns (HealthCheckResponse);
}
# Copyright 2018 Google LLC
#
# 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.
# ----------------------------------------------------------
# WARNING: This file is autogenerated. Do not manually edit.
# ----------------------------------------------------------
apiVersion: networking.istio.io/v1alpha3
kind: Gateway
metadata:
name: frontend-gateway
spec:
selector:
istio: ingressgateway # use Istio default gateway implementation
servers:
- port:
number: 80
name: http
protocol: HTTP
hosts:
- "*"
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: frontend-ingress
spec:
hosts:
- "*"
gateways:
- frontend-gateway
http:
- route:
- destination:
host: frontend
port:
number: 80
---
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: frontend
spec:
hosts:
- "frontend.default.svc.cluster.local"
http:
- route:
- destination:
host: frontend
port:
number: 80
---
apiVersion: networking.istio.io/v1alpha3
kind: ServiceEntry
metadata:
name: whitelist-egress-googleapis
spec:
hosts:
- "accounts.google.com" # Used to get token
- "*.googleapis.com"
ports:
- number: 80
protocol: HTTP
name: http
- number: 443
protocol: HTTPS
name: https
---
apiVersion: networking.istio.io/v1alpha3
kind: ServiceEntry
metadata:
name: whitelist-egress-google-metadata
spec:
hosts:
- metadata.google.internal
addresses:
- 169.254.169.254 # GCE metadata server
ports:
- number: 80
name: http
protocol: HTTP
- number: 443
name: https
protocol: HTTPS
---
# Copyright 2018 Google LLC
#
# 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.
# ----------------------------------------------------------
# WARNING: This file is autogenerated. Do not manually edit.
# ----------------------------------------------------------
apiVersion: apps/v1
kind: Deployment
metadata:
name: emailservice
spec:
selector:
matchLabels:
app: emailservice
template:
metadata:
labels:
app: emailservice
spec:
terminationGracePeriodSeconds: 5
containers:
- name: server
image: gcr.io/google-samples/microservices-demo/emailservice:v0.2.0
ports:
- containerPort: 8080
env:
- name: PORT
value: "8080"
# - name: DISABLE_TRACING
# value: "1"
- name: DISABLE_PROFILER
value: "1"
readinessProbe:
periodSeconds: 5
exec:
command: ["/bin/grpc_health_probe", "-addr=:8080"]
livenessProbe:
periodSeconds: 5
exec:
command: ["/bin/grpc_health_probe", "-addr=:8080"]
resources:
requests:
cpu: 100m
memory: 64Mi
limits:
cpu: 200m
memory: 128Mi
---
apiVersion: v1
kind: Service
metadata:
name: emailservice
spec:
type: ClusterIP
selector:
app: emailservice
ports:
- name: grpc
port: 5000
targetPort: 8080
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: checkoutservice
spec:
selector:
matchLabels:
app: checkoutservice
template:
metadata:
labels:
app: checkoutservice
spec:
containers:
- name: server
image: gcr.io/google-samples/microservices-demo/checkoutservice:v0.2.0
ports:
- containerPort: 5050
readinessProbe:
exec:
command: ["/bin/grpc_health_probe", "-addr=:5050"]
livenessProbe:
exec:
command: ["/bin/grpc_health_probe", "-addr=:5050"]
env:
- name: PORT
value: "5050"
- name: PRODUCT_CATALOG_SERVICE_ADDR
value: "productcatalogservice:3550"
- name: SHIPPING_SERVICE_ADDR
value: "shippingservice:50051"
- name: PAYMENT_SERVICE_ADDR
value: "paymentservice:50051"
- name: EMAIL_SERVICE_ADDR
value: "emailservice:5000"
- name: CURRENCY_SERVICE_ADDR
value: "currencyservice:7000"
- name: CART_SERVICE_ADDR
value: "cartservice:7070"
# - name: DISABLE_STATS
# value: "1"
# - name: DISABLE_TRACING
# value: "1"
# - name: DISABLE_PROFILER
# value: "1"
# - name: JAEGER_SERVICE_ADDR
# value: "jaeger-collector:14268"
resources:
requests:
cpu: 100m
memory: 64Mi
limits:
cpu: 200m
memory: 128Mi
---
apiVersion: v1
kind: Service
metadata:
name: checkoutservice
spec:
type: ClusterIP
selector:
app: checkoutservice
ports:
- name: grpc
port: 5050
targetPort: 5050
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: recommendationservice
spec:
selector:
matchLabels:
app: recommendationservice
template:
metadata:
labels:
app: recommendationservice
spec:
terminationGracePeriodSeconds: 5
containers:
- name: server
image: gcr.io/google-samples/microservices-demo/recommendationservice:v0.2.0
ports:
- containerPort: 8080
readinessProbe:
periodSeconds: 5
exec:
command: ["/bin/grpc_health_probe", "-addr=:8080"]
livenessProbe:
periodSeconds: 5
exec:
command: ["/bin/grpc_health_probe", "-addr=:8080"]
env:
- name: PORT
value: "8080"
- name: PRODUCT_CATALOG_SERVICE_ADDR
value: "productcatalogservice:3550"
# - name: DISABLE_TRACING
# value: "1"
# - name: DISABLE_PROFILER
# value: "1"
# - name: DISABLE_DEBUGGER
# value: "1"
resources:
requests:
cpu: 100m
memory: 220Mi
limits:
cpu: 200m
memory: 450Mi
---
apiVersion: v1
kind: Service
metadata:
name: recommendationservice
spec:
type: ClusterIP
selector:
app: recommendationservice
ports:
- name: grpc
port: 8080
targetPort: 8080
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: frontend
spec:
selector:
matchLabels:
app: frontend
template:
metadata:
labels:
app: frontend
annotations:
sidecar.istio.io/rewriteAppHTTPProbers: "true"
spec:
containers:
- name: server
image: gcr.io/google-samples/microservices-demo/frontend:v0.2.0
ports:
- containerPort: 8080
readinessProbe:
initialDelaySeconds: 10
httpGet:
path: "/_healthz"
port: 8080
httpHeaders:
- name: "Cookie"
value: "shop_session-id=x-readiness-probe"
livenessProbe:
initialDelaySeconds: 10
httpGet:
path: "/_healthz"
port: 8080
httpHeaders:
- name: "Cookie"
value: "shop_session-id=x-liveness-probe"
env:
- name: PORT
value: "8080"
- name: PRODUCT_CATALOG_SERVICE_ADDR
value: "productcatalogservice:3550"
- name: CURRENCY_SERVICE_ADDR
value: "currencyservice:7000"
- name: CART_SERVICE_ADDR
value: "cartservice:7070"
- name: RECOMMENDATION_SERVICE_ADDR
value: "recommendationservice:8080"
- name: SHIPPING_SERVICE_ADDR
value: "shippingservice:50051"
- name: CHECKOUT_SERVICE_ADDR
value: "checkoutservice:5050"
- name: AD_SERVICE_ADDR
value: "adservice:9555"
- name: ENV_PLATFORM
value: "gcp"
# - name: DISABLE_TRACING
# value: "1"
# - name: DISABLE_PROFILER
# value: "1"
# - name: JAEGER_SERVICE_ADDR
# value: "jaeger-collector:14268"
resources:
requests:
cpu: 100m
memory: 64Mi
limits:
cpu: 200m
memory: 128Mi
---
apiVersion: v1
kind: Service
metadata:
name: frontend
spec:
type: ClusterIP
selector:
app: frontend
ports:
- name: http
port: 80
targetPort: 8080
---
apiVersion: v1
kind: Service
metadata:
name: frontend-external
spec:
type: LoadBalancer
selector:
app: frontend
ports:
- name: http
port: 80
targetPort: 8080
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: paymentservice
spec:
selector:
matchLabels:
app: paymentservice
template:
metadata:
labels:
app: paymentservice
spec:
terminationGracePeriodSeconds: 5
containers:
- name: server
image: gcr.io/google-samples/microservices-demo/paymentservice:v0.2.0
ports:
- containerPort: 50051
env:
- name: PORT
value: "50051"
readinessProbe:
exec:
command: ["/bin/grpc_health_probe", "-addr=:50051"]
livenessProbe:
exec:
command: ["/bin/grpc_health_probe", "-addr=:50051"]
resources:
requests:
cpu: 100m
memory: 64Mi
limits:
cpu: 200m
memory: 128Mi
---
apiVersion: v1
kind: Service
metadata:
name: paymentservice
spec:
type: ClusterIP
selector:
app: paymentservice
ports:
- name: grpc
port: 50051
targetPort: 50051
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: productcatalogservice
spec:
selector:
matchLabels:
app: productcatalogservice
template:
metadata:
labels:
app: productcatalogservice
spec:
terminationGracePeriodSeconds: 5
containers:
- name: server
image: gcr.io/google-samples/microservices-demo/productcatalogservice:v0.2.0
ports:
- containerPort: 3550
env:
- name: PORT
value: "3550"
# - name: DISABLE_STATS
# value: "1"
# - name: DISABLE_TRACING
# value: "1"
# - name: DISABLE_PROFILER
# value: "1"
# - name: JAEGER_SERVICE_ADDR
# value: "jaeger-collector:14268"
readinessProbe:
exec:
command: ["/bin/grpc_health_probe", "-addr=:3550"]
livenessProbe:
exec:
command: ["/bin/grpc_health_probe", "-addr=:3550"]
resources:
requests:
cpu: 100m
memory: 64Mi
limits:
cpu: 200m
memory: 128Mi
---
apiVersion: v1
kind: Service
metadata:
name: productcatalogservice
spec:
type: ClusterIP
selector:
app: productcatalogservice
ports:
- name: grpc
port: 3550
targetPort: 3550
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: cartservice
spec:
selector:
matchLabels:
app: cartservice
template:
metadata:
labels:
app: cartservice
spec:
terminationGracePeriodSeconds: 5
containers:
- name: server
image: gcr.io/google-samples/microservices-demo/cartservice:v0.2.0
ports:
- containerPort: 7070
env:
- name: REDIS_ADDR
value: "redis-cart:6379"
- name: PORT
value: "7070"
- name: LISTEN_ADDR
value: "0.0.0.0"
resources:
requests:
cpu: 200m
memory: 64Mi
limits:
cpu: 300m
memory: 128Mi
readinessProbe:
initialDelaySeconds: 15
exec:
command: ["/bin/grpc_health_probe", "-addr=:7070", "-rpc-timeout=5s"]
livenessProbe:
initialDelaySeconds: 15
periodSeconds: 10
exec:
command: ["/bin/grpc_health_probe", "-addr=:7070", "-rpc-timeout=5s"]
---
apiVersion: v1
kind: Service
metadata:
name: cartservice
spec:
type: ClusterIP
selector:
app: cartservice
ports:
- name: grpc
port: 7070
targetPort: 7070
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: loadgenerator
spec:
selector:
matchLabels:
app: loadgenerator
replicas: 1
template:
metadata:
labels:
app: loadgenerator
annotations:
sidecar.istio.io/rewriteAppHTTPProbers: "true"
spec:
terminationGracePeriodSeconds: 5
restartPolicy: Always
containers:
- name: main
image: gcr.io/google-samples/microservices-demo/loadgenerator:v0.2.0
env:
- name: FRONTEND_ADDR
value: "frontend:80"
- name: USERS
value: "10"
resources:
requests:
cpu: 300m
memory: 256Mi
limits:
cpu: 500m
memory: 512Mi
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: currencyservice
spec:
selector:
matchLabels:
app: currencyservice
template:
metadata:
labels:
app: currencyservice
spec:
terminationGracePeriodSeconds: 5
containers:
- name: server
image: gcr.io/google-samples/microservices-demo/currencyservice:v0.2.0
ports:
- name: grpc
containerPort: 7000
env:
- name: PORT
value: "7000"
# - name: DISABLE_TRACING
# value: "1"
# - name: DISABLE_PROFILER
# value: "1"
# - name: DISABLE_DEBUGGER
# value: "1"
readinessProbe:
exec:
command: ["/bin/grpc_health_probe", "-addr=:7000"]
livenessProbe:
exec:
command: ["/bin/grpc_health_probe", "-addr=:7000"]
resources:
requests:
cpu: 100m
memory: 64Mi
limits:
cpu: 200m
memory: 128Mi
---
apiVersion: v1
kind: Service
metadata:
name: currencyservice
spec:
type: ClusterIP
selector:
app: currencyservice
ports:
- name: grpc
port: 7000
targetPort: 7000
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: shippingservice
spec:
selector:
matchLabels:
app: shippingservice
template:
metadata:
labels:
app: shippingservice
spec:
containers:
- name: server
image: gcr.io/google-samples/microservices-demo/shippingservice:v0.2.0
ports:
- containerPort: 50051
env:
- name: PORT
value: "50051"
# - name: DISABLE_STATS
# value: "1"
# - name: DISABLE_TRACING
# value: "1"
# - name: DISABLE_PROFILER
# value: "1"
# - name: JAEGER_SERVICE_ADDR
# value: "jaeger-collector:14268"
readinessProbe:
periodSeconds: 5
exec:
command: ["/bin/grpc_health_probe", "-addr=:50051"]
livenessProbe:
exec:
command: ["/bin/grpc_health_probe", "-addr=:50051"]
resources:
requests:
cpu: 100m
memory: 64Mi
limits:
cpu: 200m
memory: 128Mi
---
apiVersion: v1
kind: Service
metadata:
name: shippingservice
spec:
type: ClusterIP
selector:
app: shippingservice
ports:
- name: grpc
port: 50051
targetPort: 50051
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: redis-cart
spec:
selector:
matchLabels:
app: redis-cart
template:
metadata:
labels:
app: redis-cart
spec:
containers:
- name: redis
image: redis:alpine
ports:
- containerPort: 6379
readinessProbe:
periodSeconds: 5
tcpSocket:
port: 6379
livenessProbe:
periodSeconds: 5
tcpSocket:
port: 6379
volumeMounts:
- mountPath: /data
name: redis-data
resources:
limits:
memory: 256Mi
cpu: 125m
requests:
cpu: 70m
memory: 200Mi
volumes:
- name: redis-data
emptyDir: {}
---
apiVersion: v1
kind: Service
metadata:
name: redis-cart
spec:
type: ClusterIP
selector:
app: redis-cart
ports:
- name: redis
port: 6379
targetPort: 6379
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: adservice
spec:
selector:
matchLabels:
app: adservice
template:
metadata:
labels:
app: adservice
spec:
terminationGracePeriodSeconds: 5
containers:
- name: server
image: gcr.io/google-samples/microservices-demo/adservice:v0.2.0
ports:
- containerPort: 9555
env:
- name: PORT
value: "9555"
# - name: DISABLE_STATS
# value: "1"
# - name: DISABLE_TRACING
# value: "1"
#- name: JAEGER_SERVICE_ADDR
# value: "jaeger-collector:14268"
resources:
requests:
cpu: 200m
memory: 180Mi
limits:
cpu: 300m
memory: 300Mi
readinessProbe:
initialDelaySeconds: 20
periodSeconds: 15
exec:
command: ["/bin/grpc_health_probe", "-addr=:9555"]
livenessProbe:
initialDelaySeconds: 20
periodSeconds: 15
exec:
command: ["/bin/grpc_health_probe", "-addr=:9555"]
---
apiVersion: v1
kind: Service
metadata:
name: adservice
spec:
type: ClusterIP
selector:
app: adservice
ports:
- name: grpc
port: 9555
targetPort: 9555
---
# Copyright 2018 Google LLC
#
# 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.
apiVersion: skaffold/v1beta2
kind: Config
build:
artifacts:
# image tags are relative; to specify an image repo (e.g. GCR), you
# must provide a "default repo" using one of the methods described
# here:
# https://skaffold.dev/docs/concepts/#image-repository-handling
- image: hipster/emailservice
context: src/emailservice
- image: hipster/productcatalogservice
context: src/productcatalogservice
- image: hipster/recommendationservice
context: src/recommendationservice
- image: hipster/shippingservice
context: src/shippingservice
- image: hipster/checkoutservice
context: src/checkoutservice
- image: hipster/paymentservice
context: src/paymentservice
- image: hipster/currencyservice
context: src/currencyservice
- image: hipster/cartservice
context: src/cartservice
- image: hipster/frontend
context: src/frontend
- image: hipster/emailservice2
context: src/emailservice
- image: hipster/productcatalogservice2
context: src/productcatalogservice
- image: hipster/recommendationservice2
context: src/recommendationservice
- image: hipster/shippingservice2
context: src/shippingservice
- image: hipster/checkoutservice2
context: src/checkoutservice
- image: hipster/paymentservice2
context: src/paymentservice
- image: hipster/currencyservice2
context: src/currencyservice
- image: hipster/cartservice2
context: src/cartservice
- image: hipster/frontend2
context: src/frontend
- image: hipster/adservice2
context: src/adservice
# - image: hipster/loadgenerator
# context: src/loadgenerator
- image: hipster/adservice
context: src/adservice
tagPolicy:
gitCommit: {}
deploy:
kubectl:
manifests:
- ./kubernetes-manifests/**.yaml
- ./kubernetes-manifests/2/**.yaml
profiles:
# "gcb" profile allows building and pushing the images
# on Google Container Builder without requiring docker
# installed on the developer machine. However, note that
# since GCB does not cache the builds, each build will
# start from scratch and therefore take a long time.
#
# This is not used by default. To use it, run:
# skaffold run -p gcb
- name: gcb
build:
googleCloudBuild:
diskSizeGb: 300
machineType: N1_HIGHCPU_32
timeout: 4000s
#!/usr/bin/env sh
#
# Copyright 2015 the original author or authors.
#
# 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
#
# https://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.
#
##############################################################################
##
## Gradle start up script for UN*X
##
##############################################################################
# Attempt to set APP_HOME
# Resolve links: $0 may be a link
PRG="$0"
# Need this for relative symlinks.
while [ -h "$PRG" ] ; do
ls=`ls -ld "$PRG"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '/.*' > /dev/null; then
PRG="$link"
else
PRG=`dirname "$PRG"`"/$link"
fi
done
SAVED="`pwd`"
cd "`dirname \"$PRG\"`/.." >/dev/null
APP_HOME="`pwd -P`"
cd "$SAVED" >/dev/null
APP_NAME="Gradle"
APP_BASE_NAME=`basename "$0"`
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD="maximum"
warn () {
echo "$*"
}
die () {
echo
echo "$*"
echo
exit 1
}
# OS specific support (must be 'true' or 'false').
cygwin=false
msys=false
darwin=false
nonstop=false
case "`uname`" in
CYGWIN* )
cygwin=true
;;
Darwin* )
darwin=true
;;
MINGW* )
msys=true
;;
NONSTOP* )
nonstop=true
;;
esac
CLASSPATH=$APP_HOME/lib/gradle-launcher-6.3.jar
# Determine the Java command to use to start the JVM.
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
# IBM's JDK on AIX uses strange locations for the executables
JAVACMD="$JAVA_HOME/jre/sh/java"
else
JAVACMD="$JAVA_HOME/bin/java"
fi
if [ ! -x "$JAVACMD" ] ; then
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
else
JAVACMD="java"
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
# Increase the maximum file descriptors if we can.
if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
MAX_FD_LIMIT=`ulimit -H -n`
if [ $? -eq 0 ] ; then
if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
MAX_FD="$MAX_FD_LIMIT"
fi
ulimit -n $MAX_FD
if [ $? -ne 0 ] ; then
warn "Could not set maximum file descriptor limit: $MAX_FD"
fi
else
warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
fi
fi
# For Darwin, add options to specify how the application appears in the dock
if $darwin; then
GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
fi
# For Cygwin or MSYS, switch paths to Windows format before running java
if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
APP_HOME=`cygpath --path --mixed "$APP_HOME"`
CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
JAVACMD=`cygpath --unix "$JAVACMD"`
# We build the pattern for arguments to be converted via cygpath
ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
SEP=""
for dir in $ROOTDIRSRAW ; do
ROOTDIRS="$ROOTDIRS$SEP$dir"
SEP="|"
done
OURCYGPATTERN="(^($ROOTDIRS))"
# Add a user-defined pattern to the cygpath arguments
if [ "$GRADLE_CYGPATTERN" != "" ] ; then
OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
fi
# Now convert the arguments - kludge to limit ourselves to /bin/sh
i=0
for arg in "$@" ; do
CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option
if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition
eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
else
eval `echo args$i`="\"$arg\""
fi
i=`expr $i + 1`
done
case $i in
0) set -- ;;
1) set -- "$args0" ;;
2) set -- "$args0" "$args1" ;;
3) set -- "$args0" "$args1" "$args2" ;;
4) set -- "$args0" "$args1" "$args2" "$args3" ;;
5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
esac
fi
# Escape application args
save () {
for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
echo " "
}
APP_ARGS=`save "$@"`
# Collect all arguments for the java command, following the shell quoting and substitution rules
eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.launcher.GradleMain "$APP_ARGS"
exec "$JAVACMD" "$@"
@rem
@rem Copyright 2015 the original author or authors.
@rem
@rem Licensed under the Apache License, Version 2.0 (the "License");
@rem you may not use this file except in compliance with the License.
@rem You may obtain a copy of the License at
@rem
@rem https://www.apache.org/licenses/LICENSE-2.0
@rem
@rem Unless required by applicable law or agreed to in writing, software
@rem distributed under the License is distributed on an "AS IS" BASIS,
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
@if "%DEBUG%" == "" @echo off
@rem ##########################################################################
@rem
@rem Gradle startup script for Windows
@rem
@rem ##########################################################################
@rem Set local scope for the variables with windows NT shell
if "%OS%"=="Windows_NT" setlocal
set DIRNAME=%~dp0
if "%DIRNAME%" == "" set DIRNAME=.
set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%..
@rem Resolve any "." and ".." in APP_HOME to make it shorter.
for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if "%ERRORLEVEL%" == "0" goto init
echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:findJavaFromJavaHome
set JAVA_HOME=%JAVA_HOME:"=%
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto init
echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:init
@rem Get command-line arguments, handling Windows variants
if not "%OS%" == "Windows_NT" goto win9xME_args
:win9xME_args
@rem Slurp the command line arguments.
set CMD_LINE_ARGS=
set _SKIP=2
:win9xME_args_slurp
if "x%~1" == "x" goto execute
set CMD_LINE_ARGS=%*
:execute
@rem Setup the command line
set CLASSPATH=%APP_HOME%\lib\gradle-launcher-6.3.jar
@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.launcher.GradleMain %CMD_LINE_ARGS%
:end
@rem End local scope for the variables with windows NT shell
if "%ERRORLEVEL%"=="0" goto mainEnd
:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
exit /b 1
:mainEnd
if "%OS%"=="Windows_NT" endlocal
:omega
...@@ -262,6 +262,50 @@ public final class AdService { ...@@ -262,6 +262,50 @@ public final class AdService {
.putAll("gardening", aditemMap.get("airPlant"), aditemMap.get("terrarium")) .putAll("gardening", aditemMap.get("airPlant"), aditemMap.get("terrarium"))
.build(); .build();
} }
// private static ImmutableListMultimap<String, Ad> createAdsMap() {
// Ad camera =
// Ad.newBuilder()
// .setRedirectUrl("/product/2ZYFJ3GM2N")
// .setText("Film camera for sale. 50% off.")
// .build();
// Ad lens =
// Ad.newBuilder()
// .setRedirectUrl("/product/66VCHSJNUP")
// .setText("Vintage camera lens for sale. 20% off.")
// .build();
// Ad recordPlayer =
// Ad.newBuilder()
// .setRedirectUrl("/product/0PUK6V6EV0")
// .setText("Vintage record player for sale. 30% off.")
// .build();
// Ad bike =
// Ad.newBuilder()
// .setRedirectUrl("/product/9SIQT8TOJO")
// .setText("City Bike for sale. 10% off.")
// .build();
// Ad baristaKit =
// Ad.newBuilder()
// .setRedirectUrl("/product/1YMWWN1N4O")
// .setText("Home Barista kitchen kit for sale. Buy one, get second kit for free")
// .build();
// Ad airPlant =
// Ad.newBuilder()
// .setRedirectUrl("/product/6E92ZMYYFZ")
// .setText("Air plants for sale. Buy two, get third one for free")
// .build();
// Ad terrarium =
// Ad.newBuilder()
// .setRedirectUrl("/product/L9ECAV7KIM")
// .setText("Terrarium for sale. Buy one, get second one for free")
// .build();
// return ImmutableListMultimap.<String, Ad>builder()
// .putAll("photography", camera, lens)
// .putAll("vintage", camera, lens, recordPlayer)
// .put("cycling", bike)
// .put("cookware", baristaKit)
// .putAll("gardening", airPlant, terrarium)
// .build();
// }
private class OpenTelemetryServerInterceptor implements io.grpc.ServerInterceptor { private class OpenTelemetryServerInterceptor implements io.grpc.ServerInterceptor {
@Override @Override
......