Fixing podder in the following ways:
1. Adhering to new Dockerfile paths
2. Passing correct grpc port
3. No crashing on stopping containers
4. New compose file
5. Mostly everything works.
Change-Id: I54d2925947485ea6348389a60db24b2f952555db
diff --git a/Dockerfile.podder b/Dockerfile.podder
index f8abc96..30857cd 100644
--- a/Dockerfile.podder
+++ b/Dockerfile.podder
@@ -21,11 +21,10 @@
MAINTAINER Ali Al-Shabibi <ali.al-shabibi@onlab.us>
MAINTAINER Nathan Knuth <nathan.knuth@tibitcom.com>
-# Bundle app source
-COPY podder /podder
-COPY common /common
+RUN mkdir /podder && touch /podder/__init__.py
+ENV PYTHONPATH=/podder
+COPY common /podder/common
+COPY podder /podder/podder
# Exposing process and default entry point
-# EXPOSE 8000
-
-CMD ["python", "podder/main.py"]
+CMD ["python", "podder/podder/main.py"]
diff --git a/compose/docker-compose-system-test-with-podder.yml b/compose/docker-compose-system-test-with-podder.yml
new file mode 100644
index 0000000..140688e
--- /dev/null
+++ b/compose/docker-compose-system-test-with-podder.yml
@@ -0,0 +1,114 @@
+version: '2'
+services:
+ #
+ # Single-node zookeeper service
+ #
+ zookeeper:
+ image: wurstmeister/zookeeper
+ ports:
+ - 2181
+ environment:
+ SERVICE_2181_NAME: "zookeeper"
+ #
+ # Single-node kafka service
+ #
+ kafka:
+ image: wurstmeister/kafka
+ ports:
+ - 9092
+ environment:
+ KAFKA_ADVERTISED_HOST_NAME: ${DOCKER_HOST_IP}
+ KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181
+ KAFKA_AUTO_CREATE_TOPICS_ENABLE: 'true'
+ KAFKA_HEAP_OPTS: "-Xmx256M -Xms128M"
+ SERVICE_9092_NAME: "kafka"
+ depends_on:
+ - consul
+ volumes:
+ - /var/run/docker.sock:/var/run/docker.sock
+ #
+ # Single-node consul agent
+ #
+ consul:
+ image: consul:latest
+ command: agent -server -bootstrap -client 0.0.0.0 -ui
+ ports:
+ - "8300:8300"
+ - "8400:8400"
+ - "8500:8500"
+ - "8600:8600/udp"
+ environment:
+ #SERVICE_53_IGNORE: "yes"
+ SERVICE_8300_IGNORE: "yes"
+ SERVICE_8400_IGNORE: "yes"
+ SERVICE_8500_NAME: "consul-rest"
+ #
+ # Registrator
+ #
+ registrator:
+ image: gliderlabs/registrator:latest
+ command: [
+ "-ip=${DOCKER_HOST_IP}",
+ "-retry-attempts", "100",
+ # "-internal",
+ "consul://consul:8500"
+ ]
+ links:
+ - consul
+ volumes:
+ - "/var/run/docker.sock:/tmp/docker.sock"
+ #
+ # Fluentd log server
+ #
+ fluentd:
+ image: fluent/fluentd
+ ports:
+ - "24224:24224"
+ volumes:
+ - "/tmp/fluentd:/fluentd/log"
+ environment:
+ SERVICE_24224_NAME: "fluentd-intake"
+
+ #
+ # Podder service instance
+ #
+ podder:
+ image: cord/podder
+ volumes:
+ - "/var/run/docker.sock:/tmp/docker.sock"
+ restart: unless-stopped
+
+ #
+ # Voltha server instance(s)
+ #
+ voltha:
+ image: cord/voltha
+ command: [
+ "/voltha/voltha/main.py",
+ "-v",
+ "--consul=${DOCKER_HOST_IP}:8500",
+ "--fluentd=fluentd:24224",
+ "--rest-port=8880",
+ "--grpc-port=50555",
+ "--kafka=@kafka",
+ "--instance-id-is-container-name",
+ "-v"
+ ]
+ ports:
+ - 8880
+ - 50555
+ depends_on:
+ - consul
+ - podder
+ links:
+ - consul
+ - fluentd
+ environment:
+ SERVICE_8880_NAME: "voltha-health"
+ SERVICE_8880_CHECK_HTTP: "/health"
+ SERVICE_8880_CHECK_INTERVAL: "5s"
+ SERVICE_8880_CHECK_TIMEOUT: "1s"
+ SERVICE_50555_NAME: "voltha-grpc"
+ volumes:
+ - "/var/run/docker.sock:/tmp/docker.sock"
+
diff --git a/podder/handlers.py b/podder/handlers.py
index 40d53a8..2cafc7e 100644
--- a/podder/handlers.py
+++ b/podder/handlers.py
@@ -116,7 +116,6 @@
def stop_slaves(service, instance_name, instance_id, data, conf):
log.info('Stopping slaves for {}'.format(instance_name))
- network = obtain_network_name(data)
config = yaml.load(conf.render())
if service in config['services']:
service_shutdown(service, instance_name, config)
diff --git a/podder/slaves.yml.j2 b/podder/slaves.yml.j2
index 668d7d6..d72bae9 100644
--- a/podder/slaves.yml.j2
+++ b/podder/slaves.yml.j2
@@ -1,6 +1,6 @@
{% macro address(data, network) -%}
{% if data is defined and network is defined -%}
- {{ data['NetworkSettings']['Networks'][network]['IPAddress'] }}:{{ data['NetworkSettings']['Ports']['50555/tcp'][0]['HostPort'] }}
+ {{ data['NetworkSettings']['Networks'][network]['IPAddress'] }}:50555 }}
{%- else -%}
None:None
{%- endif %}