mbox series

[v5,0/4] Add support for containerized root filesystems

Message ID 20210215133918.50988-1-silvano.cirujano-cuesta@siemens.com
Headers show
Series Add support for containerized root filesystems | expand

Message

Silvano Cirujano Cuesta Feb. 15, 2021, 3:39 a.m. UTC
This patch series provides support for containerized root filesystems,
for both target images and SDKs.

For containerized target images the new image type `container-img` has
been added.

For containerized SDKs the task `populate_sdk` has been extended.

Containerized root filesystems are easy to distribute and run, enabling
this way following scenarios:
 - Use ISAR to build container images meant to be run only in containers.
 - Use the same ISAR configuration to build images for containers, VMs
   and bare-metal.
 - Easy SDK distribution and "installation".
 - Quickly testing certain applications in the workstation using the
   target root filesystem.

In order to build containerized target root filesystems `IMAGE_TYPE` has
to be `container-img`, additionally the container image format can be
selected with the variable `CONTAINER_FORMATS`. The default format is
`docker-archive`.

In order to build containerized SDKs the variable `SDK_FORMAT` has to
provide any of the supported container formats (e.g. `docker-archive`).
The default format is the legacy non-containerized: `tar_xz`.

More information about its usage is documented in the file
docs/user_manual.md.

A PoC/demo of this functionality (only the SDK part) has been created
based on the project https://github.com/siemens/meta-iot2050.
Jan Kiszka already tested and liked it! =>
https://github.com/siemens/meta-iot2050/issues/86#issuecomment-768907845

Successful builds of both containerized target and SDK are available on
the same PoC project:
 - https://github.com/Silvanoc/meta-iot2050/actions/runs/558311580
 - https://github.com/Silvanoc/meta-iot2050/actions/runs/558311581
and also the resulting images:
 - https://github.com/users/Silvanoc/packages/container/package/meta-iot2050%2Fiot2050-debian-arm64
 - https://github.com/users/Silvanoc/packages/container/package/meta-iot2050%2Fiot2050-debian-sdk-arm64

In order to get a feeling about its usage (you need Docker or Podman),
follow these simple copy&paste instructions:
https://github.com/Silvanoc/meta-iot2050/blob/master/kas/BUILDING-SDK-CONTAINER.md#running-the-sdk
Build instructions are available in the upper part of that document.

Two new dependencies are required to create containerized root
filesystems (as specified in the documentation).

Typical container image management actions (e.g. push an image to a
container image regitry) are out of scope. Available tools (Docker,
Skopeo, Buildah, Podman,...) should be used for these actions.

A patch will follow this one to get the dependencies into the container
images being provided by the project
https://github.com/siemens/kas (for `kas-container`, for example).

Silvano Cirujano Cuesta (4):
  classes: add root filesystem containerizing class
  classes: add new image type 'container-img'
  sdk: add support for containerized sdk
  docs: document creation of container images

 doc/user_manual.md                            | 127 ++++++++++++++++++
 meta/classes/container-img.bbclass            |  18 +++
 .../classes/image-container-extension.bbclass |  79 +++++++++++
 meta/classes/image-sdk-extension.bbclass      |  42 +++++-
 meta/classes/image.bbclass                    |   1 +
 5 files changed, 260 insertions(+), 7 deletions(-)
 create mode 100644 meta/classes/container-img.bbclass
 create mode 100644 meta/classes/image-container-extension.bbclass

Comments

Silvano Cirujano Cuesta Feb. 21, 2021, 11:16 p.m. UTC | #1
Friendly reminder

On 15/02/2021 14:39, [ext] Silvano Cirujano Cuesta wrote:
> This patch series provides support for containerized root filesystems,
> for both target images and SDKs.
>
> For containerized target images the new image type `container-img` has
> been added.
>
> For containerized SDKs the task `populate_sdk` has been extended.
>
> Containerized root filesystems are easy to distribute and run, enabling
> this way following scenarios:
>  - Use ISAR to build container images meant to be run only in containers.
>  - Use the same ISAR configuration to build images for containers, VMs
>    and bare-metal.
>  - Easy SDK distribution and "installation".
>  - Quickly testing certain applications in the workstation using the
>    target root filesystem.
>
> In order to build containerized target root filesystems `IMAGE_TYPE` has
> to be `container-img`, additionally the container image format can be
> selected with the variable `CONTAINER_FORMATS`. The default format is
> `docker-archive`.
>
> In order to build containerized SDKs the variable `SDK_FORMAT` has to
> provide any of the supported container formats (e.g. `docker-archive`).
> The default format is the legacy non-containerized: `tar_xz`.
>
> More information about its usage is documented in the file
> docs/user_manual.md.
>
> A PoC/demo of this functionality (only the SDK part) has been created
> based on the project https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fsiemens%2Fmeta-iot2050&data=04%7C01%7Csilvano.cirujano-cuesta%40siemens.com%7C2cd3aa178ab34860762f08d8d1b71e87%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C637489931711752194%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=WkM3UYp9Bfm7izayxUFAnLH%2FWZMpCPQxZOH5vXz1SM0%3D&reserved=0.
> Jan Kiszka already tested and liked it! =>
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fsiemens%2Fmeta-iot2050%2Fissues%2F86%23issuecomment-768907845&data=04%7C01%7Csilvano.cirujano-cuesta%40siemens.com%7C2cd3aa178ab34860762f08d8d1b71e87%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C637489931711752194%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=GjNKEX9eFMYjTDF3f17k9KUammBDStvCdi9yonqgV1o%3D&reserved=0
>
> Successful builds of both containerized target and SDK are available on
> the same PoC project:
>  - https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FSilvanoc%2Fmeta-iot2050%2Factions%2Fruns%2F558311580&data=04%7C01%7Csilvano.cirujano-cuesta%40siemens.com%7C2cd3aa178ab34860762f08d8d1b71e87%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C637489931711752194%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=Omk6MunatUrP06oYwsWLKeyeUnifRInL9uW1rde4pig%3D&reserved=0
>  - https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FSilvanoc%2Fmeta-iot2050%2Factions%2Fruns%2F558311581&data=04%7C01%7Csilvano.cirujano-cuesta%40siemens.com%7C2cd3aa178ab34860762f08d8d1b71e87%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C637489931711752194%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=u4jV%2BcWk5cu5m5SflXNtV%2FeejeO5Lks1VqTfKR8riXI%3D&reserved=0
> and also the resulting images:
>  - https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fusers%2FSilvanoc%2Fpackages%2Fcontainer%2Fpackage%2Fmeta-iot2050%252Fiot2050-debian-arm64&data=04%7C01%7Csilvano.cirujano-cuesta%40siemens.com%7C2cd3aa178ab34860762f08d8d1b71e87%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C637489931711752194%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=W7ThrUDCV94UIEGLDJwnuakDATL43r3KV9YJX1Gi%2F84%3D&reserved=0
>  - https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fusers%2FSilvanoc%2Fpackages%2Fcontainer%2Fpackage%2Fmeta-iot2050%252Fiot2050-debian-sdk-arm64&data=04%7C01%7Csilvano.cirujano-cuesta%40siemens.com%7C2cd3aa178ab34860762f08d8d1b71e87%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C637489931711752194%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=CPd2YFNnth%2Fokhh3F9CL2T0tOvKKBoX22R1kHPHsI6M%3D&reserved=0
>
> In order to get a feeling about its usage (you need Docker or Podman),
> follow these simple copy&paste instructions:
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FSilvanoc%2Fmeta-iot2050%2Fblob%2Fmaster%2Fkas%2FBUILDING-SDK-CONTAINER.md%23running-the-sdk&data=04%7C01%7Csilvano.cirujano-cuesta%40siemens.com%7C2cd3aa178ab34860762f08d8d1b71e87%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C637489931711752194%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=Z3%2FQeloU%2FAfPTeAWT7QLB9ORtEJ2V4Y9v0%2B3zX8D4L4%3D&reserved=0
> Build instructions are available in the upper part of that document.
>
> Two new dependencies are required to create containerized root
> filesystems (as specified in the documentation).
>
> Typical container image management actions (e.g. push an image to a
> container image regitry) are out of scope. Available tools (Docker,
> Skopeo, Buildah, Podman,...) should be used for these actions.
>
> A patch will follow this one to get the dependencies into the container
> images being provided by the project
> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fsiemens%2Fkas&data=04%7C01%7Csilvano.cirujano-cuesta%40siemens.com%7C2cd3aa178ab34860762f08d8d1b71e87%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C637489931711752194%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=lwdYFdlfKLiKEYMhyx3VW15%2B5t70noxUgJhwOCXQ5Fo%3D&reserved=0 (for `kas-container`, for example).
>
> Silvano Cirujano Cuesta (4):
>   classes: add root filesystem containerizing class
>   classes: add new image type 'container-img'
>   sdk: add support for containerized sdk
>   docs: document creation of container images
>
>  doc/user_manual.md                            | 127 ++++++++++++++++++
>  meta/classes/container-img.bbclass            |  18 +++
>  .../classes/image-container-extension.bbclass |  79 +++++++++++
>  meta/classes/image-sdk-extension.bbclass      |  42 +++++-
>  meta/classes/image.bbclass                    |   1 +
>  5 files changed, 260 insertions(+), 7 deletions(-)
>  create mode 100644 meta/classes/container-img.bbclass
>  create mode 100644 meta/classes/image-container-extension.bbclass
>
Jan Kiszka Feb. 22, 2021, 10:03 p.m. UTC | #2
On 15.02.21 14:39, [ext] Silvano Cirujano Cuesta wrote:
> This patch series provides support for containerized root filesystems,
> for both target images and SDKs.
> 
> For containerized target images the new image type `container-img` has
> been added.
> 
> For containerized SDKs the task `populate_sdk` has been extended.
> 
> Containerized root filesystems are easy to distribute and run, enabling
> this way following scenarios:
>  - Use ISAR to build container images meant to be run only in containers.
>  - Use the same ISAR configuration to build images for containers, VMs
>    and bare-metal.
>  - Easy SDK distribution and "installation".
>  - Quickly testing certain applications in the workstation using the
>    target root filesystem.
> 
> In order to build containerized target root filesystems `IMAGE_TYPE` has
> to be `container-img`, additionally the container image format can be
> selected with the variable `CONTAINER_FORMATS`. The default format is
> `docker-archive`.
> 
> In order to build containerized SDKs the variable `SDK_FORMAT` has to
> provide any of the supported container formats (e.g. `docker-archive`).
> The default format is the legacy non-containerized: `tar_xz`.
> 
> More information about its usage is documented in the file
> docs/user_manual.md.
> 
> A PoC/demo of this functionality (only the SDK part) has been created
> based on the project https://github.com/siemens/meta-iot2050.
> Jan Kiszka already tested and liked it! =>
> https://github.com/siemens/meta-iot2050/issues/86#issuecomment-768907845
> 
> Successful builds of both containerized target and SDK are available on
> the same PoC project:
>  - https://github.com/Silvanoc/meta-iot2050/actions/runs/558311580
>  - https://github.com/Silvanoc/meta-iot2050/actions/runs/558311581
> and also the resulting images:
>  - https://github.com/users/Silvanoc/packages/container/package/meta-iot2050%2Fiot2050-debian-arm64
>  - https://github.com/users/Silvanoc/packages/container/package/meta-iot2050%2Fiot2050-debian-sdk-arm64
> 
> In order to get a feeling about its usage (you need Docker or Podman),
> follow these simple copy&paste instructions:
> https://github.com/Silvanoc/meta-iot2050/blob/master/kas/BUILDING-SDK-CONTAINER.md#running-the-sdk
> Build instructions are available in the upper part of that document.
> 
> Two new dependencies are required to create containerized root
> filesystems (as specified in the documentation).
> 
> Typical container image management actions (e.g. push an image to a
> container image regitry) are out of scope. Available tools (Docker,
> Skopeo, Buildah, Podman,...) should be used for these actions.
> 
> A patch will follow this one to get the dependencies into the container
> images being provided by the project
> https://github.com/siemens/kas (for `kas-container`, for example).
> 
> Silvano Cirujano Cuesta (4):
>   classes: add root filesystem containerizing class
>   classes: add new image type 'container-img'
>   sdk: add support for containerized sdk
>   docs: document creation of container images
> 
>  doc/user_manual.md                            | 127 ++++++++++++++++++
>  meta/classes/container-img.bbclass            |  18 +++
>  .../classes/image-container-extension.bbclass |  79 +++++++++++
>  meta/classes/image-sdk-extension.bbclass      |  42 +++++-
>  meta/classes/image.bbclass                    |   1 +
>  5 files changed, 260 insertions(+), 7 deletions(-)
>  create mode 100644 meta/classes/container-img.bbclass
>  create mode 100644 meta/classes/image-container-extension.bbclass
> 

Looks good to me.

Jan
Anton Mikanovich March 1, 2021, 11:05 p.m. UTC | #3
15.02.2021 16:39, Silvano Cirujano Cuesta wrote:
> This patch series provides support for containerized root filesystems,
> for both target images and SDKs.
>
> For containerized target images the new image type `container-img` has
> been added.
>
> For containerized SDKs the task `populate_sdk` has been extended.
>
> Containerized root filesystems are easy to distribute and run, enabling
> this way following scenarios:
>   - Use ISAR to build container images meant to be run only in containers.
>   - Use the same ISAR configuration to build images for containers, VMs
>     and bare-metal.
>   - Easy SDK distribution and "installation".
>   - Quickly testing certain applications in the workstation using the
>     target root filesystem.
>
> In order to build containerized target root filesystems `IMAGE_TYPE` has
> to be `container-img`, additionally the container image format can be
> selected with the variable `CONTAINER_FORMATS`. The default format is
> `docker-archive`.
>
> In order to build containerized SDKs the variable `SDK_FORMAT` has to
> provide any of the supported container formats (e.g. `docker-archive`).
> The default format is the legacy non-containerized: `tar_xz`.
>
> More information about its usage is documented in the file
> docs/user_manual.md.
>
> A PoC/demo of this functionality (only the SDK part) has been created
> based on the project https://github.com/siemens/meta-iot2050.
> Jan Kiszka already tested and liked it! =>
> https://github.com/siemens/meta-iot2050/issues/86#issuecomment-768907845
>
> Successful builds of both containerized target and SDK are available on
> the same PoC project:
>   - https://github.com/Silvanoc/meta-iot2050/actions/runs/558311580
>   - https://github.com/Silvanoc/meta-iot2050/actions/runs/558311581
> and also the resulting images:
>   - https://github.com/users/Silvanoc/packages/container/package/meta-iot2050%2Fiot2050-debian-arm64
>   - https://github.com/users/Silvanoc/packages/container/package/meta-iot2050%2Fiot2050-debian-sdk-arm64
>
> In order to get a feeling about its usage (you need Docker or Podman),
> follow these simple copy&paste instructions:
> https://github.com/Silvanoc/meta-iot2050/blob/master/kas/BUILDING-SDK-CONTAINER.md#running-the-sdk
> Build instructions are available in the upper part of that document.
>
> Two new dependencies are required to create containerized root
> filesystems (as specified in the documentation).
>
> Typical container image management actions (e.g. push an image to a
> container image regitry) are out of scope. Available tools (Docker,
> Skopeo, Buildah, Podman,...) should be used for these actions.
>
> A patch will follow this one to get the dependencies into the container
> images being provided by the project
> https://github.com/siemens/kas (for `kas-container`, for example).
>
> Silvano Cirujano Cuesta (4):
>    classes: add root filesystem containerizing class
>    classes: add new image type 'container-img'
>    sdk: add support for containerized sdk
>    docs: document creation of container images
>
>   doc/user_manual.md                            | 127 ++++++++++++++++++
>   meta/classes/container-img.bbclass            |  18 +++
>   .../classes/image-container-extension.bbclass |  79 +++++++++++
>   meta/classes/image-sdk-extension.bbclass      |  42 +++++-
>   meta/classes/image.bbclass                    |   1 +
>   5 files changed, 260 insertions(+), 7 deletions(-)
>   create mode 100644 meta/classes/container-img.bbclass
>   create mode 100644 meta/classes/image-container-extension.bbclass
>
Do you plan to put both sdk and rootfs container creation under CI case 
(in docker-archive format probably, not to ruin kas-docker building)?
Silvano Cirujano Cuesta March 1, 2021, 11:30 p.m. UTC | #4
On 02/03/2021 10:05, Anton Mikanovich wrote:
> 15.02.2021 16:39, Silvano Cirujano Cuesta wrote:
>> This patch series provides support for containerized root filesystems,
>> for both target images and SDKs.
>>
>> For containerized target images the new image type `container-img` has
>> been added.
>>
>> For containerized SDKs the task `populate_sdk` has been extended.
>>
>> Containerized root filesystems are easy to distribute and run, enabling
>> this way following scenarios:
>>   - Use ISAR to build container images meant to be run only in containers.
>>   - Use the same ISAR configuration to build images for containers, VMs
>>     and bare-metal.
>>   - Easy SDK distribution and "installation".
>>   - Quickly testing certain applications in the workstation using the
>>     target root filesystem.
>>
>> In order to build containerized target root filesystems `IMAGE_TYPE` has
>> to be `container-img`, additionally the container image format can be
>> selected with the variable `CONTAINER_FORMATS`. The default format is
>> `docker-archive`.
>>
>> In order to build containerized SDKs the variable `SDK_FORMAT` has to
>> provide any of the supported container formats (e.g. `docker-archive`).
>> The default format is the legacy non-containerized: `tar_xz`.
>>
>> More information about its usage is documented in the file
>> docs/user_manual.md.
>>
>> A PoC/demo of this functionality (only the SDK part) has been created
>> based on the project https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fsiemens%2Fmeta-iot2050&data=04%7C01%7Csilvano.cirujano-cuesta%40siemens.com%7Cad4bf8937210493b054b08d8dd5a524a%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C637502727284407780%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=dQs%2Fz96YDE2A7P8vduYstzhPzPtgtmTMj%2BbL7rzJ7SA%3D&reserved=0.
>> Jan Kiszka already tested and liked it! =>
>> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fsiemens%2Fmeta-iot2050%2Fissues%2F86%23issuecomment-768907845&data=04%7C01%7Csilvano.cirujano-cuesta%40siemens.com%7Cad4bf8937210493b054b08d8dd5a524a%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C637502727284417779%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=EbMCfrcIp7Ox6g3qu76ZAEbfD0Hi2uFdQg8k3vRRjfQ%3D&reserved=0
>>
>> Successful builds of both containerized target and SDK are available on
>> the same PoC project:
>>   - https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FSilvanoc%2Fmeta-iot2050%2Factions%2Fruns%2F558311580&data=04%7C01%7Csilvano.cirujano-cuesta%40siemens.com%7Cad4bf8937210493b054b08d8dd5a524a%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C637502727284417779%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=GrSzLMcn5FCpBxbfiN6MR1JmDM2br4SiIZ8Sr3T5VZ0%3D&reserved=0
>>   - https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FSilvanoc%2Fmeta-iot2050%2Factions%2Fruns%2F558311581&data=04%7C01%7Csilvano.cirujano-cuesta%40siemens.com%7Cad4bf8937210493b054b08d8dd5a524a%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C637502727284417779%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=KOK%2FrnO2koZGMMvmVTvY2btxk8pQtSk94erdp6kSgjw%3D&reserved=0
>> and also the resulting images:
>>   - https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fusers%2FSilvanoc%2Fpackages%2Fcontainer%2Fpackage%2Fmeta-iot2050%252Fiot2050-debian-arm64&data=04%7C01%7Csilvano.cirujano-cuesta%40siemens.com%7Cad4bf8937210493b054b08d8dd5a524a%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C637502727284417779%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=a7PR38IxA8bv3w3AEytnAI3AmTxWEMNsgsdMh%2FB09z4%3D&reserved=0
>>   - https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fusers%2FSilvanoc%2Fpackages%2Fcontainer%2Fpackage%2Fmeta-iot2050%252Fiot2050-debian-sdk-arm64&data=04%7C01%7Csilvano.cirujano-cuesta%40siemens.com%7Cad4bf8937210493b054b08d8dd5a524a%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C637502727284417779%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=cUwlR32HYINq2uZFbsAgDpc5RVh4OeECEb8z1tFy%2Fpc%3D&reserved=0
>>
>> In order to get a feeling about its usage (you need Docker or Podman),
>> follow these simple copy&paste instructions:
>> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2FSilvanoc%2Fmeta-iot2050%2Fblob%2Fmaster%2Fkas%2FBUILDING-SDK-CONTAINER.md%23running-the-sdk&data=04%7C01%7Csilvano.cirujano-cuesta%40siemens.com%7Cad4bf8937210493b054b08d8dd5a524a%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C637502727284417779%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=johK8ZhCGDLqu1ylY0zhdsTNs4H9xi8fTXR5PZiG0Co%3D&reserved=0
>> Build instructions are available in the upper part of that document.
>>
>> Two new dependencies are required to create containerized root
>> filesystems (as specified in the documentation).
>>
>> Typical container image management actions (e.g. push an image to a
>> container image regitry) are out of scope. Available tools (Docker,
>> Skopeo, Buildah, Podman,...) should be used for these actions.
>>
>> A patch will follow this one to get the dependencies into the container
>> images being provided by the project
>> https://eur01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fsiemens%2Fkas&data=04%7C01%7Csilvano.cirujano-cuesta%40siemens.com%7Cad4bf8937210493b054b08d8dd5a524a%7C38ae3bcd95794fd4addab42e1495d55a%7C1%7C0%7C637502727284417779%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=XTlGc05JGsY%2FidOi7OTUU1znz4cAOrU5zO5WLo251kA%3D&reserved=0 (for `kas-container`, for example).
>>
>> Silvano Cirujano Cuesta (4):
>>    classes: add root filesystem containerizing class
>>    classes: add new image type 'container-img'
>>    sdk: add support for containerized sdk
>>    docs: document creation of container images
>>
>>   doc/user_manual.md                            | 127 ++++++++++++++++++
>>   meta/classes/container-img.bbclass            |  18 +++
>>   .../classes/image-container-extension.bbclass |  79 +++++++++++
>>   meta/classes/image-sdk-extension.bbclass      |  42 +++++-
>>   meta/classes/image.bbclass                    |   1 +
>>   5 files changed, 260 insertions(+), 7 deletions(-)
>>   create mode 100644 meta/classes/container-img.bbclass
>>   create mode 100644 meta/classes/image-container-extension.bbclass
>>
> Do you plan to put both sdk and rootfs container creation under CI case (in docker-archive format probably, not to ruin kas-docker building)?

Sorry, I don't get the question. Could you please rephrase the question?

In any case both of them can be run locally or on CI. In fact I've carefully selected the tools so that they can run on unprivileged containers being widely extended tools (umoci in fact is part of the OCI toolset).

BR,

  Silvano
Anton Mikanovich March 2, 2021, 3:30 a.m. UTC | #5
02.03.2021 12:30, Silvano Cirujano Cuesta wrote:
> On 02/03/2021 10:05, Anton Mikanovich wrote:
>> Do you plan to put both sdk and rootfs container creation under CI case (in docker-archive format probably, not to ruin kas-docker building)?
> Sorry, I don't get the question. Could you please rephrase the question?
>
> In any case both of them can be run locally or on CI. In fact I've carefully selected the tools so that they can run on unprivileged containers being widely extended tools (umoci in fact is part of the OCI toolset).
>
> BR,
>
>    Silvano
>
I mean IMAGE_TYPE `container-img` and SDK_FORMAT `docker-archive` are 
not used by any target in Isar, so it makes those parts of code to be 
not checked during ci_build.sh execution and not maintained in future. 
We should avoid merging unused code.
Hope I'm clarified it now.