Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
a624e0c
[dockers] Tag all docker images with a version number
stepanblyschak Sep 14, 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
44685ba
remove swss dependency from dhcp-relay & router-advertiser
stepanblyschak Nov 16, 2020
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
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
caf5c9e
Merge branch 'master' of github.com:azure/sonic-buildimage into docke…
stepanblyschak Jan 18, 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
e0735d2
[sonic_debian_extension.j2] fix merge conflict markers
stepanblyschak Jan 25, 2021
2066aa9
[dockers] use single manifest template
stepanblyschak Jan 29, 2021
422c245
tag SONiC images the old way
stepanblyschak Jan 30, 2021
5dd9278
Merge branch 'dockers_version_tags' into dockers_manifest
stepanblyschak Jan 30, 2021
888a0ea
check if docker has correct manifest after loading it
stepanblyschak Jan 30, 2021
53631d7
fix checking manifest
stepanblyschak Feb 15, 2021
a0d3124
Merge branch 'master' into dockers_manifest
stepanblyschak Mar 18, 2021
9d76601
Merge branch 'master' of github.com:azure/sonic-buildimage into docke…
stepanblyschak Mar 24, 2021
993d1c6
[SAE] warm/fast reboot services support
stepanblyschak Mar 24, 2021
808484b
add missing comma to manifest.json
stepanblyschak Mar 25, 2021
42109d7
fix finalize-warmboot
stepanblyschak Mar 25, 2021
3de0cb3
remove obsolete file
stepanblyschak Mar 25, 2021
a665d73
Merge branch 'dockers_manifest' of github.com:stepanblyschak/sonic-bu…
stepanblyschak Mar 25, 2021
5eff513
Merge branch 'dockers_manifest' into sae_p2_warm
stepanblyschak Mar 25, 2021
afc8473
[finalize-warmboot] fix bad substitution
stepanblyschak Mar 26, 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
5 changes: 5 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -20,13 +20,18 @@ target/
*-dbg
*dbg.j2
*.img
*.pyc

# Autogenerated Dockerfiles
sonic-slave*/Dockerfile
sonic-slave*/Dockerfile.user
dockers/*/Dockerfile
platform/*/docker-*/Dockerfile

# Autogenerated manifest files
dockers/*/manifest.json
platform/*/docker-*/manifest.json

# Installer-related files and directories
installer/x86_64/platforms/

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"]
4 changes: 4 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 @@ -33,4 +35,6 @@ COPY ["docker-dhcp-relay.supervisord.conf.j2", "port-name-alias-map.txt.j2", "wa
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor"]

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

ENTRYPOINT ["/usr/bin/docker_init.sh"]
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 @@ -61,4 +63,6 @@ RUN chmod a+x /usr/bin/TSA && \
chmod a+x /usr/bin/TSC && \
chmod a+x /usr/bin/zsocket.sh

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

ENTRYPOINT ["/usr/bin/docker_init.sh"]
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"]
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"]
4 changes: 4 additions & 0 deletions dockers/docker-iccpd/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 @@ -31,4 +33,6 @@ RUN apt-get clean -y && \
apt-get autoremove -y && \
rm -rf /debs

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

ENTRYPOINT ["/usr/local/bin/supervisord"]
4 changes: 4 additions & 0 deletions dockers/docker-lldp/Dockerfile.j2
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
FROM docker-config-engine-buster

ARG docker_container_name
ARG manifest
ARG image_version

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 @@ -49,4 +51,6 @@ COPY ["lldpmgrd", "/usr/bin/"]
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor"]

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

ENTRYPOINT ["/usr/bin/docker-lldp-init.sh"]
3 changes: 3 additions & 0 deletions dockers/docker-macsec/Dockerfile.j2
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
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 All @@ -28,4 +29,6 @@ COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor"]
COPY ["etc/wpa_supplicant.conf", "/etc/wpa_supplicant.conf"]

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

ENTRYPOINT ["/usr/local/bin/supervisord"]
4 changes: 4 additions & 0 deletions dockers/docker-nat/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

RUN echo
Expand Down Expand Up @@ -35,4 +37,6 @@ COPY ["critical_processes", "/etc/supervisor"]
RUN apt-get clean -y; apt-get autoclean -y; apt-get autoremove -y
RUN rm -rf /debs

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

ENTRYPOINT ["/usr/local/bin/supervisord"]
4 changes: 4 additions & 0 deletions dockers/docker-orchagent/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 @@ -75,4 +77,6 @@ COPY ["critical_processes", "/etc/supervisor/"]
# Copy all Jinja2 template files into the templates folder
COPY ["*.j2", "/usr/share/sonic/templates/"]

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

ENTRYPOINT ["/usr/bin/docker-init.sh"]
4 changes: 4 additions & 0 deletions dockers/docker-platform-monitor/Dockerfile.j2
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
FROM docker-config-engine-buster

ARG docker_container_name
ARG manifest
ARG image_version

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 @@ -90,4 +92,6 @@ COPY ["ssd_tools/*", "/usr/bin/"]
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor"]

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

ENTRYPOINT ["/usr/bin/docker_init.sh"]
4 changes: 4 additions & 0 deletions dockers/docker-router-advertiser/Dockerfile.j2
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
FROM docker-config-engine-buster

ARG docker_container_name
ARG manifest
ARG image_version

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 @@ -37,4 +39,6 @@ COPY ["radvd.conf.j2", "wait_for_link.sh.j2", "docker-router-advertiser.supervis
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor"]

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

ENTRYPOINT ["/usr/bin/docker-init.sh"]
4 changes: 4 additions & 0 deletions dockers/docker-sflow/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 @@ -32,4 +34,6 @@ COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor"]
COPY ["port_index_mapper.py", "/usr/bin"]

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

ENTRYPOINT ["/usr/local/bin/supervisord"]
4 changes: 4 additions & 0 deletions dockers/docker-snmp/Dockerfile.j2
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
FROM docker-config-engine-buster

ARG docker_container_name
ARG manifest
ARG image_version

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

# Enable -O for all Python calls
Expand Down Expand Up @@ -77,4 +79,6 @@ COPY ["critical_processes", "/etc/supervisor"]
# Although exposing ports is not needed for host net mode, keep it for possible bridge mode
EXPOSE 161/udp 162/udp

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

ENTRYPOINT ["/usr/local/bin/supervisord"]
4 changes: 4 additions & 0 deletions dockers/docker-sonic-mgmt-framework/Dockerfile.j2
Original file line number Diff line number Diff line change
@@ -1,6 +1,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 @@ -53,4 +55,6 @@ RUN apt-get remove -y g++ python3-dev
RUN apt-get clean -y; apt-get autoclean -y; apt-get autoremove -y
RUN rm -rf /debs

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

ENTRYPOINT ["/usr/local/bin/supervisord"]
4 changes: 4 additions & 0 deletions dockers/docker-sonic-restapi/Dockerfile.j2
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,8 @@
FROM docker-config-engine-stretch

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 All @@ -25,4 +27,6 @@ COPY ["supervisord.conf", "/etc/supervisor/conf.d/"]
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor"]

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

ENTRYPOINT ["/usr/local/bin/supervisord"]
4 changes: 4 additions & 0 deletions dockers/docker-sonic-telemetry/Dockerfile.j2
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,9 @@
FROM docker-config-engine-buster

ARG docker_container_name
ARG manifest
ARG image_version

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,4 +34,6 @@ COPY ["supervisord.conf", "/etc/supervisor/conf.d/"]
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor"]

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

ENTRYPOINT ["/usr/local/bin/supervisord"]
4 changes: 4 additions & 0 deletions dockers/docker-teamd/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 All @@ -27,4 +29,6 @@ COPY ["supervisord.conf", "/etc/supervisor/conf.d/"]
COPY ["files/supervisor-proc-exit-listener", "/usr/bin"]
COPY ["critical_processes", "/etc/supervisor"]

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

ENTRYPOINT ["/usr/local/bin/supervisord"]
35 changes: 35 additions & 0 deletions files/build_templates/manifest.json.j2
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
{
"version": "1.0.0",
"package": {
"version": "{{ version }}",
"base-os-contraint": "^{{ base_os_ver.split('.')[0] }}.0.0",
"depends": {{ depends.split()|json if depends is defined else []}},
"name": "{{ package_name }}"
},
"service": {
"name": "{{ name }}",
"requires": {{ requires.split()|json if requires is defined else [] }},
"after": {{ after.split()|json if after is defined else [] }},
"before": {{ before.split()|json if before is defined else [] }},
"dependent-of": {{ dependent_of.split()|json if dependent_of is defined else [] }},
"asic-service": {{ asic_service }},
"host-service": {{ host_service }},
"warm-shutdown": {
"after": {{ warm_shutdown_after.split()|json if warm_shutdown_after is defined else [] }},
"before": {{ warm_shutdown_before.split()|json if warm_shutdown_before is defined else [] }}
},
"fast-shutdown": {
"after": {{ fast_shutdown_after.split()|json if fast_shutdown_after is defined else [] }},
"before": {{ fast_shutdown_before.split()|json if fast_shutdown_before is defined else [] }}
}
},
"container": {
"privileged": {{ privileged if privileged else 'false' }},
"volumes": {{ volumes.split()|json if volumes is defined else [] }},
"tmpfs": {{ tmpfs.split()|json if tmpfs is defined else [] }}
},
"cli": {
"config": "{{ config_cli_plugin|default('') }}",
"show": "{{ show_cli_plugin|default('') }}"
}
}
17 changes: 17 additions & 0 deletions files/build_templates/packages.json.j2
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
{
{% for docker_installation_target in installer_images.strip().split() -%}
{% set pkgname, docker_build_path, image = docker_installation_target.split('|') -%}
{% set imagefilepath = image.split(':')|first -%}
{% set imageversion = image.split(':')|last -%}
{% set imagefilename = imagefilepath.split('/')|last -%}
{% set imagename = imagefilename.split('.')|first -%}
"{{ pkgname }}": {
"repository": "{{ imagename }}",
"description": "SONiC {{ pkgname }} package",
"default-reference": "{{ imageversion }}",
"installed-version": "{{ imageversion }}",
"built-in": true,
"installed": true
}{% if not loop.last %},{% endif %}
{% endfor %}
}
Loading