sonic-buildimage/files/build_templates/manifest.json.j2
Stepan Blyshchak 2ef97bb5df
[dockers] change RPC, DBG dockers version: put RPG, DBG sign in build metadata part of the version (#8920)
- Why I did it
In case an app.ext requires a dependency syncd^1.0.0, the RPC version of syncd will not satisfy this constraint, since 1.0.0-rpc < 1.0.0. This is not correct to put 'rpc' as a prerelease identifier. Instead put 'rpc' as build metadata in the version: 1.0.0+rpc which satisfies the constraint ^1.0.0.

- How I did it
Changed the way how to version in RPC and DBG images are constructed.

- How to verify it
Install app.ext with syncd^1.0.0 dependency on a switch with RPC syncd docker.
Signed-off-by: Stepan Blyshchak <stepanb@nvidia.com>
2021-11-01 19:02:57 +02:00

44 lines
1.8 KiB
Django/Jinja

{%- if version_suffix %}
{#- append build metadata suffix to the version #}
{%- if '+' in version %}
{%- set version = version + '.' + version_suffix %}
{%- else %}
{%- set version = version + '+' + version_suffix %}
{%- endif %}
{%- endif %}
{
"version": "1.0.0",
"package": {
"version": "{{ version }}",
"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('') }}",
"clear": "{{ clear_cli_plugin|default('') }}"
}
}