| # Copyright 2016 The Fuchsia 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. |
| |
| # This file contans the definitions of the Shuffler's Deployment object |
| # (which includes an embedded defintion of the Shuffler's Pod object) and the |
| # Shuffler's Service 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 create" |
| |
| # The defintion of the Deployment and Pod |
| apiVersion: extensions/v1beta1 |
| kind: Deployment |
| metadata: |
| name: shuffler |
| labels: |
| name: shuffler |
| # Pod object |
| spec: |
| replicas: 1 |
| template: |
| metadata: |
| name: shuffler |
| labels: |
| name: shuffler |
| spec: |
| containers: |
| - name: shuffler |
| # The URI of a Docker image in a Docker repository. |
| image: $$SHUFFLER_IMAGE_URI$$ |
| args: |
| - '-port' |
| - '5001' |
| - '-analyzer_uri' |
| # This must match the defintion of the "analyzer-service" Service |
| # in analyzer_service_deployment.yaml |
| - 'analyzer-service:6001' |
| - '-config_file' |
| # This is the path to where the file is copied in Dockerfile. |
| - '/etc/cobalt/shuffler_config.txt' |
| - '-db_dir' |
| # This path must match mountPath for shuffler-persistent-storage |
| # below. |
| - '/var/lib/cobalt/db' |
| - '-use_memstore=$$SHUFFLER_USE_MEMSTORE$$' |
| - '-private_key_pem_file' |
| # The directory path must match mountPath for shuffler-key-storage |
| # below. |
| - '/var/lib/cobalt/key/$$SHUFFLER_PRIVATE_PEM_NAME$$' |
| - '-danger_danger_delete_all_data_at_startup=$$DANGER_DANGER_DELETE_ALL_DATA_AT_STARTUP$$' |
| # TODO(rudominer) Eventually remove this. |
| - '-logtostderr' |
| - '-v=3' |
| ports: |
| - containerPort: 5001 |
| volumeMounts: |
| # This name must match the volumes.name for |
| # shuffler-persistent-storage below. |
| - name: shuffler-persistent-storage |
| mountPath: /var/lib/cobalt/db |
| # This name must match the volumes.name for shuffler-key-storage |
| # below. |
| - name: shuffler-key-storage |
| mountPath: /var/lib/cobalt/key |
| readOnly: true |
| volumes: |
| - name: shuffler-persistent-storage |
| gcePersistentDisk: |
| # The name of a GCE persistent disk that has already been created. |
| pdName: $$GCE_PERSISTENT_DISK_NAME$$ |
| fsType: ext4 |
| - name: shuffler-key-storage |
| secret: |
| secretName: $$SHUFFLER_PRIVATE_KEY_SECRET_NAME$$ |
| --- |
| # The defintion of the Service |
| apiVersion: v1 |
| kind: Service |
| metadata: |
| name: shuffler |
| spec: |
| ports: |
| # The port that this service should serve on. This should match the |
| # port used several times above and the port specified in the Dockerfile. |
| - port: 5001 |
| selector: |
| # This must match the metadata.labels section of the Deployment above. |
| name: shuffler |
| type: LoadBalancer |
| loadBalancerIP: $$SHUFFLER_STATIC_IP_ADDRESS$$ |
| |