From patchwork Mon Feb 15 03:39:14 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Silvano Cirujano Cuesta X-Patchwork-Id: 329 Return-Path: Delivered-To: ilbers.mnt@gmail.com Received: by 2002:a4a:c583:0:0:0:0:0 with SMTP id x3csp5394889oop; Mon, 15 Feb 2021 05:39:21 -0800 (PST) X-Received: by 2002:a2e:2f19:: with SMTP id v25mr9828132ljv.184.1613396361774; Mon, 15 Feb 2021 05:39:21 -0800 (PST) ARC-Seal: i=3; a=rsa-sha256; t=1613396361; cv=pass; d=google.com; s=arc-20160816; b=CEZk8LgZkLTKcQPam5B3Fn+XulDJ8Zedg3wN6fqmOkueh3QTah62jjZm9hdl+QC52Y wQCoAAwkp5pUmfm3rfDZK3fVL5t2VQIV3I9GyW6Bg0VzftWAONoSyh/98jLRVaidhSYb tGQlUsOZlMLJDEY8HfFu9NHA8+qt+1SVj/6PJpMaV5tpzjVmRG3OhbdhKmbBkLGkyVMb B6WyWIDO32eQI0qDU3vAdOBxL24vhq9Z4nmdCTvTAZ/zUYZ+mQ/s3gU1bMbDvrz477oD AoYI45sgMgK05JGBREzSky/TQcyhNrjTrYq2GX8HZ176jbdQpHliH0cflMmGxGIH7ZSK 5dvA== ARC-Message-Signature: i=3; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:mime-version:message-id:date :subject:to:from:sender:dkim-signature; bh=7UyWOqxZJGvTATZyNyZkxKUT9QhdxJFzNvMEWkdwyv4=; b=dGtWNhpS1Hs80b9pA0v9stS0zhEnh4AajGBHIo42Sz5i/wFEaol/VHGRYEzfAZFJen e4Uk+U2gdK44s8YjC8vbG+kd4ODDCLuA/tVPtWoJGMIxAaVyblZ1c7mK9/0r9PmpW2LD Imwhuwx+g+aaRMohQ3uPETUhFxPTDhd9lK5mjZkROJ7ZM/F+moozDGFN8vP+t08RXkCZ wnjOmliVdxUnMwPsx8LM+swHq9O38/oOyDbpG67gvkQs12r4QgqsU7sxsLyA9cuTufSV TsH+YUt3Trxxy8ZpAIn7T3o1f6U2A+Dg6HCH1AQzIhDGjzruSJhLW6+Z9LIxX+SUuJii j+bw== ARC-Authentication-Results: i=3; mx.google.com; dkim=pass header.i=@googlegroups.com header.s=20161025 header.b=milu1bwX; arc=pass (i=2 spf=pass spfdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of isar-users+bncbcd6jj6cqqfrbchtvgaqmgqedmjnmmi@googlegroups.com designates 209.85.220.55 as permitted sender) smtp.mailfrom=isar-users+bncBCD6JJ6CQQFRBCHTVGAQMGQEDMJNMMI@googlegroups.com; dmarc=fail (p=NONE sp=NONE dis=NONE arc=pass) header.from=siemens.com Received: from mail-sor-f55.google.com (mail-sor-f55.google.com. [209.85.220.55]) by mx.google.com with SMTPS id h17sor3509121lft.155.2021.02.15.05.39.21 (Google Transport Security); Mon, 15 Feb 2021 05:39:21 -0800 (PST) Received-SPF: pass (google.com: domain of isar-users+bncbcd6jj6cqqfrbchtvgaqmgqedmjnmmi@googlegroups.com designates 209.85.220.55 as permitted sender) client-ip=209.85.220.55; Authentication-Results: mx.google.com; dkim=pass header.i=@googlegroups.com header.s=20161025 header.b=milu1bwX; arc=pass (i=2 spf=pass spfdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of isar-users+bncbcd6jj6cqqfrbchtvgaqmgqedmjnmmi@googlegroups.com designates 209.85.220.55 as permitted sender) smtp.mailfrom=isar-users+bncBCD6JJ6CQQFRBCHTVGAQMGQEDMJNMMI@googlegroups.com; dmarc=fail (p=NONE sp=NONE dis=NONE arc=pass) header.from=siemens.com ARC-Seal: i=2; a=rsa-sha256; t=1613396361; cv=pass; d=google.com; s=arc-20160816; b=sTuTK9LkOEEFGSBATV6Y7OwzRqBSUIVLvAvXaABpMIJFZ7lthBTqcD9gAlti3cw1Zd eqio30/Oa9JzJUXj9v72YLDbiodevrttRBC8Zuljgb9cpqTO7Ymg6+rFToBcyLOYrvm5 Jh2mUUGkAoW7u14yx38YVinOJCy/rTcqttLJOypaoIX8HBuInMtAgZLgp245t0O08nFA 12DgwpER1jUSsEG0nUnJVDKdqFbwRQlaQn8mXPOZN1cPWqlqv6DBsPXQqeMwABqwv6JN 4n46nWPkocTnjyEPuHu9cLtqyTWNuOOUA2zACYMSYmbmSMcBVe9M4v8ADqNKc0AcEzPZ uuog== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:mime-version:message-id:date :subject:to:from:sender:dkim-signature; bh=7UyWOqxZJGvTATZyNyZkxKUT9QhdxJFzNvMEWkdwyv4=; b=U7k11JqOOq0aT+EGJNdjvHaN7l3OPQYnLGDHG7aLoTnVgb0vqEHsJ5drk5Opskmdte Nk0hDCNa2V3Q1UWeFzykHSJOa0ZfArKwbm0L7XOSFTUramB037H3TYxvFvRqaam+WfST o0rxzGEB9QdFwK7Z2BaQgXsfvf1ksLz1nCnYAeXB8rGg9LXoVFXQU1tKioNZkHiQqDM4 MwTJlkjvywNt3dUYgAANrT95nWKcSCTRQpl9Ubu860+hkOQbSdPzkMjvZ7NcCSb7ZqHR +VCx/W0JkDOfizKysqYINr/6KiT/RnyfP9Y6Hqg0ZEM/K34bQ3brvxrz/c3SSzo8J7yf v/Ug== ARC-Authentication-Results: i=2; gmr-mx.google.com; spf=pass (google.com: domain of silvano.cirujano-cuesta@siemens.com designates 194.138.37.39 as permitted sender) smtp.mailfrom=silvano.cirujano-cuesta@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20161025; h=sender:from:to:subject:date:message-id:mime-version :x-original-sender:x-original-authentication-results:precedence :mailing-list:list-id:list-post:list-help:list-archive :list-subscribe:list-unsubscribe; bh=7UyWOqxZJGvTATZyNyZkxKUT9QhdxJFzNvMEWkdwyv4=; b=milu1bwXRLeKiaBSgUxMDD86HRVP6T+D091tjGGQxlV9PnE4DWBDuGrI8JdSWEby87 eLeoHDuWX0AE41OJwFOxtvq5rCbkw5+He8NR5jhoLqfu+LxBJZK5bqZqPoGtwLk8mzcd WjG0lpy2+0rvD5uQjA7w9qOg1V++2bHukOdznrY6FaOSME62eZDmlXW/c9HST22i89Vy L5XwZP/9PlA1y1/ztXU3CRjfRzNZIT/On+CneSc/nCjOne6wYJEICKHBZ+EUM9HSt1Dz svXoIdoBCcCZsbgVftlt5SaC2FAMFkAlCmUiG9LGRle20CWibN9aSyEOlj/7wWUbx9T7 m5Xw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=sender:x-gm-message-state:from:to:subject:date:message-id :mime-version:x-original-sender:x-original-authentication-results :precedence:mailing-list:list-id:x-spam-checked-in-group:list-post :list-help:list-archive:list-subscribe:list-unsubscribe; bh=7UyWOqxZJGvTATZyNyZkxKUT9QhdxJFzNvMEWkdwyv4=; b=JBVh/L6ymb42OL379PwXv8by+OK9YfY8rSix9Dq9rB5krYTnXtgnOXREq/QcHPWQ5+ l7ESWpYjr8bvkxJipidagkc0nd1i2MDLdBZ+p7NSaSoVjE4RO1nWfeytgixuUAb7Jk3f crk3sAInDY1nRZ4ALiPQOy4GpD4MyPEdgPQCgg/zT3bUhIdKC4keZ5KxIObND+a0RSm6 Jd4g+1LgktjY2/kqwfckJfNF8ON2p9xJXUs9wNuAKZTd2enFVGJ2W9XxKaljefy2TAC/ jFngeF8LhTAsLXP7lNDM0hFG8tB+DgFZxP5tBZgPgbYEwPWoeoknx6NZs3ZGwbFBtsir zwSg== Sender: isar-users@googlegroups.com X-Gm-Message-State: AOAM532twcC/6Wi3HkXmvbP6uFppAGg2T1XpMHSswDMBAkFilVRLv34l miSdGNNAemCdcySG2YUd7bs= X-Google-Smtp-Source: ABdhPJyMT5cW+AWs9b7SJ2DgUdxmOLA8n9voaAXPa7luheEafi2AFIpKDvGckn7sFnJBaeMR2IUOuQ== X-Received: by 2002:a19:7f44:: with SMTP id a65mr8419218lfd.41.1613396360858; Mon, 15 Feb 2021 05:39:20 -0800 (PST) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a2e:bc11:: with SMTP id b17ls2934730ljf.7.gmail; Mon, 15 Feb 2021 05:39:19 -0800 (PST) X-Received: by 2002:a2e:a54f:: with SMTP id e15mr9466863ljn.441.1613396359869; Mon, 15 Feb 2021 05:39:19 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1613396359; cv=none; d=google.com; s=arc-20160816; b=K34WtgsZXqAD5UUPnQuIqUkHqRwtlMmmx3BfWSpNM7yx3Pv7ZvjqcFQ7PlYKlE5ApL I4CssJZIwFqLOoATPjKXxJGQyCFM4cgBOicP50I8nqz7ghaN+em+EiCdowE2ALmkin/5 IJ5JxuGdaOMsqRaqi9lW4wg1xRbbXADIlqaplqcslhn0G9EHLqpQ/hBAo73w/Uro4xwN r6FhTJGxjFQ66IHOgC6sSkM9qc//6B4uZAYqzxPNWxGTqpPzDfCRHHEfRk57smdjC5uC miAOJbUtr9Cpe4XK0P0f34WjybzEZi1iS31Xsb4Ge+iLZWfFT49wPMN6MDFFQ2/7n7P4 c3JA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:message-id:date:subject:to :from; bh=PeQbcLZQ6O91Np7mJSy2qE9pjW3aeAwrtgHQgcUfdEg=; b=Z+wD7aCdCIFBytaU6FtGOtXy8Ly6hVaNGvdHEikVMUF9LfHoXvdFA9gGW6EBONjhpr 6+i90US3S8jRcZYSREo1/sodEUHwPhYm5H8l26KzsCRQhan4zUIvPWDdZ7csnmZTw59L 2kWf7NUf7zgvlLgCwzJ1nWxWMxigVZxvTLjPLldaQz59XbTZSIw26HBDexCbQvqlYZ72 yn9+JGQw1gSns9pIBCPe3kMRXhy/lM6PmcIrb1AvzTSlrXfudAVFDRsnTjSh9tctli4B lkgWuxotFzgEljP96nPcIvFPTyHG8NCTH6rEoRVA3LNF/+gLiWXHOiOR7nRnbsQnrHqE pKjA== ARC-Authentication-Results: i=1; gmr-mx.google.com; spf=pass (google.com: domain of silvano.cirujano-cuesta@siemens.com designates 194.138.37.39 as permitted sender) smtp.mailfrom=silvano.cirujano-cuesta@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Received: from lizzard.sbs.de (lizzard.sbs.de. [194.138.37.39]) by gmr-mx.google.com with ESMTPS id t21si514383lfe.3.2021.02.15.05.39.19 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Mon, 15 Feb 2021 05:39:19 -0800 (PST) Received-SPF: pass (google.com: domain of silvano.cirujano-cuesta@siemens.com designates 194.138.37.39 as permitted sender) client-ip=194.138.37.39; Received: from mail2.sbs.de (mail2.sbs.de [192.129.41.66]) by lizzard.sbs.de (8.15.2/8.15.2) with ESMTPS id 11FDdJZt010038 (version=TLSv1.2 cipher=DHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK) for ; Mon, 15 Feb 2021 14:39:19 +0100 Received: from md1sf36c.ad001.siemens.net ([139.22.119.30]) by mail2.sbs.de (8.15.2/8.15.2) with ESMTP id 11FDdIHD008716 for ; Mon, 15 Feb 2021 14:39:18 +0100 From: Silvano Cirujano Cuesta To: isar-users@googlegroups.com Subject: [PATCH v5 0/4] Add support for containerized root filesystems Date: Mon, 15 Feb 2021 14:39:14 +0100 Message-Id: <20210215133918.50988-1-silvano.cirujano-cuesta@siemens.com> X-Mailer: git-send-email 2.30.0 MIME-Version: 1.0 X-Original-Sender: silvano.cirujano-cuesta@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; spf=pass (google.com: domain of silvano.cirujano-cuesta@siemens.com designates 194.138.37.39 as permitted sender) smtp.mailfrom=silvano.cirujano-cuesta@siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Precedence: list Mailing-list: list isar-users@googlegroups.com; contact isar-users+owners@googlegroups.com List-ID: X-Spam-Checked-In-Group: isar-users@googlegroups.com X-Google-Group-Id: 914930254986 List-Post: , List-Help: , List-Archive: , List-Unsubscribe: , X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: =?utf-8?q?1691768703749442101?= X-GMAIL-MSGID: =?utf-8?q?1691768703749442101?= 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