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:49:18 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-il1-f187.google.com (mail-il1-f187.google.com [209.85.166.187]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 46CDnGkR023596 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Fri, 12 Jul 2024 15:49:17 +0200 Received: by mail-il1-f187.google.com with SMTP id e9e14a558f8ab-37492fe22cdsf15155285ab.0 for ; Fri, 12 Jul 2024 06:49:17 -0700 (PDT) ARC-Seal: i=3; a=rsa-sha256; t=1720792151; cv=pass; d=google.com; s=arc-20160816; b=oVC+ZF6TnGPZ6/ZvC3f7GjiN5kykM291XFFoC9LYRNj/jb6sYYU1QNmY1n4/ImV5iY AttyN/SAzWnBmhgzygcEw1AN8RD8TmiaFqgYcL1WbqQagDxkJN8FLlv24D6iQmJlLEzf 8mXpNRe1JhWK6aJEF9xkR1+6HURpxCtUJJFohMOnd+OLYRV8yhb46N7WSI9/EnA4m0Bj fQWKMN+hpIeS5gJCWu/v6rNNzpJxSVOJzZVY2t96L1c55DjmEmSEe8QN1WNU3zL/9A43 zhFbqhCstWkBed4NGu7JaAuOuezbCApXhXBv0ejjsiKoEW5YpnpTFo9UobKSxv+awtMa ma/A== 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=bFnfOf79ANXF/maCAWQwh9v3Ck9flIFOB95i8QX+9lc=; fh=5sv5n/o7jLFEUx9J069prcdCry+Hg8oAzdnOg0SkUog=; b=iuLeUTBOfjXw//A1UymjRhWpRvpJq1dMxIoEJYcxWY3easv4Ldx22ITnQ5DN8LpDLC SvlGAZmY/8HargY3WG2ZvbvEZXZwMbmNYtqcJmx1KIUky4WFbG8xqdIvRGG9Hi57pWPY T6pALSWgtATUaCyHGNkSDZoKoF67JVn3gbqz4YJyrVlGc1u9QKJ/liQI6kz+n8ZkROro 3ff0hVCURN8AWEHI1U5ZGB5eHA3BOIVC/jBjgRmPzLQh2tN+yQmfr+6VkJZ9DWzwMxXC SBYmpz5h4IgaSw27uGAlSmXFucymWvgQz3KjvrcF9OOZs727GBA7yVSq767TNuTocuT9 9TyQ==; darn=isar-build.org ARC-Authentication-Results: i=3; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=Q6EhWr+R; 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:260d::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=1720792151; x=1721396951; 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=bFnfOf79ANXF/maCAWQwh9v3Ck9flIFOB95i8QX+9lc=; b=fVH83rIAmT75qlwPwsTaskhfBN9sRTpKxTRYS7BUB+EmhVJyI5hgZrJ64trOKPUuCL 1b+G1DvPWJ0cOBZbH8V+s3yTCB6XiIILbE4UrmByLG2g/jDopU9Ah7x7CZsP/L2+3Es9 asWZPMy7vWik4fp6SSZ+/Sbq3+e0zhtrbK1oVwrH5/1zUsbTz3Mz4sSk1d+9WKs+07Uo CTyp+vB6jmQivzftxkfTjH+FKlrgEzT3sksHBKEIbGSfzpSJ3lWJYaV5hRI3kvWRBlt1 +HT2jw7FWDZ+U5hzBPWRCLkN0/tHcjWVIYbDGmlS0F+i/Z28d5duka2YbDO/x6iBf0YE 1i2Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1720792151; x=1721396951; 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=bFnfOf79ANXF/maCAWQwh9v3Ck9flIFOB95i8QX+9lc=; b=ZtMSxt7t6PmNb2Qp29doKn7i1iUIB9iGidaGcLKgt3PGZu9fq7EoOTaMwPqeWVbSSq y39mJD1Bq7DdidFrhHFsduXmnRy2qH0P/GqUcKF4+ow5xlHDQ9dIdPUlnwI24RY/G0RH 9Tn0kBK7/oBiWDecEOy+aNyAxqd2AOVSrrSffRow+VQ1RRI2hq+47Mty9P0ggX3e60DA CYk4nEO8sgV9Bu8MTX1ptk45IgmP1ybboaPgxKUy4S4hM5snZDZbKIttEqeDasYFgMGG OVz9wGNIy+VHdio9UbvOEVboj2cAz1uXQgwefmLpFAonKaUHKAyZIhy2ewrTx5b3/0yB 94HQ== X-Forwarded-Encrypted: i=3; AJvYcCUUIP+tNeMFUJUou97StfEofJmDDsY8jj0wCBGQariPUwXj2UTwfIMzq7XnEfgvvUYhYWjG6Eua4rHvkt5sZ2H9m6k= X-Gm-Message-State: AOJu0YwDIj/sVmlMGdS+OgqS+bq7FlClnCSwk/KNKFVE2vkbeQSLCs+j OfCqtxPWySDghhos6qz5j+feKT0xDaARCImsK2Jba5k/rMp8lNQu X-Google-Smtp-Source: AGHT+IE87VyTGe/Dykte1G+cWzkDhVSVXviLOkWXRwvpuB79GaOAzU/ryjmGtpdWOI+cEbdMh01R7g== X-Received: by 2002:a05:6e02:20c5:b0:377:3b34:17f with SMTP id e9e14a558f8ab-38e63d76ecbmr19978525ab.13.1720792150743; Fri, 12 Jul 2024 06:49:10 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a92:c26e:0:b0:381:3c72:a80d with SMTP id e9e14a558f8ab-38d1de4b788ls9753435ab.0.-pod-prod-00-us; Fri, 12 Jul 2024 06:49:09 -0700 (PDT) X-Forwarded-Encrypted: i=3; AJvYcCVdyBnvUpOTcGwZERqFn25pLgNsXD8Pr7jmc8/+awdnc5VcrMEknKsXsCzIu6eKV4XIHTi2ErCOgMVKGGR2RT91dQAwJmPjGeT9qII= X-Received: by 2002:a05:6602:1604:b0:7f3:a0aa:164a with SMTP id ca18e2360f4ac-80985c09b28mr210347639f.4.1720792149372; Fri, 12 Jul 2024 06:49:09 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1720792149; cv=pass; d=google.com; s=arc-20160816; b=Tu2xZWD7i+A9+oRYlA9bnUzrTTW6YiYVgvUXZE2aa7oaP4nqau7v7xBpbe7ZpM5TtQ 6VvPsswcTeu8ZizxaVNdr+Skcr+cn8wKqgDk6JJmF36SupT08oQFCjLqmu8w1nkSvU8O Bo/PbYBVPgAxhGsIAD+FinQY24nOGVvjmVb/xEWXBd1xt8B6gPo1siMvu3dgzlMWw6nX 1GWQWZe7DK10l7fqrTQxCZ6u3ExBfbuOerMYQ8mdxbgYOY2g1vQCC/29VDaX08tjWL8E IXQYGZ1L1WwSQHXHyPdP8b61kGhDjOIuSFFYLdwmvmYlnj21doOgs8D5EwHUtjsJmLMG /FAg== 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=J+60MzMyViFXzTWVBnNVXfHnJM3nwSOUrjLcPs0vTNk=; fh=xl3CJtLHIxnr4TzoVf3+YQNFcK4ulGG/c9OR1k/EIaY=; b=jBFWk8HuiIrhlRuy/PBkvKwsK5XHXkZIHZbCjCMtJPe/k5V7bPswJfqRA44bPQ3ee0 sBLRlUeMKEQCtzFdfN4xgs8sEOx2YXI/0Ar697ezKinfE4zSPpna38pqLb1uo4s5zdxu jZLh5uL7+Lh7lKce9SKvMzygvcQTdljA5LuVvQbK6ugx1eVqxalhRCqvKhQI/EQDbwO4 4zNBkMWloU34owEgxYu7wURsB11UkLQ8LUYG9q9qWY3lI8mTn+FsbYbKdG/i7YDeJC7X e5wlRk6EWuaYl1xs3fZcurk0agDJURG4yClSuOhBhZXMiLII+uLU4e4ZfTwCV11Qj4gi RH0g==; dara=google.com ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=Q6EhWr+R; 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:260d::600 as permitted sender) smtp.mailfrom=jan.kiszka@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from EUR03-DBA-obe.outbound.protection.outlook.com (mail-dbaeur03on20600.outbound.protection.outlook.com. [2a01:111:f403:260d::600]) by gmr-mx.google.com with ESMTPS id 8926c6da1cb9f-4c0b1aa4801si336084173.2.2024.07.12.06.49.08 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 12 Jul 2024 06:49:09 -0700 (PDT) Received-SPF: pass (google.com: domain of jan.kiszka@siemens.com designates 2a01:111:f403:260d::600 as permitted sender) client-ip=2a01:111:f403:260d::600; ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=HW3dpOxu767Gh9H5PpdKT1hWtrkLn6pN2Gi9zPtBl/NtdE44cJPql8BI8uUMvaSaaJTZt8HY2ubJUMiRrOCltV45Ljb3ozvSKTrIBhfd3+0m0T3Zq8b+Hz3RJ/mDfJRh/EQvdo4bQhKZP27ilOZc1upZhsk340YibGQUfwbW2yy1dUkGWoIGCnyAK7HVgiYet9zjxror8ySaaKsNqGSLOj9Eo87ieca+0qkoBE6Wl+6hWkBs+mvG4ezn39qN6zYHXxDDhJL3i6OaK7GvUDpFWEFKTX9FfGvlfpbR6TS7LNhr9oI0tdujijRT09Uo6K8aGbAJLC3CWkpaCmWCeuyN5g== 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=J+60MzMyViFXzTWVBnNVXfHnJM3nwSOUrjLcPs0vTNk=; b=LLTH3uXPz0KOIz5RvBgTlqiVs8tpXJTdP2zNNKqhgZEOrKeeikLwwQ46TC8lLTDGzjh4JmQrrqag0owXSJVnMZuu4t1ZJKYNokxpFasTYYyG3k+m3He4qUDwzvL7QSITXX9OTAwD08m1FdPBEeUPAw6bUHEyGwylgvIjLBTCR83Fg+9iElJKznBFMbyT9Chqc3xVIs1+JMtKOcxhuR8WsRACNjAkoPlnwj8oRyO/eDL0qTzCFTHpDMb5N5ripmfrB6ZKZHxW/ZvqAOomXKCJ35WNv1vmEsDtdqrwKwzjUuE4+q5j0P4cAw8PqTwidIG/nIaHlvar6K53rOhZwHmmuQ== 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 AS2PR10MB6736.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:20b:544::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7762.19; Fri, 12 Jul 2024 13:49:06 +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:49:06 +0000 Message-ID: <919c79bd-c444-424c-9a85-627b444bd9b3@siemens.com> Date: Fri, 12 Jul 2024 15:49:04 +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: FR0P281CA0082.DEUP281.PROD.OUTLOOK.COM (2603:10a6:d10:1e::21) To GV2PR10MB6186.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:150:76::15) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: GV2PR10MB6186:EE_|AS2PR10MB6736:EE_ X-MS-Office365-Filtering-Correlation-Id: 0b722f79-fb85-4ec9-7b41-08dca2796601 X-MS-Exchange-AtpMessageProperties: SA X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|1800799024|376014|366016; X-Microsoft-Antispam-Message-Info: =?utf-8?B?TmRSTGlPR0dBNzY0L2l0c3FyQXBZSkR5SU04eGRQdzlEYmtUaUVjT1VtTWVD?= =?utf-8?B?N2pjdjNVVlFZUFRGblpuUXZqbDh5MHZvcnVRUTd4SnZJZ1dzSDVaV3FLR0NF?= =?utf-8?B?bmxwRzdIbHplUWdkSU10UGpqSmZjc2dnR3hPd3VXc2FPbjFVWTZZQktrSC9v?= =?utf-8?B?YUl2ZFZUQmh4NUw1NlY1czFhdS90b1JtVm95cU42UTJ3WDN6QTc2T0hieG50?= =?utf-8?B?U1VmSm1ndUFNTitPOHRHMFdZYzdtckFXK0paejRqNm53Z1ZrbnNkYjZqOHZq?= =?utf-8?B?WUNWVzVwVEJad3BEaG9UVit2clVCU1JERVp2cEVxS3FMaytPb1NEOCtBTFYy?= =?utf-8?B?bXJOek1zUTNGYjF1VHM3d1BYRmpZaU1DejkvdTIxTU1yclowclE5dmYwazRt?= =?utf-8?B?MXBnWDUwaDBiN0NrMW9ic0lpYWxvODY2RnNBUUdOSDBML1pZTWxFSE83Rjdq?= =?utf-8?B?N3hVNmlCT2ZESmpEODRQS01jZ0pLbk1xalBqb3h4QjVTWXZCaFJTVmR1QU9n?= =?utf-8?B?U01BZnpPTUYrc0ZKMXlhdFcxdmlqRDU4RjUwMFhkM1V1cVVUeDhMcklCNlpu?= =?utf-8?B?aUtuU0xvUXZLVHlSbTFna0VCeGVPY01Ba3FJWXFmL1FrdW5jSVllaEc3ckMx?= =?utf-8?B?WkFZR1hlNURtUDhCQzhrbnY5RjNaTGp6cCtXVlV0NjFpUHg3QndWS2VWcEpL?= =?utf-8?B?WWh4Nlg0RTNld2o4Qlo1U3UvSEJTdkhoNm55M2c2SnVzMlRKUmZMY1hTdC9k?= =?utf-8?B?eHR1RW9OYWsrQUJBSXNlckFoZllpOUdjaEEyaWZsOXloZ1o2K0gvWEdBU0Mz?= =?utf-8?B?NGxYcDJhY3p5OWowT3hxRm1RV1VUR1VKSkZzdlhMeDA1dWJaeDlGK0cyWlFW?= =?utf-8?B?cXgyNm9VbUtyRnVyWlNBd2NySTNQMFdNcFQ4QW1hVmNtMEZrQTd4Q3lNaHRX?= =?utf-8?B?TUpHVEtVbkJBQXhqQVF6M3ZoQ1BockhjcUE1SmpmWHY4clFYbmpFQkVJbE1i?= =?utf-8?B?RmlLTlZQRmNnSkZPVEpLd1pnT3k1WXQyMFgxRm1iWG5MWVdZaHRHRU56VFdi?= =?utf-8?B?T1ZWQkdGZ0R3bWI2UCtidHBLQ29LOVBzNC9oUnV6MEREa1ZwK083a2pnTWFL?= =?utf-8?B?YUJ1RG96ZW5Ra2lYazZNYmZTZzZ0eDRyZm4wUWJHbkZ6ZkxVZmt5cDVRZmtx?= =?utf-8?B?c2J0RFFJejdhMllnWTlSMitGQm9nZ0dpMytGSVFwVkxpVGdzekxOeExxbmlq?= =?utf-8?B?OE9WK3hQSzBGdzF3dVFnMUF5SStFQXJPNWJuZktueHFiTmZLTEJvT3FRS3hw?= =?utf-8?B?RWIyQlQ1QXVwa1E1dDBRdVpvemNoUXVlVVpyVUxrdGFhcTFvcmpON2FjYno2?= =?utf-8?B?QjBzY0Q1bjZ6ckozeG5xUVlpMEx0RU5QQVRqRUc4R1NyRnQ4M3Q5VElTeDFJ?= =?utf-8?B?N0dBcnZ4YWJpOHZJYUFVRnlXYndLVnlZand2c0dQVk1mck9GaXBQUndqMDBV?= =?utf-8?B?cWdITnBaZ21LNlh5UzJ2bXluNjFyYkR2eFNxbnR3WmpZNW16NldFbkh6aTZr?= =?utf-8?B?UEZPcEZBZFREZnBPb2o5Mm5hTGpZbnRjb0FSWFBUTGxEdjBwM1UzekFvRHR0?= =?utf-8?B?Y1ljOGt1ZFdzZExPbi9ibC9QSUJRQysxNnZmcStRZFR6L3JQaXRSUDdDZ1cv?= =?utf-8?B?MGs3K3lCSi9rQTJkMWdQcGdyelNseW9iWGF5S1RvU2VkRUJxejcxRGxYUlpK?= =?utf-8?B?Q2tqMURLWGJRMGhMdVYzZVNrODhhQmhkTEtld1NZQW9nVkc2QnluMndWejlh?= =?utf-8?B?VkZqL2RhUkk2U1owWGV1Zz09?= 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)(1800799024)(376014)(366016);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?ckx5Z3pXbVRmdktWUjJuMU1TL0p5ekJFS3BBeDQzM0NGN2RUMS9STXY4ZFEw?= =?utf-8?B?M3NGSFlTTi9MbWQyOVFoZ3JEV1FEY3FVVjFxM0x3ODdaWk1BTERGN2xiUmFT?= =?utf-8?B?QndNT0FpNVpNK1Z1a3BRZk1jSnU5ZFlCd3VUMkJxYytXWWxHRFR6S1IvMTlp?= =?utf-8?B?Q0xRblNLaHRVTVhUTmZRRW1pRFpndEhSY0kwbmRibWxFM1hQZjYvSE12N0FD?= =?utf-8?B?QmhscFdudXE4ZXFLL3RzTHNWK1gvb3BIaTVodTEzQ0hmTDJoOU1TNmV4bnND?= =?utf-8?B?VHg0eHpjZG5uTXFMbDlyaE5xUThBWGFYRDY0S0Vjb1hhVG14cWFmQXRHMzUw?= =?utf-8?B?d2w4NGhrcVZJbUc2NFRYTlB3TWovMW8xSzRQeW9WREN0RmllalZ0c1BlSkVZ?= =?utf-8?B?N0pMSkFPWVNacnFzMFhMM0drNjNYUnRwRU5RZWw0M3ZiamhWd1lVMjRyMDc1?= =?utf-8?B?aGx0REpvRjU0Z2VJYy9UVlY3cUNBWXluZVQxWk5mREZWSmdUNFJBdFpsMW94?= =?utf-8?B?Y2FUekhDS201OUY3Q1pLOE1QTG9WaHhMbGV4UHN1UEZoMDRmL2U3WGlXRkpM?= =?utf-8?B?dHRwT1hhMnJybEQ4R3I3UUMrWWZ1L1RGQ3NqRGlTbkRGTi83TjZWeDYyTUVL?= =?utf-8?B?TDU4Z21EdzFqL1hkSFBvSGRUTzl0RkN2ZzNDSzdKVXJoM3ZTRi9TVUtaVnhJ?= =?utf-8?B?UzJyVCtLbkU4bVNoN0h4Q2I4UjN5VGhxZ0krYTFSV25LZzB5S1BrY0xVb3lt?= =?utf-8?B?QUo0L1pnSTlubW9CU01pd2REeUxXOXllWXl5QmJZM05KYzJWR2JHQUlkUzFw?= =?utf-8?B?a2Z5UTJpa1NJUXlzRjMxc3Yrc0M0YkxEZ3JvdTlxTlYwVGV5MlJFclRUQm1D?= =?utf-8?B?ZHBjYTB0bjNHS2hZSncwQkpKZkt1UTFtclpWWi96N3BOUSswU1RUSThhR1Rk?= =?utf-8?B?d1lxRGtUZ051d1Z2R3Zkb1UveTNhYmN0Nnd1WFBFRThUZlBMN0JUWU1uTVNz?= =?utf-8?B?bW5PMWpNMWRkRnpnTWx6UklXWTBZQlVvTjRCdllnK1NkNmFORWNiS05OSWVs?= =?utf-8?B?Q3N4aUp0Z3lDR0hudFoyR1BGS2FscTFFZEVXTjV1ZnFxakRtdktuaWU2cnNy?= =?utf-8?B?SktCRWYxVmV5dDJBZ1I5OU1kam56OHFyYkVmODlORzNmNzZPbndveGRJN2lG?= =?utf-8?B?d0lUeW9jQjBpTUNsT2xNM1QrMk1kTkhtZVVtczNiNkVlbUJqcmpnb2JJaUNL?= =?utf-8?B?c3p6dk02L0p6RlVZekMyQmxyeGFPcThIZjQ2cE5oZlY1S2MySFlrZk5vL29U?= =?utf-8?B?eTBLdTZaZVFhSmI2bzhmalRqUFA2WFI4YXZlbTN5aFlzcm1IUGgvWXJsTE1J?= =?utf-8?B?Y2FGYnEzWHJTNjJsdXVnWFN5ajFWTkhnSFRmcm80azBYTTQ3eG5aQm9hNTVE?= =?utf-8?B?SjhFQ05kOC9qdjBXTDFyNWpJcjRFR1FDTVN0SkVwQ0I5WHh2NlB4WmQvU0JM?= =?utf-8?B?MVU4cGlTN2FLTkJNT1ZGbGlrSTQ0TGVBUGFUQWE2T1NQbGdTY1p1OUZJQ0hZ?= =?utf-8?B?RjNYS2c3R21UbVVhTWNpM0ladGpqYmdtWVhLNUxyc3RtblZFaUxtZ2d1UVhI?= =?utf-8?B?K1lZekZMcU5IaHlRSWUrN2x4NzQrMEx3emdma0hPNjFyODJLczN6ZWNWU2l6?= =?utf-8?B?ZVFwak41U1FLV1ljR0hEQll3Mzdyc2FBUjN1TEJ3ZW1KWisxb0pSSUJvRjZ1?= =?utf-8?B?OVJvbzlIR2cxSWNoSUNqS204T2pRZWJVQWFkb1lzRVVWTGRHVkhvQ2pKY3lD?= =?utf-8?B?VVkyNlp4RnNCMG8zNXNuN0xXTzJnSEdLeXgvN0xNTFBIVTVWWWJFTXhsU0g4?= =?utf-8?B?OXVlWHhRMVR6Z3J3ZGRoZkZpcTlKTFQxYXFRbkppM055TTNTOFdEelZONnpi?= =?utf-8?B?cEZMZHBrK3U3dDd2TnA3U2Ztb001czQrdWxxS3NNOTl2ZmRSWmVWWjhMb1or?= =?utf-8?B?TEdiMU5wT001TkMwUzRqM01ERXo1NW83dFZRdTQxeHJidUczMEp0aWRHcE9u?= =?utf-8?B?UGxPdVpLaUx3VVYrSnVjVDFUWVp3NGFwZHdSQVBLNHU4Z3V4cER5T1NYQXZO?= =?utf-8?B?SXVxQVB5WkFuUzJMb051SS9zb3Bjcy93QVlKbFFubDhIeDdYYXRtVWhheXV5?= =?utf-8?B?OGc9PQ==?= X-OriginatorOrg: siemens.com X-MS-Exchange-CrossTenant-Network-Message-Id: 0b722f79-fb85-4ec9-7b41-08dca2796601 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:49:06.7321 (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: P/hJC44yyJx0HATAOpAzcIGXkshs5UTV/TNwmoT7eCjD6dYP79gIQqsMKyDSg5HnS28dupw2npjTW4lqACRunw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS2PR10MB6736 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=Q6EhWr+R; 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:260d::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: /gCVj8XgZYf+ On 12.07.24 14:11, 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}" >=20 > regarding performance, > using "xz -T0" or pigz instead of gzip would increase performance and red= uce build time a lot. >=20 (looks like you wanted to comment below) > Benedikt >=20 >> +=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}" We can tune CONTAINER_COMPRESSOR and its dependencies. I guess I will also follow Felix suggestion to open-code decompression so that we avoid shortcomings of podman's built-in decompression. Jan >> +=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 >> 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 --=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/919c79bd-c444-424c-9a85-627b444bd9b3%40siemens.com.