Skip to content

Commit

Permalink
Changes to build restapi docker (#3993)
Browse files Browse the repository at this point in the history
  • Loading branch information
sumukhatv authored Jan 10, 2020
1 parent 6dcc08e commit 3b1ee5d
Show file tree
Hide file tree
Showing 7 changed files with 81 additions and 0 deletions.
4 changes: 4 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
Expand Up @@ -78,3 +78,7 @@
[submodule "src/sonic-ztp"]
path = src/sonic-ztp
url = https://github.com/Azure/sonic-ztp
[submodule "src/sonic-restapi"]
path = src/sonic-restapi
url = https://github.com/Azure/sonic-restapi.git
branch = master
25 changes: 25 additions & 0 deletions dockers/docker-sonic-restapi/Dockerfile.j2
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
{% from "dockers/dockerfile-macros.j2" import install_debian_packages, install_python_wheels, copy_files %}
FROM docker-config-engine-stretch

ARG docker_container_name
RUN [ -f /etc/rsyslog.conf ] && sed -ri "s/%syslogtag%/$docker_container_name#%syslogtag%/;" /etc/rsyslog.conf

## Make apt-get non-interactive
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update

{% if docker_sonic_restapi_debs.strip() -%}
# Copy locally-built Debian package dependencies
{{ copy_files("debs/", docker_sonic_restapi_debs.split(' '), "/debs/") }}

# Install locally-built Debian packages and implicitly install their dependencies
{{ install_debian_packages( docker_sonic_restapi_debs.split(' ')) }}
{%- endif %}

## Clean up
RUN apt-get clean -y; apt-get autoclean -y; apt-get autoremove -y

COPY ["supervisord.conf", "/etc/supervisor/conf.d/"]

ENTRYPOINT ["/usr/bin/supervisord"]
10 changes: 10 additions & 0 deletions dockers/docker-sonic-restapi/start.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
#!/usr/bin/env bash

mkdir -p /var/sonic
echo "# Config files managed by sonic-config-engine" > /var/sonic/config_status

rm -f /var/run/rsyslogd.pid

supervisorctl start rsyslogd

supervisorctl start restapi
12 changes: 12 additions & 0 deletions dockers/docker-sonic-restapi/supervisord.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
[supervisord]
logfile_maxbytes=1MB
logfile_backups=2
nodaemon=true

[program:restapi]
command=/usr/sbin/go-server-server -loglevel trace
priority=1
autostart=true
autorestart=false
stdout_logfile=/tmp/rest-api.out.log
stderr_logfile=/tmp/rest-api.err.log
20 changes: 20 additions & 0 deletions rules/docker-restapi.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
# docker image for rest-api

DOCKER_RESTAPI_STEM = docker-sonic-restapi
DOCKER_RESTAPI = $(DOCKER_RESTAPI_STEM).gz

$(DOCKER_RESTAPI)_DEPENDS += $(LIBHIREDIS) $(LIBNL3) $(LIBNL_GENL3) \
$(LIBNL_ROUTE3) $(LIBSWSSCOMMON) $(RESTAPI)

$(DOCKER_RESTAPI)_PATH = $(DOCKERS_PATH)/$(DOCKER_RESTAPI_STEM)

$(DOCKER_RESTAPI)_LOAD_DOCKERS += $(DOCKER_CONFIG_ENGINE_STRETCH)

SONIC_DOCKER_IMAGES += $(DOCKER_RESTAPI)
SONIC_STRETCH_DOCKERS += $(DOCKER_RESTAPI)
SONIC_INSTALL_DOCKER_IMAGES += $(DOCKER_RESTAPI)

$(DOCKER_RESTAPI)_CONTAINER_NAME = rest-api
$(DOCKER_RESTAPI)_RUN_OPT += --cap-add NET_ADMIN --privileged -t
$(DOCKER_RESTAPI)_RUN_OPT += -v /var/run/redis/redis.sock:/var/run/redis/redis.sock
$(DOCKER_RESTAPI)_RUN_OPT += -p=8090:8090/tcp
9 changes: 9 additions & 0 deletions rules/restapi.mk
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# sonic-rest-api package

RESTAPI = sonic-rest-api_1.0.1_amd64.deb
$(RESTAPI)_SRC_PATH = $(SRC_PATH)/sonic-restapi
$(RESTAPI)_DEPENDS += $(LIBHIREDIS_DEV) $(LIBNL3_DEV) $(LIBNL_GENL3_DEV) \
$(LIBNL_ROUTE3_DEV) $(LIBSWSSCOMMON_DEV) $(LIBSWSSCOMMON)
$(RESTAPI)_RDEPENDS += $(LIBHIREDIS) $(LIBNL3) $(LIBNL_GENL3) \
$(LIBNL_ROUTE3) $(LIBSWSSCOMMON)
SONIC_DPKG_DEBS += $(RESTAPI)
1 change: 1 addition & 0 deletions src/sonic-restapi
Submodule sonic-restapi added at 163ee2

0 comments on commit 3b1ee5d

Please sign in to comment.