| # Copyright 2018 The Fuchsia Authors. All rights reserved. |
| # Use of this source code is governed by a BSD-style license that can be |
| # found in the LICENSE file. |
| |
| # This file contans the definitions of the Analyzer Service's Deployment object |
| # (which includes an embedded defintion of its Pod object). |
| # |
| # The definitions contain some parameters (indicated by $$PARAMETER_NAME$$) |
| # that will be replaced by the script tools/container_util.py prior to being |
| # passed to "kubectl apply" |
| |
| # The defintion of the Deployment and Pod |
| apiVersion: apps/v1beta1 |
| kind: StatefulSet |
| metadata: |
| name: report-master |
| labels: |
| name: report-master |
| # Pod object |
| spec: |
| serviceName: report-master |
| replicas: 1 |
| selector: |
| matchLabels: |
| name: report-master |
| template: |
| metadata: |
| name: report-master |
| labels: |
| name: report-master |
| spec: |
| containers: |
| - name: endpoint |
| image: gcr.io/endpoints-release/endpoints-runtime:1 |
| args: [ |
| '-S', '443', |
| '-s', '$$ENDPOINT_NAME$$', |
| '-v', '$$ENDPOINT_CONFIG_ID$$', |
| '-a', 'grpc://127.0.0.1:7000' |
| ] |
| ports: |
| - containerPort: 8000 |
| - containerPort: 443 |
| volumeMounts: |
| - mountPath: /etc/nginx/ssl |
| # The name must match the volumes.name corresponding to the |
| # secret $$REPORT_MASTER_CERTIFICATE_SECRET_NAME$$ below. |
| name: report-master-certificate-storage |
| readOnly: true |
| - name: report-master |
| # The URI of a Docker image in a Docker repository. |
| image: $$REPORT_MASTER_IMAGE_URI$$ |
| args: |
| - '-port' |
| - '7000' |
| - '-bigtable_project_name' |
| - $$BIGTABLE_PROJECT_NAME$$ |
| - '-bigtable_instance_id' |
| - $$BIGTABLE_INSTANCE_ID$$ |
| - '-cobalt_config_proto_path' |
| # This path must match the path to where the binproto config file is |
| # copied in Dockerfile. |
| - '/etc/cobalt/cobalt_config.binproto' |
| - '-config_parser_bin_path' |
| # This path must match the path to where the config parser binary is |
| # copied in Dockerfile. |
| - '/usr/local/bin/config_parser' |
| - '-config_update_repository_url' |
| - '$$REPORT_MASTER_CONFIG_UPDATE_REPO_URL$$' |
| - $$REPORT_MASTER_ENABLE_REPORT_SCHEDULING_FLAG$$ |
| # This configures the AuthEnforcer. |
| - '-googlers_only' |
| - '-logtostderr' |
| # TODO(rudominer) Eventually remove this. |
| - '-v=3' |
| ports: |
| - containerPort: 7000 |
| volumeMounts: |
| # The mount path below must match the directory part of the |
| # path to which the environment variable |
| # COBALT_GCS_SERVICE_ACCOUNT_CREDENTIALS is set in the Dockerfile. |
| - mountPath: /var/lib/cobalt/gcskey |
| # The name must match the volumes.name corresponding to the |
| # secret $$REPORT_MASTER_GCS_SERVICE_ACCOUNT_SECRET_NAME$$ below. |
| name: report-master-gcs-service-account-key-storage |
| readOnly: true |
| volumes: |
| - name: report-master-certificate-storage |
| secret: |
| secretName: $$REPORT_MASTER_CERTIFICATE_SECRET_NAME$$ |
| - name: report-master-gcs-service-account-key-storage |
| secret: |
| secretName: $$REPORT_MASTER_GCS_SERVICE_ACCOUNT_SECRET_NAME$$ |