Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
150 commits
Select commit Hold shift + click to select a range
b90c810
[services] introduce sonic.target
stepanblyschak Oct 21, 2020
8030245
[timers] Fix timer units.
stepanblyschak Oct 26, 2020
831aa67
[services] make oneshot services RemainAfterExit=yes.
stepanblyschak Oct 26, 2020
58a8f3b
[services] remove redundant new-lines
stepanblyschak Oct 26, 2020
560e502
[services] add procdockerstatsd to sonic.target
stepanblyschak Oct 26, 2020
a51dcbb
[services] introduce sonic.target
stepanblyschak Oct 21, 2020
fb36b16
[timers] Fix timer units.
stepanblyschak Oct 26, 2020
ea29122
[services] make oneshot services RemainAfterExit=yes.
stepanblyschak Oct 26, 2020
0e27a92
[services] remove redundant new-lines
stepanblyschak Oct 26, 2020
1739f5c
[services] add procdockerstatsd to sonic.target
stepanblyschak Oct 26, 2020
0941849
Merge branch 'sonic_target_internal' into sonic_target
stepanblyschak Oct 28, 2020
b1e6e4e
[base-compatibility-version] introduce SONiC base OS compatibility ve…
stepanblyschak Nov 3, 2020
e64891e
[sonic_debian_exntesion] install docker_image_ctl.j2 template in the …
stepanblyschak Nov 3, 2020
881451d
[sonic_debian_extension] add docker script to SONiC filesystem
stepanblyschak Nov 3, 2020
2e01350
[sonic-package-manager] first phase implementation of sonic-package-m…
stepanblyschak Nov 3, 2020
86a1a44
[sonic-package-manager] build sonic-package-manager and install on SONiC
stepanblyschak Nov 3, 2020
541ccc0
[sonic-package-manager] if in chroot or database is not running do no…
stepanblyschak Nov 3, 2020
47bb9bf
fix s2s upgrade
stepanblyschak Nov 3, 2020
25c0e8f
fix problem that list required root
stepanblyschak Nov 3, 2020
aead06c
code cleanup
stepanblyschak Nov 3, 2020
9aa95d6
allow "manifest" command to accept a reference expression
stepanblyschak Nov 3, 2020
8ac0d84
remove commented code
stepanblyschak Nov 3, 2020
ba3991d
update PackageManager with docstrings
stepanblyschak Nov 3, 2020
62e23ba
fix s2s migration: return None instead of False
stepanblyschak Nov 4, 2020
79d9013
add few migration unit tests
stepanblyschak Nov 4, 2020
cf9d8a9
[sonic-package-manager] install CLI plugins
stepanblyschak Nov 4, 2020
10a84b1
[sonic-package-manager] support changelog
stepanblyschak Nov 4, 2020
dec2490
fix unmarshaling bug
stepanblyschak Nov 5, 2020
ebc4845
fix build-in uninstall, upgrade bug
stepanblyschak Nov 6, 2020
31e6383
add debug log for template rendering
stepanblyschak Nov 6, 2020
7499fdf
add missing newlines
stepanblyschak Nov 6, 2020
0fb254d
add docstrings to registry.py
stepanblyschak Nov 6, 2020
887d730
add docstrings to creator.py
stepanblyschak Nov 6, 2020
08ef84d
Merge remote-tracking branch 'origin/master' into sonic_target
stepanblyschak Nov 16, 2020
086599a
[sonic-host-services] add caclmgrd to sonic target]
stepanblyschak Nov 16, 2020
a624e0c
[dockers] Tag all docker images with a version number
stepanblyschak Sep 14, 2020
296127d
change dependency from SWSSSDK_PY2 to SWSSSDK_PY3
stepanblyschak Nov 16, 2020
f3e3ea8
put a comment about swsssdk dependency
stepanblyschak Nov 16, 2020
596267b
generate a header for monit.conf template
stepanblyschak Nov 16, 2020
7797b99
remove PEER and simplify service_mgmt.sh.j2
stepanblyschak Nov 16, 2020
89e0e3f
remove default Before=ntp-config.service
stepanblyschak Nov 16, 2020
d731b30
[database] internal review comments fixes
stepanblyschak Nov 16, 2020
aa178e9
[dockerapi.py] fixes per internal review
stepanblyschak Nov 16, 2020
d2dc252
[logger] dont pring "info" prefix for info logs
stepanblyschak Nov 16, 2020
d048d73
[progress] fixes per internal review
stepanblyschak Nov 16, 2020
2df144d
[reference] add missing newline at the end of file
stepanblyschak Nov 16, 2020
d21e009
[registry] fixes per internal review
stepanblyschak Nov 16, 2020
1d2b20a
[hostcfgd] Configure service auto-restart in hostcfgd.
stepanblyschak Oct 26, 2020
6f47365
add feature config parsing test
stepanblyschak Nov 16, 2020
bfbcfa8
[supervisor-proc-exit-listener] remove unused import
stepanblyschak Nov 16, 2020
73630b6
[constraint.py] fix parse docstring examples
stepanblyschak Nov 19, 2020
c074d12
[main.py] fixes per internal review
stepanblyschak Nov 19, 2020
7d144ea
fixes per internal review
stepanblyschak Nov 19, 2020
a8c7f4a
[manager.py] reformat file
stepanblyschak Nov 19, 2020
5239e7b
[manager] fixes per internal review
stepanblyschak Nov 24, 2020
14cb42b
[service_creator] add support to create timer unit
stepanblyschak Nov 24, 2020
31c1703
[service_creator] support for dependent and dependent-of fields
stepanblyschak Nov 24, 2020
717e5c6
[service_mgmt.sh.j2] add support for container lifetime hooks
stepanblyschak Nov 24, 2020
aef834d
[service_creator] add unit tests for ServiceCreator
stepanblyschak Nov 24, 2020
70e0244
convert line endings to unix style
stepanblyschak Nov 24, 2020
dfd5a1f
[service_creator] fix feature registration for delayed services
stepanblyschak Nov 24, 2020
f780162
[service_creator] add support for debug-dump command
stepanblyschak Nov 24, 2020
f15ec7b
convert semver to docker tag
stepanblyschak Nov 27, 2020
875650f
[dockers] Tag all docker images with a version number
stepanblyschak Sep 14, 2020
954cad9
[dockers] label SONiC Docker with manifest
stepanblyschak Nov 3, 2020
855fa60
[dockers] add package name to manifest
stepanblyschak Nov 16, 2020
5854762
[setup.py] update test req with pyfakefs
stepanblyschak Dec 1, 2020
2ff5335
internal review comments fixes
stepanblyschak Dec 7, 2020
bb9081b
Merge remote-tracking branch 'origin/master' into sonic_target
stepanblyschak Dec 9, 2020
7e6e8f5
Merge branch 'master' of github.com:azure/sonic-buildimage into auto_…
stepanblyschak Dec 9, 2020
921a652
Merge branch 'master' of github.com:azure/sonic-buildimage into spm
stepanblyschak Dec 9, 2020
f97fb78
Fix LGTM warnings
stepanblyschak Dec 9, 2020
6d9ad49
use pkgutil to get plugins directory path
stepanblyschak Dec 9, 2020
c250706
fix to use prettyprinter package
stepanblyschak Dec 10, 2020
6fc514e
fix base os compat version key string
stepanblyschak Dec 10, 2020
c1ba5a9
make name in manifest mandatory
stepanblyschak Dec 10, 2020
44685ba
remove swss dependency from dhcp-relay & router-advertiser
stepanblyschak Nov 16, 2020
3918474
[database.py] return a copy of PackageEntry
stepanblyschak Dec 11, 2020
013dbe5
[debug-dump] add a TODO for multi-asic
stepanblyschak Dec 11, 2020
e3aaaec
don't resolve CLI package path if cli plugins are not defined
stepanblyschak Dec 14, 2020
8666959
align cli according to HLD
stepanblyschak Dec 14, 2020
c639d5f
[init-cfg] set initial config of package
stepanblyschak Dec 15, 2020
dca3ab5
fix LGTM warning
stepanblyschak Dec 15, 2020
6c64157
[manifest] fix manifest output bugs
stepanblyschak Dec 17, 2020
23a88af
[service_mgmt.sh.j2] fix service name
stepanblyschak Dec 17, 2020
bf8401e
[feature] set service name, not package name
stepanblyschak Dec 17, 2020
6a63a8f
fix bug: use service name, not package name
stepanblyschak Dec 18, 2020
65ef1c1
[registry] support private registries that require authentication
stepanblyschak Dec 28, 2020
68a1fe7
[manifest_resolver] improve manifest errors handling
stepanblyschak Dec 28, 2020
e866dda
[service_creator] fix typo: "serivce" -> "service"
stepanblyschak Dec 29, 2020
a6662ff
Merge branch 'master' of github.com:azure/sonic-buildimage into sonic…
stepanblyschak Jan 5, 2021
6e91c39
Merge branch 'master' of github.com:azure/sonic-buildimage into auto_…
stepanblyschak Jan 5, 2021
d337e08
Merge branch 'master' of github.com:azure/sonic-buildimage into docke…
stepanblyschak Jan 5, 2021
5eb48a9
Merge branch 'master' of github.com:azure/sonic-buildimage into docke…
stepanblyschak Jan 5, 2021
99a24b7
[ntp] make ntp service part of sonic.target
stepanblyschak Jan 8, 2021
622aabe
add ability to install from local tarball image file and fix the issu…
stepanblyschak Jan 12, 2021
1b2095f
[templates] remove -i from docker exec command
stepanblyschak Jan 12, 2021
768e4c4
[manager] fix removing containers with old image
stepanblyschak Jan 12, 2021
ef0a93d
[manager] list all when removing stale containers
stepanblyschak Jan 12, 2021
f908b82
[docker_img_ctl.j2] remove tmpfs mounts; make it per docker
stepanblyschak Jan 6, 2021
99d9d12
Merge branch 'master' of github.com:azure/sonic-buildimage into docke…
stepanblyschak Jan 13, 2021
ed1bd3f
remove sonic-sdk added by mistake in this change
stepanblyschak Jan 13, 2021
50237b4
Merge branch 'master' into dockers_version_tags
stepanblyschak Jan 13, 2021
136fb20
[manager] fix local file installation when no entry present in database
stepanblyschak Jan 15, 2021
2a34674
[manager] optimize package migration.
stepanblyschak Jan 15, 2021
1962306
[manager] use file lock to protect from two processes making system l…
stepanblyschak Jan 15, 2021
9e8a7cd
[manager] do not override repository when installing/upgrading from l…
stepanblyschak Jan 17, 2021
be19c2f
[install] add --default-owner and --enable options
stepanblyschak Jan 18, 2021
89df522
[manager] do not hide original error in rollback
stepanblyschak Jan 18, 2021
5034a13
[manager] put a TODO on systemctl
stepanblyschak Jan 18, 2021
1465515
[manager] fix enabled state
stepanblyschak Jan 18, 2021
caf5c9e
Merge branch 'master' of github.com:azure/sonic-buildimage into docke…
stepanblyschak Jan 18, 2021
9bc4464
[dhcp-relay] make DHCP relay an extension
stepanblyschak Jan 18, 2021
61a24b2
[service_creator] support tmpfs mount
stepanblyschak Jan 18, 2021
285f7a3
[hostcfgd] enhance run_cmd with ability to raise exception and reuse …
stepanblyschak Jan 20, 2021
efc69f5
[slave.mk] align lines in dependencies
stepanblyschak Jan 20, 2021
5179e5d
Merge commit 'refs/pull/5705/head' of github.com:azure/sonic-buildimage
stepanblyschak Jan 20, 2021
769f75f
Merge commit 'refs/pull/5744/head' of github.com:azure/sonic-buildimage
stepanblyschak Jan 20, 2021
ff7fd7e
Merge commit 'refs/pull/5935/head' of github.com:azure/sonic-buildimage
stepanblyschak Jan 20, 2021
b233eb9
Merge commit 'refs/pull/5936/head' of github.com:azure/sonic-buildimage
stepanblyschak Jan 20, 2021
8236b41
Merge commit 'refs/pull/5937/head' of github.com:azure/sonic-buildimage
stepanblyschak Jan 20, 2021
9397618
Merge commit 'refs/pull/5938/head' of github.com:azure/sonic-buildimage
stepanblyschak Jan 20, 2021
e48b432
Merge commit 'refs/pull/5939/head' of github.com:azure/sonic-buildimage
stepanblyschak Jan 20, 2021
7fbc371
Merge commit 'refs/pull/6076/head' of github.com:azure/sonic-buildimage
stepanblyschak Jan 20, 2021
cc3fdaf
Merge commit 'refs/pull/6439/head' of github.com:azure/sonic-buildimage
stepanblyschak Jan 20, 2021
0d51671
[sea-integration] set sonic-utilities to own fork
stepanblyschak Jan 20, 2021
31d4bbf
Merge branch 'master' of github.com:azure/sonic-buildimage into docke…
stepanblyschak Jan 21, 2021
823eede
[docker-macsec] add version number for docker-macsec
stepanblyschak Jan 21, 2021
bdf0113
Merge branch 'dockers_version_tags' of github.com:stepanblyschak/soni…
stepanblyschak Jan 21, 2021
05df4ed
[docker-macsec] add manifest for macsec docker
stepanblyschak Jan 21, 2021
c3a5c38
[manifest] enhance manifest marshaling code.
stepanblyschak Jan 20, 2021
7f60f78
[sonic_db] remove swsssdk dependency
stepanblyschak Jan 21, 2021
51d383e
Merge commit 'refs/pull/5939/head' of github.com:azure/sonic-buildima…
stepanblyschak Jan 21, 2021
e966fef
[slave.mk] fix missing comma
stepanblyschak Jan 21, 2021
d79293e
[slave.mk] fix missing comma
stepanblyschak Jan 21, 2021
a90f9b4
[slave.mk] fix missing comma
stepanblyschak Jan 21, 2021
74cd875
[sonic_debian_extension.j2] use --enable instead of --enabled
stepanblyschak Jan 21, 2021
2e5f097
[slave.mk] fix target path
stepanblyschak Jan 21, 2021
e1b2c29
[docker-dhcp-relay] add cli to docker
stepanblyschak Jan 21, 2021
db7ef7d
[docker-dhcp-relay] add cli to docker
stepanblyschak Jan 21, 2021
95e4e94
Merge branch 'master' of github.com:azure/sonic-buildimage into sae-i…
stepanblyschak Jan 22, 2021
7da879a
Revert "[supervisord] Monitoring the critical processes with supervis…
stepanblyschak Jan 22, 2021
2b07d58
Merge commit 'refs/pull/21/head' of github.com:stepanblyschak/sonic-b…
stepanblyschak Jan 22, 2021
ec36254
Merge commit 'refs/pull/22/head' of github.com:stepanblyschak/sonic-b…
stepanblyschak Jan 22, 2021
8c69739
[manager] fix review comments
stepanblyschak Jan 22, 2021
92360be
Merge commit 'refs/pull/22/head' of github.com:stepanblyschak/sonic-b…
stepanblyschak Jan 22, 2021
e939bc2
[utilities] advance own fork
stepanblyschak Jan 22, 2021
ecd363d
Revert "[utilities] advance own fork"
stepanblyschak Jan 22, 2021
2703990
Revert "[utilities] advance own fork"
stepanblyschak Jan 22, 2021
eb2e234
Revert "[sea-integration] set sonic-utilities to own fork"
stepanblyschak Jan 22, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions Makefile.work
Original file line number Diff line number Diff line change
Expand Up @@ -241,6 +241,7 @@ SONIC_BUILD_INSTRUCTION := make \
HTTP_PROXY=$(http_proxy) \
HTTPS_PROXY=$(https_proxy) \
SONIC_INCLUDE_SYSTEM_TELEMETRY=$(INCLUDE_SYSTEM_TELEMETRY) \
INCLUDE_DHCP_RELAY=$(INCLUDE_DHCP_RELAY) \
SONIC_INCLUDE_RESTAPI=$(INCLUDE_RESTAPI) \
TELEMETRY_WRITABLE=$(TELEMETRY_WRITABLE) \
EXTRA_DOCKER_TARGETS=$(EXTRA_DOCKER_TARGETS) \
Expand Down
1 change: 1 addition & 0 deletions build_debian.sh
Original file line number Diff line number Diff line change
Expand Up @@ -467,6 +467,7 @@ sudo tee $FILESYSTEM_ROOT/etc/sonic/sonic_version.yml > /dev/null <<EOF
build_version: '${SONIC_IMAGE_VERSION}'
debian_version: '$(cat $FILESYSTEM_ROOT/etc/debian_version)'
kernel_version: '$kversion'
base_os_compatibility_version: ${BASE_OS_COMPATIBILITY_VERSION}
asic_type: $sonic_asic_platform
commit_id: '$(git rev-parse --short HEAD)'
build_date: $(date -u)
Expand Down
4 changes: 4 additions & 0 deletions dockers/docker-database/Dockerfile.j2
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
FROM docker-config-engine-buster

ARG docker_container_name
ARG manifest

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

# Make apt-get non-interactive
Expand Down Expand Up @@ -60,4 +62,6 @@ COPY ["critical_processes", "/etc/supervisor"]
COPY ["files/update_chassisdb_config", "/usr/local/bin/"]
COPY ["flush_unused_database", "/usr/local/bin/"]

LABEL com.azure.sonic.manifest="$manifest"

ENTRYPOINT ["/usr/local/bin/docker-database-init.sh"]
13 changes: 13 additions & 0 deletions dockers/docker-database/manifest.json.j2
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"version": "1.0.0",
"package": {
"version": "{{ version }}",
"base-os-contraint": "^1.0.0",
"name": "{{ package_name }}"
},
"service": {
"name": "{{ name }}",
"asic-service": true,
"host-service": true
}
}
4 changes: 2 additions & 2 deletions dockers/docker-database/supervisord.conf.j2
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ logfile_backups=2
nodaemon=true

[eventlistener:supervisor-proc-exit-listener]
command=/usr/bin/supervisor-proc-exit-listener --container-name database
events=PROCESS_STATE_EXITED,PROCESS_STATE_RUNNING
command=/usr/bin/supervisor-proc-exit-listener
events=PROCESS_STATE_EXITED
autostart=true
autorestart=unexpected

Expand Down
5 changes: 5 additions & 0 deletions dockers/docker-dhcp-relay/Dockerfile.j2
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,8 @@ FROM docker-config-engine-buster

ARG docker_container_name
ARG image_version
ARG manifest

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

# Make apt-get non-interactive
Expand Down Expand Up @@ -32,5 +34,8 @@ COPY ["docker_init.sh", "start.sh", "/usr/bin/"]
COPY ["docker-dhcp-relay.supervisord.conf.j2", "port-name-alias-map.txt.j2", "wait_for_intf.sh.j2", "/usr/share/sonic/templates/"]
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor"]
COPY ["cli", "/cli/"]

LABEL com.azure.sonic.manifest="$manifest"

ENTRYPOINT ["/usr/bin/docker_init.sh"]
84 changes: 84 additions & 0 deletions dockers/docker-dhcp-relay/cli/config/plugins/dhcp_relay.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,84 @@
import click
import utilities_common.cli as clicommon

@click.group(cls=clicommon.AbbreviationGroup, name='dhcp_relay')
def vlan_dhcp_relay():
pass

@vlan_dhcp_relay.command('add')
@click.argument('vid', metavar='<vid>', required=True, type=int)
@click.argument('dhcp_relay_destination_ip', metavar='<dhcp_relay_destination_ip>', required=True)
@clicommon.pass_db
def add_vlan_dhcp_relay_destination(db, vid, dhcp_relay_destination_ip):
""" Add a destination IP address to the VLAN's DHCP relay """

ctx = click.get_current_context()

if not clicommon.is_ipaddress(dhcp_relay_destination_ip):
ctx.fail('{} is invalid IP address'.format(dhcp_relay_destination_ip))

vlan_name = 'Vlan{}'.format(vid)
vlan = db.cfgdb.get_entry('VLAN', vlan_name)
if len(vlan) == 0:
ctx.fail("{} doesn't exist".format(vlan_name))

dhcp_relay_dests = vlan.get('dhcp_servers', [])
if dhcp_relay_destination_ip in dhcp_relay_dests:
click.echo("{} is already a DHCP relay destination for {}".format(dhcp_relay_destination_ip, vlan_name))
return

dhcp_relay_dests.append(dhcp_relay_destination_ip)
vlan['dhcp_servers'] = dhcp_relay_dests
db.cfgdb.set_entry('VLAN', vlan_name, vlan)
click.echo("Added DHCP relay destination address {} to {}".format(dhcp_relay_destination_ip, vlan_name))
try:
click.echo("Restarting DHCP relay service...")
clicommon.run_command("systemctl stop dhcp_relay", display_cmd=False)
clicommon.run_command("systemctl reset-failed dhcp_relay", display_cmd=False)
clicommon.run_command("systemctl start dhcp_relay", display_cmd=False)
except SystemExit as e:
ctx.fail("Restart service dhcp_relay failed with error {}".format(e))

@vlan_dhcp_relay.command('del')
@click.argument('vid', metavar='<vid>', required=True, type=int)
@click.argument('dhcp_relay_destination_ip', metavar='<dhcp_relay_destination_ip>', required=True)
@clicommon.pass_db
def del_vlan_dhcp_relay_destination(db, vid, dhcp_relay_destination_ip):
""" Remove a destination IP address from the VLAN's DHCP relay """

ctx = click.get_current_context()

if not clicommon.is_ipaddress(dhcp_relay_destination_ip):
ctx.fail('{} is invalid IP address'.format(dhcp_relay_destination_ip))

vlan_name = 'Vlan{}'.format(vid)
vlan = db.cfgdb.get_entry('VLAN', vlan_name)
if len(vlan) == 0:
ctx.fail("{} doesn't exist".format(vlan_name))

dhcp_relay_dests = vlan.get('dhcp_servers', [])
if not dhcp_relay_destination_ip in dhcp_relay_dests:
ctx.fail("{} is not a DHCP relay destination for {}".format(dhcp_relay_destination_ip, vlan_name))

dhcp_relay_dests.remove(dhcp_relay_destination_ip)
if len(dhcp_relay_dests) == 0:
del vlan['dhcp_servers']
else:
vlan['dhcp_servers'] = dhcp_relay_dests
db.cfgdb.set_entry('VLAN', vlan_name, vlan)
click.echo("Removed DHCP relay destination address {} from {}".format(dhcp_relay_destination_ip, vlan_name))
try:
click.echo("Restarting DHCP relay service...")
clicommon.run_command("systemctl stop dhcp_relay", display_cmd=False)
clicommon.run_command("systemctl reset-failed dhcp_relay", display_cmd=False)
clicommon.run_command("systemctl start dhcp_relay", display_cmd=False)
except SystemExit as e:
ctx.fail("Restart service dhcp_relay failed with error {}".format(e))


def register(cli):
cli.commands['vlan'].add_command(vlan_dhcp_relay)


if __name__ == '__main__':
vlan_dhcp_relay()
22 changes: 22 additions & 0 deletions dockers/docker-dhcp-relay/cli/show/plugins/dhcp_relay.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
from natsort import natsorted
from .. import vlan


def get_dhcp_helper_address(ctx, vlan):
cfg, _ = ctx
vlan_dhcp_helper_data, _, _ = cfg
vlan_config = vlan_dhcp_helper_data.get(vlan)
if not vlan_config:
return ""

dhcp_helpers = vlan_config.get('dhcp_servers', [])

return '\n'.join(natsorted(dhcp_helpers))


vlan.VlanBrief.COLUMNS.append(('DHCP Helper Address', get_dhcp_helper_address))


def register(cli):
pass

Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ events=PROCESS_STATE
buffer_size=50

[eventlistener:supervisor-proc-exit-listener]
command=/usr/bin/supervisor-proc-exit-listener --container-name dhcp_relay
events=PROCESS_STATE_EXITED,PROCESS_STATE_RUNNING
command=/usr/bin/supervisor-proc-exit-listener
events=PROCESS_STATE_EXITED
autostart=true
autorestart=unexpected

Expand Down
43 changes: 43 additions & 0 deletions dockers/docker-dhcp-relay/manifest.json.j2
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
{
"version": "1.0.0",
"package": {
"version": "{{ version }}",
"base-os-contraint": "^1.0.0",
"depends": [
"database^1.0.0"
],
"name": "{{ package_name }}"
},
"service": {
"name": "{{ name }}",
"requires": [
"updategraph"
],
"after": [
"swss",
"syncd",
"teamd"
],
"before": [
"ntp-config"
],
"dependent-of": ["swss"],
"asic-service": false,
"host-service": true
},
"container": {
"privileged": true,
"volumes": [
"/etc/sonic:/etc/sonic:ro",
"/usr/share/sonic/scripts:/usr/share/sonic/scripts:ro"
],
"tmpfs": [
"/tmp/",
"/var/tmp/"
]
},
"cli": {
"config": "/cli/config/plugins/dhcp_relay.py",
"show": "/cli/show/plugins/dhcp_relay.py"
}
}
4 changes: 4 additions & 0 deletions dockers/docker-fpm-frr/Dockerfile.j2
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
FROM docker-config-engine-buster

ARG docker_container_name
ARG manifest

ARG frr_user_uid
ARG frr_user_gid

Expand Down Expand Up @@ -60,4 +62,6 @@ RUN chmod a+x /usr/bin/TSA && \
chmod a+x /usr/bin/TSB && \
chmod a+x /usr/bin/TSC

LABEL com.azure.sonic.manifest="$manifest"

ENTRYPOINT ["/usr/bin/docker_init.sh"]
4 changes: 2 additions & 2 deletions dockers/docker-fpm-frr/frr/supervisord/supervisord.conf.j2
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,8 @@ events=PROCESS_STATE
buffer_size=50

[eventlistener:supervisor-proc-exit-listener]
command=/usr/bin/supervisor-proc-exit-listener --container-name bgp
events=PROCESS_STATE_EXITED,PROCESS_STATE_RUNNING
command=/usr/bin/supervisor-proc-exit-listener
events=PROCESS_STATE_EXITED
autostart=true
autorestart=unexpected

Expand Down
21 changes: 21 additions & 0 deletions dockers/docker-fpm-frr/manifest.json.j2
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"version": "1.0.0",
"package": {
"version": "{{ version }}",
"base-os-contraint": "^1.0.0",
"depends": [
"database^1.0.0",
"swss^1.0.0"
],
"conflicts": [
"fpm-gobgp",
"fpm-quagga"
],
"name": "{{ package_name }}"
},
"service": {
"name": "{{ name }}",
"asic-service": true,
"host-service": false
}
}
5 changes: 5 additions & 0 deletions dockers/docker-fpm-gobgp/Dockerfile.j2
Original file line number Diff line number Diff line change
@@ -1,5 +1,8 @@
FROM docker-fpm-quagga

ARG docker_container_name
ARG manifest

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

Expand Down Expand Up @@ -27,4 +30,6 @@ COPY ["daemons", "/etc/quagga/"]
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor"]

LABEL com.azure.sonic.manifest="$manifest"

ENTRYPOINT ["/usr/local/bin/supervisord"]
21 changes: 21 additions & 0 deletions dockers/docker-fpm-gobgp/manifest.json.j2
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"version": "1.0.0",
"package": {
"version": "{{ version }}",
"base-os-contraint": "^1.0.0",
"depends": [
"database^1.0.0",
"swss^1.0.0"
],
"conflicts": [
"fpm-frr",
"fpm-quagga"
],
"name": "{{ package_name }}"
},
"service": {
"name": "{{ name }}",
"asic-service": true,
"host-service": false
}
}
4 changes: 2 additions & 2 deletions dockers/docker-fpm-gobgp/supervisord.conf
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ logfile_backups=2
nodaemon=true

[eventlistener:supervisor-proc-exit-listener]
command=/usr/bin/supervisor-proc-exit-listener --container-name bgp
events=PROCESS_STATE_EXITED,PROCESS_STATE_RUNNING
command=/usr/bin/supervisor-proc-exit-listener
events=PROCESS_STATE_EXITED
autostart=true
autorestart=unexpected

Expand Down
4 changes: 4 additions & 0 deletions dockers/docker-fpm-quagga/Dockerfile.j2
Original file line number Diff line number Diff line change
@@ -1,6 +1,8 @@
FROM docker-config-engine

ARG docker_container_name
ARG manifest

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

# Make apt-get non-interactive
Expand Down Expand Up @@ -36,4 +38,6 @@ COPY ["*.j2", "/usr/share/sonic/templates/"]
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor"]

LABEL com.azure.sonic.manifest="$manifest"

ENTRYPOINT ["/usr/local/bin/supervisord"]
21 changes: 21 additions & 0 deletions dockers/docker-fpm-quagga/manifest.json.j2
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
{
"version": "1.0.0",
"package": {
"version": "{{ version }}",
"base-os-contraint": "^1.0.0",
"depends": [
"database^1.0.0",
"swss^1.0.0"
],
"conflicts": [
"fpm-gobgp",
"fpm-frr"
],
"name": "{{ package_name }}"
},
"service": {
"name": "{{ name }}",
"asic-service": true,
"host-service": false
}
}
4 changes: 2 additions & 2 deletions dockers/docker-fpm-quagga/supervisord.conf
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ logfile_backups=2
nodaemon=true

[eventlistener:supervisor-proc-exit-listener]
command=/usr/bin/supervisor-proc-exit-listener --container-name bgp
events=PROCESS_STATE_EXITED,PROCESS_STATE_RUNNING
command=/usr/bin/supervisor-proc-exit-listener
events=PROCESS_STATE_EXITED
autostart=true
autorestart=unexpected

Expand Down
Loading