# Copyright 2015 Google Inc. All rights reserved.
#
# 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.


kind: Deployment
apiVersion: apps/v1
metadata:
  name: locust-master
  labels:
    app: locust-master
spec:
  replicas: 1
  selector:
    matchLabels:
      app: locust-master
  template:
    metadata:
      labels:
        app: locust-master
    spec:
      containers:
        - name: locust
          image: locustio/locust:0.13.5
          env:
            - name: LOCUST_MODE
              value: master
            - name: TARGET_URL
              value: http://sample-webapp:8000
            - name: LOCUST_MASTER_PORT
              value: '5557'
            - name: LOCUSTFILE_PATH
              value: /app/locust/locust.py
          ports:
            - name: loc-master-web
              containerPort: 8089
              protocol: TCP
            - name: loc-master-p1
              containerPort: 5557
              protocol: TCP
            - name: loc-master-p2
              containerPort: 5558
              protocol: TCP
          volumeMounts:
          - name: locust-py
            mountPath: /app/locust/locust.py
            subPath: locust.py
      volumes:
        - name: locust-py
          configMap:
            name: locust-py
            items:
            - key: locust
              path: locust.py
