From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from shymkent.ilbers.de ([unix socket]) by shymkent (Cyrus 2.5.10-Debian-2.5.10-3+deb9u2) with LMTPA; Fri, 12 Jul 2024 15:46:09 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-qv1-f62.google.com (mail-qv1-f62.google.com [209.85.219.62]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 46CDk8qe023476 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Fri, 12 Jul 2024 15:46:09 +0200 Received: by mail-qv1-f62.google.com with SMTP id 6a1803df08f44-6b7431d8475sf51321516d6.1 for ; Fri, 12 Jul 2024 06:46:09 -0700 (PDT) ARC-Seal: i=3; a=rsa-sha256; t=1720791963; cv=pass; d=google.com; s=arc-20160816; b=P1/Nj7o1btv0/aYOPmSj1K1R+MWRzQBBntp3P/rVPJRO2lkDwX8lmEAY20ybZC+xxE XtuMaIz4axyUw+/4foPT7PaB5X9oLht00eUbJUYfJYYGZyVbIHvlyQHlJOZNS8vpTC8x +go+i8TwzxS321WBoUEt/RHigOZr7ZqSyh0AjqMzdL3zEsv3/uN/v0xbVe+YIyK0nG5P i5VtXKpzfdu6QYYpXYHItOK/saDDVZuUnte9S0N4B64qBRFzltRaOvWmU8yqWItarIFQ MJrEey0igEan7WQnf4loz0Mmi8JBqzHmMqlxS0ZdgOdLTuLev/RjQ8Pt0ZMOxkKqeITL eJFA== 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:reply-to:mime-version :content-transfer-encoding:in-reply-to:autocrypt:content-language :from:references:to:subject:user-agent:date:message-id :dkim-signature; bh=VrForEGGcOUDZi/7YRjinvO7HAS86qwujpc6UFTbuaI=; fh=f/xG8KjLYXFJuY425gZy873oa5PR4W3bQZRhWDMzEl0=; b=0aLLferric5krGHzHl7q56V+ykwCa0iyMcNDQhAhb90mi4fjUCxKr5NYj7eCJloYjh +ng8cWQFkKdIFq9lczc70WzyIB1G/JTEGJqH3N+5phM/26lHARGfIQH2ae+aZOLgF3S4 SsvG6u1LZ49RzCZnVmXSjiZCkiNc717drVeOfmHxXigqghj/AM1Tj21CGWhQWUyGjfGv d4K8JltL4pIa4W5HHsbnYtQiFcgfdxmgPDygUD5NtXtkqh4Ky6VP4KkuUWQglToNB+G4 B353oBUP49p/KnkUKvG7WzC0aIs4aMgG2L0999dDUEI2NHVVBcPGZ/dCYq0t7XXL9c5D l6BA==; darn=isar-build.org ARC-Authentication-Results: i=3; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=JrJ4QaMB; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of jan.kiszka@siemens.com designates 2a01:111:f403:2608::600 as permitted sender) smtp.mailfrom=jan.kiszka@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlegroups.com; s=20230601; t=1720791962; x=1721396762; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:mime-version :content-transfer-encoding:in-reply-to:autocrypt:content-language :from:references:to:subject:user-agent:date:message-id:from:to:cc :subject:date:message-id:reply-to; bh=VrForEGGcOUDZi/7YRjinvO7HAS86qwujpc6UFTbuaI=; b=j4SDkysLwnnKc6Vkbkz23P8uWi3iFl7rcZnY8DsvZc7479gbmnQIorRjvPy6Xh6umx fQybPKaFSMhUAA6Wxc1exd+Yial9t30206f1jtMS95twaGX31g8oGYVlsNC/D+PttqxP FPoZHMAuXhY2ecpGGfIDSGtnlrU8Cq/jynUkxBzLDLyoO8vkYqEK9p3k8+a5K8PZg3mv TZvbJ+NWCf02ea7pjfQrPJmGZ0yWHr8/wzh3lYtTLiyFQaXsSXiniHQPtagZQvdHpzRd PpgLc++cMWA7dAPIRxt5Lo1RFc8cU+lIwvAbAZveNs8ypeSdNxXfmK/+OGRpaPzD3Fmy aEvg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1720791962; x=1721396762; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence:reply-to :x-original-authentication-results:x-original-sender:mime-version :content-transfer-encoding:in-reply-to:autocrypt:content-language :from:references:to:subject:user-agent:date:message-id:x-beenthere :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=VrForEGGcOUDZi/7YRjinvO7HAS86qwujpc6UFTbuaI=; b=JaVwA46oD7AyS27Vd4RH9K8MOG0ad+vBr8QpsOMWJzLM+K9QGgXg2ZWZEFRWx1tSdq ophO/hPFd99PXXp6wWQAWYjQ1tfFeD62vQI+Dx5h17vWCvtBUDd15c3Yd0pN453s8Cbq u+w6cU8Wie2ErtGtxmtQ3zvnGaMEc/txNWhytRaiME4ON3vmOo0m6G38XqJfdbp+dTZq 1stoRBJu39EekrxmLEFbjrwL6IQXn0PCZaJZh58FcJQFFQ7cjupSCmIo8HrTQ6s2e7MF zdMiD/5L01QSLZB8msR9NX8B5nQkxBpiJ3Ju7C3175hr6GyesiivEY7QAzVehLBRZLiT 3EhA== X-Forwarded-Encrypted: i=3; AJvYcCWOQAzpdB3K+Sdb6FOszNXosUuYr/v4BqxNe8oaNmKIdggnf6iU+yDdffQGfy1USq+U0BZ+ZpUOKdJfSdVx/r5MiU0= X-Gm-Message-State: AOJu0YwcVp7XOvgx7p7zfpU5dQGBowBrU/9ADhS63vldTn43qamSC0Dc p+9XvTpHZ/ELZkS5qSDS39FuI0baWYRgfoCmcwQkuKnq1xpJyiec X-Google-Smtp-Source: AGHT+IGefPhSv/7UFbxL9qsu+KK4fhS6PzkfcudaFEtL36FsrH7qTuwG2x3qHmCF69SthV4D4DlfqA== X-Received: by 2002:a05:6214:12c1:b0:6af:c2ec:3313 with SMTP id 6a1803df08f44-6b754c12211mr46756986d6.26.1720791962589; Fri, 12 Jul 2024 06:46:02 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:ad4:5993:0:b0:6ad:782a:b4d5 with SMTP id 6a1803df08f44-6b74b426bd8ls35237386d6.1.-pod-prod-00-us; Fri, 12 Jul 2024 06:46:02 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCXlK3HSfu98iMe9ssYWaMFJSsA6uHgyEPBWS+D4QlTZM00MvJAo7JUBGN9iTz+yjLHqZMDfWUm5lC7KVu+6/mS4l0qk6VXfyQtUI5A= X-Received: by 2002:a05:6214:4011:b0:6b0:8991:a2f7 with SMTP id 6a1803df08f44-6b754bc38a9mr48652556d6.12.1720791961853; Fri, 12 Jul 2024 06:46:01 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1720791961; cv=pass; d=google.com; s=arc-20160816; b=FbgZpK2ibyhabvJX10fSL1wm6o4eq7TMEO7ymsELHyG0zOa5HcyAJmwvoL8b7lnrqO EgVLoTRhfrDZ9nRwnl3a5nsZ+er7XOHNTbOJYKn4dZzVVyACZmDaXUJbjqhadfiJzCNJ vw2fklFkeHdiDZfLmNJZUSsxaoY/nid7R/hgbQXbzVKuGclMM/dp73RhyFi+E0w2HjU3 RjxiEvr58kkJQDsaQWx9E2+XuoXoSRpX4/tsQIRwwpFHnVcd4rz8zAZyOEv7wz5A/ZFy 1tw/CRVj+0EUlElsQBFA54BEp81Z+RaiQwua9owWQggTklA2mtOGbX8gVcQ0dDJsNEL1 rLyQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=mime-version:content-transfer-encoding:in-reply-to:autocrypt :content-language:from:references:to:subject:user-agent:date :message-id:dkim-signature; bh=KqQL1IFNiZ0tNTLB731eTbv5I3+dXf/kJs6k/KGosdA=; fh=xl3CJtLHIxnr4TzoVf3+YQNFcK4ulGG/c9OR1k/EIaY=; b=H8StBjDvwcbva6wFSskiMrfGmV2WjucIIxOvy7QuPth+DpuQSdOpXwPAhBrBp2yXNX GQ3mEepKF4MV78ASNh7j/0FYAVBVvBYheyqOdxvzGblWJSecuYpyTt/ZBF+KR0zQkXN0 sbOqZj0xdVXCDggyJn7V2+tahWsnjR2dYz85s5g1xoSvB9UL1S9byeJEDmyffT6dR/Fx sGWu0emiwkR9j5OwqL4GABwj7/rf74IfAbh0J/gljiDwCLoNmA55lfraC1NKbaFe2qkz SBfKPihGAeuFgR6nUULTY+Bl2L3FGFq9OqmBOiKR+Ca9eG/amERLLSywD8eKHY/2GyTA IJtg==; dara=google.com ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=JrJ4QaMB; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of jan.kiszka@siemens.com designates 2a01:111:f403:2608::600 as permitted sender) smtp.mailfrom=jan.kiszka@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from EUR02-DB5-obe.outbound.protection.outlook.com (mail-db5eur02on20600.outbound.protection.outlook.com. [2a01:111:f403:2608::600]) by gmr-mx.google.com with ESMTPS id 6a1803df08f44-6b61bb24c4dsi4036476d6.8.2024.07.12.06.46.01 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 12 Jul 2024 06:46:01 -0700 (PDT) Received-SPF: pass (google.com: domain of jan.kiszka@siemens.com designates 2a01:111:f403:2608::600 as permitted sender) client-ip=2a01:111:f403:2608::600; ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=kNXzmTSaoD5SAH5LdRaLbKsCSfjs0CEznqHACD4XFsjmzk11J1ExKpuZYXQPqcU6QXoL2ELzgo3PfKXkpaLbaB25Uw9jSSxDiCMTbJwyrmOc4AX3zX3WlvAulWyoB4pDYKuLU6YOA9RiBgldXOWi3G6ExfhSiIzCTXivDOJ1RIfrtbc/i60HrIUrc4+9jNCBkz3zAiRiPxUrtVYeePX/dlmeMuoQU2j79EMPg0dBZDJA0hnLElRVSXSNJfMgd8hXgouAtwqW8lykvPSJzksFbFNMhBZBPs4epF2BpML+iVTYAfJ7hFpEi/u6NV0Are1k61c7X4x1J/FEN0Su6pVZQw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=KqQL1IFNiZ0tNTLB731eTbv5I3+dXf/kJs6k/KGosdA=; b=Dlt5aFLxk45OFkpCB6l2cCaoT6TNJrX4cLrYE60ADT/YLh9qqUGc91NYyqrwi6JAAVxFMvi43T0Ms7/M0BWtTjdb+CVYPVX66cvfIZiRZw0wQbvshTMNgcNZ3LGbJxgronZV7MxobMS5mW0/VEn5MFa18U1KH/u0zI3f4zSg4OZejMNUI9wo41JzAQsU+m2zu2fekbhR0jBHr7RLJeLEsp74e9JJYtngma92lLZ3rmF17xx0EpPdOuB8NjPa0swE0Eo4vJekYmFz0CuSn4q9rRIf4uIsuWUj4yEkkGFirfp8vGP3f7aAQkCAq/xeHeKcUrvIIJXk0KeH8d0lGxQfug== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=siemens.com; dmarc=pass action=none header.from=siemens.com; dkim=pass header.d=siemens.com; arc=none Received: from GV2PR10MB6186.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:150:76::15) by GV1PR10MB5795.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:150:62::5) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7762.22; Fri, 12 Jul 2024 13:45:59 +0000 Received: from GV2PR10MB6186.EURPRD10.PROD.OUTLOOK.COM ([fe80::7fc:74bb:a781:a286]) by GV2PR10MB6186.EURPRD10.PROD.OUTLOOK.COM ([fe80::7fc:74bb:a781:a286%4]) with mapi id 15.20.7762.020; Fri, 12 Jul 2024 13:45:59 +0000 Message-ID: <960c2ec4-c365-4aff-998b-569207354dcb@siemens.com> Date: Fri, 12 Jul 2024 15:45:57 +0200 User-Agent: Mozilla Thunderbird Subject: Re: [RFC][PATCH 2/3] container-loader: Introduce helper to load container images into local registry To: "Niedermayr, Benedikt (T CED OES-DE)" , "isar-users@googlegroups.com" References: From: "'Jan Kiszka' via isar-users" Content-Language: en-US Autocrypt: addr=jan.kiszka@siemens.com; keydata= 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 In-Reply-To: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-ClientProxiedBy: FR4P281CA0431.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:d1::19) To GV2PR10MB6186.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:150:76::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV2PR10MB6186:EE_|GV1PR10MB5795:EE_ X-MS-Office365-Filtering-Correlation-Id: cea4e9c9-3936-4cf2-c38c-08dca278f64a X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|1800799024|376014; X-Microsoft-Antispam-Message-Info: =?utf-8?B?UHZiaExRS2QvOU4rU0o0cTcxWHJSQTJ0a2xVM2o2VGFlOWk5UFZJRFEzM3dP?= =?utf-8?B?Mzh6R0xGT1JRZkZXNW1FZUp2czdhbVBFVGZnM01RMGVUcXZYR1ZTdUJhY2hk?= =?utf-8?B?NGlTMmp4TWMwVHIxQWJmaGdWTlJtOXltcDExQnppRDltaW9oS0I1S0dWeDBQ?= =?utf-8?B?Zlp4MWRjb0dQZDlaMVF1azU1NWUzdXJBRXdDdVdiaFNvNitJNnJ2WUtRTDZI?= =?utf-8?B?T25LVFFTTFkralkyMGNIWkc3WmowYTVXL0czV2g1Yys1SHRxb2VBb0dobVd2?= =?utf-8?B?SWJpbjY0TGtWWmJ0VHdxWDMzbGVrUDd1cndCL1dQWmdrUU9xdnc2d2xWM2o0?= =?utf-8?B?VHJzakRTQk5uaFF4cWlHa3JDSU10dWxrQXpXVEdBUitHWmRZSFVkaFVFNi9N?= =?utf-8?B?SnF6QWZ0YUpQWEZMTHZpdWV0Z2huMlZpbjlXOWRqMTdIK0lEcitTSzJKb056?= =?utf-8?B?bVRhQ21IbmwwUHFJSUFmd0UzK1gyS29DNWxnMi95TGpJb2VQeWlZcEdFdW0w?= =?utf-8?B?OHNSYVNvTkhSSG5PcXVFbHRPWit6SjQ5aFR5a2VrZ29iN2FkTllKRE5sOEkr?= =?utf-8?B?TDloZUVORDhnbWNVNzJCMDMybUdtZVZVOG44ZzkrSGxOcEt6RWlSVEhueWpu?= =?utf-8?B?VDN5UTUzalU1NElTNDE0KzJzUWgwTEgxNkV1Uk5ISVEzTHhiZHNuV1NYOXpr?= =?utf-8?B?QndwZ0FLUE5LVmJ2SnBQejQwamFiR29CMldSaUNnTFh1MHVWNlRYOWdINFdZ?= =?utf-8?B?RFBGeTUrdWlVUTJ4dS9UNUN2SmFOa0dldTJCek1LemVMcUlmZTlaQ3JVMXJF?= =?utf-8?B?cDk4bE9OZmd5TDlnWTVvMklNYXRWODdFSksvQ0x2SXJteDZXTXQvMk16Y2N2?= =?utf-8?B?NWZaWnRyN0N1aTJnTnN2REZ5MjRjcjNtY200RDkvUFlNek5zYmh2RE9SMVFa?= =?utf-8?B?SDY1aVhPeHYrNFp6b3RhOG9HU2JLS0o1VmtTV05tNWMzN0NiRnQ3SVJJMmww?= =?utf-8?B?Ykk2Z3djdE9BOWtOOXpLR21qcGNrakRVQm1wQlVLUDZMWFlPQW8wbWxWem5Q?= =?utf-8?B?bW05em52ZGVYQzZlNDVqNVpKTFFOZ1BYcUZVM3EyYWthOFp0Z2I2SE16REdV?= =?utf-8?B?WGVUbmpHMk4wNEZ5L1prclE0elhuWGNyTGUzWHR0YkhERm9CR0lxYkdGcmFF?= =?utf-8?B?d2lSYTdveUIzQndiNk1mb0l0VndSMm1rYk9ob2VKSTQ2L0t3L1dUR2hWcTdo?= =?utf-8?B?Z08vekxwbVR5N1VlOUdMUVhzMXRCWW5PSmVCOG9pWmMyVHNWYUFaZjBtTGNJ?= =?utf-8?B?Y09SMlZXSEhDQzh0bm1CVytwUnFoVzZFUklkQllXeHg5dzZPTlgwNC9keDl2?= =?utf-8?B?ZnJGSE8rZEpBWURKTkM5WXZvM2J4S1UzRnRlTmZuZk9QbFJrYldKTUdhSWpi?= =?utf-8?B?OWhHeGl2a0pXU3FVbzN6aG9qaG9kaVhPODl2cWp2dVZKNThKQytleEZTSjRl?= =?utf-8?B?eExuaWNIaE14SVV1RnhVUHpPQW5EVU1veWUzWXozdjg2NHdBYXRvMTYxcjhE?= =?utf-8?B?WjVNa05kclZKaE1VWjBmMVE2b0hWS3M1aDViZnN2dHJqektIRE5heGVaeTg2?= =?utf-8?B?TWpLVnRMNkFITmxqeTkxTWhIZXFSclhUQUl4OElCbGZESVgvMXRnRkszY09M?= =?utf-8?B?dWhPUzByZU5zYmgwZjcxYVpFOUh0V1crZ3ZxVkpIaWQ4cVJOQjlHempBazVH?= =?utf-8?B?SFN3T2pJZURjN1J6dWFlZk5nK3FvN3gzbE12dGJ6UTJJUlJZdGx0RmNUTkkx?= =?utf-8?B?OUVmN0JBMGJJb0pwOWdpdz09?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:GV2PR10MB6186.EURPRD10.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(366016)(1800799024)(376014);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?N2RZeUZDZEpXRUNMQnQ2MjJFSFpjQ1V0TDFkNEl5NnovYWFvSVdON1hjSGk1?= =?utf-8?B?eFBxSlR0U3hxakZrZDlQWWZGenFYdXV0V1FUYXp3QU5CWlEyWURZQ1A0VDV1?= =?utf-8?B?ZDlvMHp3SkY1U2FpbEFEaUh6b2E0bzRSdUUvc2V2RHpUSGtuK1hhTGRtUDZ6?= =?utf-8?B?cnVIMzBTZkFRVUt1RDVKZG5uUlpQUlFFdGk4dGpwYThOeGJGZ2t5c0o2dGRt?= =?utf-8?B?RDgwS0JhK0ZwM0RMeHRJc0U3ZE9sSWhsNXJVQzlPaDhzZUhRZ0VTL1kwZlEx?= =?utf-8?B?UnFEeFQwRXdlYmoyQUJZcDZFMFd0ZUpuaE5LSW5ZcXRMOGlJNm9jalBJZjFx?= =?utf-8?B?ZVR1ZXVWSHRPYmo1SW5ITm9wN0VXQjliWmc3N3UxSXJqWmUvZUxPc01ONTla?= =?utf-8?B?VFlLTGsybkVXVzRsM29vR0orRmJ4ckpCNDVKb0IwamlXSHNkL0R2bEhXVUw2?= =?utf-8?B?b3JuV051aWxTVlhTWnF1N3lZL0p3YVN3WjNvdWtMQVdiQzNTQWdYRmNkUys3?= =?utf-8?B?SzJvV2xKV0xBNjc2Y2xuV3ZMTTFOdXI2Mkk4OTBra2hBTXVlNW9oajdOcVJL?= =?utf-8?B?ZS8wVEVZZ3hveFk2NU0wb0pHSHJHTTJDSXNzSFlZMGEvN0ZkV3QwaFJmNjZy?= =?utf-8?B?cnF5MTd2a09MUEh6aW1zV1d0ODE0QUFhK3IyNklaZVlUZzZOMjRKUVJ1WVBw?= =?utf-8?B?WWtjSlFBbTljYnBFbGQvMG85bjNwb2xxMDB6VFZIeXJQYzcyV25pd1BqL0J2?= =?utf-8?B?M08rV1FHMTlBWmJSWklUalhwMjR0aWZqcytIUTlJQjRqK3d1bzVYeVR3YnNN?= =?utf-8?B?cjVJTVFUZ2NMQVJjelByckZaVzNuZUxrTDl2dzMxRE1tRzFmWlZIYlk4VUxK?= =?utf-8?B?d3Bya0tJS01nbUI4anpBRWtLc0ViSlcycGlUWEp5RGFBMEYxYlhhZWRaejhy?= =?utf-8?B?ZGhibkdVQ2pXSzBMaUVpSW5nWnJ5elRnZFRSd0w5MU1SN1lucFdYcndJTzc5?= =?utf-8?B?ZXJEalFqWjFJOEFHRTgzbFVmbTFaZXVNMWR4RnVENWhobWZpejNPWDlDTlRZ?= =?utf-8?B?RjdrUUtmaWl6bmJybGhBeGxxc3FnVUlpS210Mi81S24welpONUp5M2t3R1Vy?= =?utf-8?B?akV6K2ZrRWRYYjJqNEJUblhETHZOMm4xNmc4M0lnY0ZKTmRMcGxlV3orZWU4?= =?utf-8?B?Zk9td2NUem1WSWI0bmhYc3ZLVEprRHBmaUx6MERDdlFpVkV1eTZMM3lqcXRz?= =?utf-8?B?eDU0aWJCc1ZaVG5MSzdIM1JrL3Z3aXJTWXdvQVRVZzE4QjExVnZRV3U2SG9N?= =?utf-8?B?d3k2MTdHUnBEdmFad1MzenowNHhEMExNUUFsM2R6QnQyV0FQbXBTVy85Y2dP?= =?utf-8?B?enRLWUNrWHhGSXUrMW52Z05HNnYxWFdUdWJKYXpEYkVwWVRwbTQrR1ZEVG85?= =?utf-8?B?TXdiQWJJcGxTQ0p6bkxvbC8va3ZlZlJqa0xmbWlCZDB6T1c3amZBa1YxVHBS?= =?utf-8?B?cHhFT0ZNaTNrNFN3dzQ1dGxrN1dHTmY5T25FOTJzTVZOT2pXanlVNVFsaU9q?= =?utf-8?B?eHBoYjZBTUQzU3d2ckFsSU5kdG1ycFlTNkpBcGFneHF6MDhiK0p1VXFZaGE1?= =?utf-8?B?TXQ1WlY2NFVIRnpoM251VHZ3emtLNkNXaW45M3poekxLcEpTTDgzZGxxZExp?= =?utf-8?B?UlM0djVQbk8vN25zZ2JrMytBWWxzMXNQNmh2YkRoejBVL0dZRGcrQ0V6OFNh?= =?utf-8?B?cjBiSDBEaW43MlNTL2czQ1V3aVFOcnJTQVNVaXZzQis3NDZyZlZ4bTVyVU14?= =?utf-8?B?ZkVvd2xUUUZtVDhtRHRXY29xbmZTVUUwc0g2eEpqNFoxai9WaXo0SEd3QWJw?= =?utf-8?B?VW9LMHM3Qmg5WVFHQzJDb3MvTzJsWmIyWjExMVo2bmlURmkzL3Vxa0R3YTBP?= =?utf-8?B?MEFBK004SGNTSmxoL1BURGlDaUJmd1hoWHJBenFmaktlZGsxbEduSzBlRGNq?= =?utf-8?B?czd6TGpsZEhwaWwyampKenREcXpoMmZJSGpKQno0Y1AwUG1CaXdwYUs1czBr?= =?utf-8?B?MWJTOHhWbkJ6VnJiSU5IdU4vSFFnUzZJaWJUNzdZVGZ0azYwQTlEajBNQWcy?= =?utf-8?B?Tlp5S0psSjlEbXlNZ25LKytiaUpFcWtQWTRQVURCdE1lZmw0dnFFWmJjOFJG?= =?utf-8?B?eXc9PQ==?= X-OriginatorOrg: siemens.com X-MS-Exchange-CrossTenant-Network-Message-Id: cea4e9c9-3936-4cf2-c38c-08dca278f64a X-MS-Exchange-CrossTenant-AuthSource: GV2PR10MB6186.EURPRD10.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jul 2024 13:45:59.2843 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 38ae3bcd-9579-4fd4-adda-b42e1495d55a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: bbWLAPFQQv18eC1S+Jgm02wWsDVPIfv1YPeKm2hW3WX3058BkMuI2WiGSQ657pTtxHJ5Assz4M1qNH8euh/vMA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR10MB5795 X-Original-Sender: jan.kiszka@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=JrJ4QaMB; arc=pass (i=1 spf=pass spfdomain=siemens.com dkim=pass dkdomain=siemens.com dmarc=pass fromdomain=siemens.com); spf=pass (google.com: domain of jan.kiszka@siemens.com designates 2a01:111:f403:2608::600 as permitted sender) smtp.mailfrom=jan.kiszka@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: Jan Kiszka Reply-To: Jan Kiszka 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-Spam-Status: No, score=-4.9 required=5.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, RCVD_IN_MSPIKE_H2,RCVD_IN_RP_CERTIFIED,RCVD_IN_RP_RNBL,RCVD_IN_RP_SAFE, SPF_PASS autolearn=unavailable autolearn_force=no version=3.4.2 X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on shymkent.ilbers.de X-TUID: HGXBih7ujLVW On 12.07.24 11:19, Niedermayr, Benedikt (T CED OES-DE) wrote: > On Tue, 2024-07-09 at 19:31 +0200, Jan Kiszka wrote: >> From: Jan Kiszka >> >> This allows to write dpkg-raw recipes which packages archived container >> images and load them into a local docker or podman registry on boot. The >> scenario behind this is to pre-fill local registries in a way that still >> permits live updates during runtime. >> >> The loader script only process images which are not yet available under >> the same name and tag in the local registry. Also after loading, the >> archived images stay on the local file system. This allows to perform >> reloading in case the local registry should be emptied (e.g. reset to >> factory state). To reduce the space those original images need, they are >> compressed, by default with xz. >> >> Separate include files are available to cater the main container >> engines, one for docker and one for podman. >> >> Signed-off-by: Jan Kiszka >> --- >> =C2=A0.../container-loader/container-loader.inc=C2=A0=C2=A0=C2=A0=C2=A0 = | 76 +++++++++++++++++++ >> =C2=A0.../container-loader/docker-loader.inc=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 | 10 +++ >> =C2=A0.../files/container-loader.service.tmpl=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0 | 11 +++ >> =C2=A0.../files/container-loader.sh.tmpl=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0= =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 | 13 ++++ >> =C2=A0.../container-loader/podman-loader.inc=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 | 10 +++ >> =C2=A05 files changed, 120 insertions(+) >> =C2=A0create mode 100644 meta/recipes-support/container-loader/container= -loader.inc >> =C2=A0create mode 100644 meta/recipes-support/container-loader/docker-lo= ader.inc >> =C2=A0create mode 100644 meta/recipes-support/container-loader/files/con= tainer-loader.service.tmpl >> =C2=A0create mode 100755 meta/recipes-support/container-loader/files/con= tainer-loader.sh.tmpl >> =C2=A0create mode 100644 meta/recipes-support/container-loader/podman-lo= ader.inc >> >> diff --git a/meta/recipes-support/container-loader/container-loader.inc = b/meta/recipes- >> support/container-loader/container-loader.inc >> new file mode 100644 >> index 00000000..8e352214 >> --- /dev/null >> +++ b/meta/recipes-support/container-loader/container-loader.inc >> @@ -0,0 +1,76 @@ >> +# This software is a part of ISAR. >> +# Copyright (c) Siemens AG, 2024 >> +# >> +# SPDX-License-Identifier: MIT >> + >> +FILESPATH:append :=3D ":${FILE_DIRNAME}/files" >> + >> +inherit dpkg-raw >> + >> +SRC_URI +=3D " \ >> +=C2=A0=C2=A0=C2=A0 file://container-loader.service.tmpl=C2=A0\ >> +=C2=A0=C2=A0=C2=A0 file://container-loader.sh.tmpl" >> + >> +TEMPLATE_FILES +=3D " \ >> +=C2=A0=C2=A0=C2=A0 container-loader.service.tmpl \ >> +=C2=A0=C2=A0=C2=A0 container-loader.sh.tmpl" >> +TEMPLATE_VARS +=3D "CONTAINER_ENGINE" >> + >> +CONTAINER_COMPRESSION ?=3D "xz" >> + >> +DEBIAN_DEPENDS +=3D " \ >> +=C2=A0=C2=A0=C2=A0 ${CONTAINER_ENGINE_PACKAGES} \ >> +=C2=A0=C2=A0=C2=A0 ${@', xz-utils' if d.getVar('CONTAINER_COMPRESSION')= =3D=3D 'xz' else \ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ', gzip' if d.getVar('CONTAINER_CO= MPRESSION') =3D=3D 'gz' else \ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ''}" >> + >> +CONTAINER_COMPRESSOR =3D "${@ \ >> +=C2=A0=C2=A0=C2=A0 'xz' if d.getVar('CONTAINER_COMPRESSION') =3D=3D 'xz= ' else \ >> +=C2=A0=C2=A0=C2=A0 'gzip' if d.getVar('CONTAINER_COMPRESSION') =3D=3D '= gz' else \ >> +=C2=A0=C2=A0=C2=A0 ''}" >> + >> +python do_install() { >> +=C2=A0=C2=A0=C2=A0 import os >> + >> +=C2=A0=C2=A0=C2=A0 workdir =3D d.getVar('WORKDIR') >> +=C2=A0=C2=A0=C2=A0 D =3D d.getVar('D') >> +=C2=A0=C2=A0=C2=A0 PN=3D d.getVar('PN') >> + >> +=C2=A0=C2=A0=C2=A0 image_list =3D open(D + "/usr/share/" + PN +"/image.= list", "w") >> + >> +=C2=A0=C2=A0=C2=A0 src_uri =3D d.getVar('SRC_URI').split() >> +=C2=A0=C2=A0=C2=A0 for uri in src_uri: >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 scheme, host, path, _, _, pa= rm =3D bb.fetch.decodeurl(uri) >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if scheme !=3D "docker": >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 cont= inue >> + >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 image_name =3D host + (path = if path !=3D "/" else "") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 unpacked_image =3D workdir += "/" + image_name.replace('/', '.') >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 dest_dir =3D D + "/usr/share= /" + PN + "/images" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 tar_image =3D dest_dir + "/"= + image_name.replace('/', '.') + ".tar" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 docker_ref =3D ":" + parm["t= ag"] if "tag" in parm else "latest" >> + >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 cmd =3D f"skopeo copy dir:{u= npacked_image} " \ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 f"do= cker-archive:{tar_image}:{image_name}{docker_ref}" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 bb.note(f"running: {cmd}") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 bb.process.run(cmd) >> + >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 cmd =3D f"{d.getVar('CONTAIN= ER_COMPRESSOR')} {tar_image}" >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 bb.note(f"running: {cmd}") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 bb.process.run(cmd) >> + >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 line =3D f"{os.path.basename= (tar_image)}.{d.getVar('CONTAINER_COMPRESSION')} " + \ >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 imag= e_name + docker_ref >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 bb.note(f"adding '{line}' to= image.list") >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 image_list.write(line + "\n"= ) >> + >> +=C2=A0=C2=A0=C2=A0 image_list.close() >> + >> +=C2=A0=C2=A0=C2=A0 bb.utils.copyfile(workdir + "/container-loader.sh", >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 D + "/usr/share/"= + PN + "/container-loader.sh") >> +} >> +do_install[cleandirs] +=3D "${D}/usr/share/${PN}/images" >> + >> +do_prepare_build:append() { >> +=C2=A0=C2=A0=C2=A0 install -v -m 644 ${WORKDIR}/container-loader.servic= e ${S}/debian/${PN}.service >> +} >> diff --git a/meta/recipes-support/container-loader/docker-loader.inc b/m= eta/recipes- >> support/container-loader/docker-loader.inc >> new file mode 100644 >> index 00000000..b864c854 >> --- /dev/null >> +++ b/meta/recipes-support/container-loader/docker-loader.inc >> @@ -0,0 +1,10 @@ >> +# This software is a part of ISAR. >> +# Copyright (c) Siemens AG, 2024 >> +# >> +# SPDX-License-Identifier: MIT >> + >> +require container-loader.inc >> + >> +CONTAINER_ENGINE =3D "docker" >> + >> +CONTAINER_ENGINE_PACKAGES ?=3D "docker.io, apparmor" >> diff --git a/meta/recipes-support/container-loader/files/container-loade= r.service.tmpl >> b/meta/recipes-support/container-loader/files/container-loader.service.t= mpl >> new file mode 100644 >> index 00000000..afde55d3 >> --- /dev/null >> +++ b/meta/recipes-support/container-loader/files/container-loader.servi= ce.tmpl >> @@ -0,0 +1,11 @@ >> +[Unit] >> +Description=3DLoad archived container images on boot >> +After=3D${CONTAINER_ENGINE}.service >> + >> +[Service] >> +Type=3Doneshot >> +ExecStart=3D/usr/share/${PN}/container-loader.sh >> +RemainAfterExit=3Dtrue >> + >> +[Install] >> +WantedBy=3Dmulti-user.target >> diff --git a/meta/recipes-support/container-loader/files/container-loade= r.sh.tmpl b/meta/recipes- >> support/container-loader/files/container-loader.sh.tmpl >> new file mode 100755 >> index 00000000..31d27865 >> --- /dev/null >> +++ b/meta/recipes-support/container-loader/files/container-loader.sh.tm= pl >> @@ -0,0 +1,13 @@ >> +#!/bin/sh >> +# >> +# Copyright (c) Siemens AG, 2024 >> +# >> +# SPDX-License-Identifier: MIT >> + >> +set -eu >> + >> +while read -r image ref; do >> +=C2=A0=C2=A0=C2=A0 if [ -z "$(${CONTAINER_ENGINE} images -q "$ref")" ];= then >> +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ${CONTAINER_ENGINE} load -i = /usr/share/${PN}/images/"$image" >> +=C2=A0=C2=A0=C2=A0 fi >> +done < /usr/share/${PN}/image.list >=20 > Should the images be deleted after import? I see no reason to preserve th= em once they have been > added to the local docker engine. You can't delete the images if they are part of a r/o rootfs. Furthermore, you may want to keep them for the purpose of factory resets. > An option to influence that would be good (e.g. CONTAINER_IMAGES_CLEAN). >=20 Something like this is what I was thinking about already. Jan >=20 >> diff --git a/meta/recipes-support/container-loader/podman-loader.inc b/m= eta/recipes- >> support/container-loader/podman-loader.inc >> new file mode 100644 >> index 00000000..d2c9a12d >> --- /dev/null >> +++ b/meta/recipes-support/container-loader/podman-loader.inc >> @@ -0,0 +1,10 @@ >> +# This software is a part of ISAR. >> +# Copyright (c) Siemens AG, 2024 >> +# >> +# SPDX-License-Identifier: MIT >> + >> +require container-loader.inc >> + >> +CONTAINER_ENGINE =3D "podman" >> + >> +CONTAINER_ENGINE_PACKAGES ?=3D "podman" >=20 > Benedikt --=20 Siemens AG, Technology Linux Expert Center --=20 You received this message because you are subscribed to the Google Groups "= isar-users" group. To unsubscribe from this group and stop receiving emails from it, send an e= mail to isar-users+unsubscribe@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/= isar-users/960c2ec4-c365-4aff-998b-569207354dcb%40siemens.com.