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 11:19:38 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-qt1-f188.google.com (mail-qt1-f188.google.com [209.85.160.188]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 46C9JarX021993 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Fri, 12 Jul 2024 11:19:37 +0200 Received: by mail-qt1-f188.google.com with SMTP id d75a77b69052e-4464a6a2f23sf22575631cf.3 for ; Fri, 12 Jul 2024 02:19:37 -0700 (PDT) ARC-Seal: i=3; a=rsa-sha256; t=1720775971; cv=pass; d=google.com; s=arc-20160816; b=rra/nGihw80IYbotjvBTxibwh3bd+pjYaC2kd3TPdZFVixAXMvU4Ta/SVU5vlxnC6i ux0xedFHjE8i/uWU9JsRYO9zh4J4Cj1Yq9ULy46kc3ZdlRuCLHkdTqk2Ay6ZBKEaU3uH kPZv6zynqrNR71UCpx0HaAghOhtHTsBn6fTe4d5l27p4WsEqNz5VYwvLLm+FDadciF7f pWivBVrnv3Tr6R95xrL2KcAicOs/lXV7yYXby93G7YX/k5WBxpo/L0BU3spk/uQenp4b qG+MPBFKyUUCKZpN1A8YeBofnFL+TGvyR+TBC3gKZ0FGwrzRCWSRyJ5Lt1lfGWZEQbK2 5VGw== 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 :content-transfer-encoding:content-id:content-language :accept-language:reply-to:in-reply-to:references:message-id:date :thread-index:thread-topic:subject:to:from:dkim-signature; bh=84UN5tAqwNqjYp6BG4iugpeVFv6de5xVuy4u74tgWIk=; fh=jZAExxy38TlNjvqZdIQE0aUciGbZ5Q2oXaIQ0A1tpgY=; b=G7ed1LyrJzoN3G8SLUXeIzG0Oq1sBC0LpvfCy3XhhYi8S6XqvEWxml8pnfaYXlAyQu TmjNGqX15dMbsSu1UZOWlzedWCfPNRQvmLGXLleoGYIJbiZ/NaCJxADJJxEevFo5O3C+ 8kpzSDG00LqMpf4Gzx+Iih6iojL9cAx9nQvn5Jrn61o/3B5ALFGtbzyDNxcSlDBfzLlG 5JDuHLCWMfD3oYG+N7ya6wgn6+7WBd+gx/jH+RuXRcAecyrXKtIMSYJmfyPqAmWgskPm YHrz1PNse2z1ezAUdno1fw7B2HTlBs06zogfJWEqGkeNGMSSo0o+Fc2rwuevO684wotj Qp0Q==; darn=isar-build.org ARC-Authentication-Results: i=3; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=bTni5YD9; 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 benedikt.niedermayr@siemens.com designates 2a01:111:f403:2612::600 as permitted sender) smtp.mailfrom=benedikt.niedermayr@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=1720775971; x=1721380771; darn=isar-build.org; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :list-id:mailing-list:precedence:x-original-authentication-results :x-original-sender:mime-version:content-transfer-encoding:content-id :content-language:accept-language:reply-to:in-reply-to:references :message-id:date:thread-index:thread-topic:subject:to:from:from:to :cc:subject:date:message-id:reply-to; bh=84UN5tAqwNqjYp6BG4iugpeVFv6de5xVuy4u74tgWIk=; b=n9LpBGNQjZJ2M3lKDoy1pOWuSr2SrDQ0ZT6jYzDjh0hiTQIZQi37y9hoywPaRYvRnQ K/K9261M4BJl/NkxHa49Ur76VbG0QY0doQipfNP5h3lvDtn+Uj3p4BbNI9dowf6mZgpQ 4NNM0C0H07UsNMZTOXuUoNFg/HG2vo5s8Boa8c9/nFV0ksgs9JebIi/iAtrW2sehVolK gexbTfv/VHSM3Grj6bVuck9vGXqhn8D3dVlOFdQFPPHaQ1lKdHD25EsxjGheO+RAzLVg K48GJFh7t+sCmfta1twFwRBagoZDWA3hWiSwz6JvZqb3VHAXUQ2ZZovVHOCBWFjbkYTq FVdg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1720775971; x=1721380771; h=list-unsubscribe:list-subscribe:list-archive:list-help:list-post :x-spam-checked-in-group:list-id:mailing-list:precedence :x-original-authentication-results:x-original-sender:mime-version :content-transfer-encoding:content-id:content-language :accept-language:reply-to:in-reply-to:references:message-id:date :thread-index:thread-topic:subject:to:from:x-beenthere :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=84UN5tAqwNqjYp6BG4iugpeVFv6de5xVuy4u74tgWIk=; b=HLJJohErFVVD7zfD7zDI8yW6xBFkNGImsXaWxTIo7ohMDh1Xpn4Su5so7nE2rBj7Ya sfQCBUF9x3V7fKxS1QFw2KvGRpTEQeVIyWfsyTsQ/ANa84PnbSt3MRPmCbV4wz3hsZvR oDiq8VccN74jZ6Hr04vEanT9pDsC+AK6umIUJQYmqArr5Sz9a5baxEKMlI+PSJOd2/76 hytMqkC+aHtoHOCicW7ek5uuVSG78pCEIsD3aWu9xh2A8wysXHr+KAy5tDVvCjlmZ0D5 Z4HFa02TDmkdOsI/cIi+auivkuJrEWjidnj6/fRrG1sd0ehdUXxzJ5J1wAFFXf2FUwDj ngKg== X-Forwarded-Encrypted: i=3; AJvYcCUV0Tkn286zPkMDvHOiJgPKZlyOS5Pz4unZ4PTS7wDteViOdrSgXkUKZf4YFrRX7TjUgjJLhTQKtOZ33EwzlT0QJrs= X-Gm-Message-State: AOJu0YyPj6vs8ofRmpsOjy2BHGxPxtGzDb5D62m60t4t6MtS1WInZ0bg +Ui0nl/pT6p14th8Owysu+BHOkhXuJ/HvO3+kd28FxOyJpALCofz X-Google-Smtp-Source: AGHT+IFOUNFDHAwghlu4B4B8qv3+bWAERGf9YkH451Mc+sXsDEZaledc8cHj2vPuLCHV9GLl8ID4FA== X-Received: by 2002:a05:6214:240f:b0:6b5:e58a:6388 with SMTP id 6a1803df08f44-6b61c1c50f0mr131737856d6.46.1720775971183; Fri, 12 Jul 2024 02:19:31 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a05:6214:5008:b0:6b0:9379:f464 with SMTP id 6a1803df08f44-6b74b429e6bls36349136d6.1.-pod-prod-04-us; Fri, 12 Jul 2024 02:19:30 -0700 (PDT) X-Received: by 2002:a05:620a:178d:b0:79f:14ef:40cf with SMTP id af79cd13be357-79f19ae53a2mr1408244085a.56.1720775970511; Fri, 12 Jul 2024 02:19:30 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1720775970; cv=pass; d=google.com; s=arc-20160816; b=Rcc5itqaqUNAL4lEg6S3YvMcZ/7zglyC/UWmM1APz27rInpvmdSnMkXLdxq7H+v8l0 A3jvMLH/+iV08bZfdW8kJOCA8LNjcWBPeX6bP9sqbttagBC2ov5fFAaIQ9uK+RMBC5Hw 4MJAiXo1b7WaWvGRcCJiGalemvY2jrAn3Te5vYXn7a4GFURBVT3Ku5T0+vIev7f32Dek Qkk2NWjN+lWCA6GJ0YQIYW8cr2GYiZNLBdIa3dARmJ9f23u1S4bYrEGUYsV2bSHoLReW ecYeyOIKKG/++ptYdjPyrzGkySn0DIisBYzV5uCmzaXS/rLCrX5681PpvcMJAGYhiA8d 7Z2g== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=mime-version:content-transfer-encoding:content-id:content-language :accept-language:reply-to:in-reply-to:references:message-id:date :thread-index:thread-topic:subject:to:from:dkim-signature; bh=+CC3RlM+IV6IHSJL3m39RWflbyr6sxb+xYwr08TLikw=; fh=Cyz1NJTmrNkkXF1M+wSppEKSM6Icl1OUHbOqS9uyLXw=; b=VpQXBezCyXZOUDgAm/OaSYX4NZr0TYoM7sO0M0uUQwZKxnw7luYLN+4+DH01uBDWlK Msh5lV+YQ5kZSX08yGOlJCTSE3O0QHH4PDmHnkG3Uuo1xIlipuLW6UNKxbM3UB/mLhY9 jji/xrpE978GxRFnb6PsnhBUrX8vH/L+BClttIPpfgSEtGH3cVsrg+GUZo2QVeAJS0/9 OMvA+IH7qjMbqfOUiJePzZLXUI5nTJtQ9+JqzJPx+yJxnOHmMXC3Nd8LUg3dA8W20PET GZXVXTz+WQGA7f3FtFyyUQm80yRGSxm6kpgDlh/dcpxs1DIFjk870WthjabmstVbq+dj HYdg==; dara=google.com ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=bTni5YD9; 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 benedikt.niedermayr@siemens.com designates 2a01:111:f403:2612::600 as permitted sender) smtp.mailfrom=benedikt.niedermayr@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from EUR05-AM6-obe.outbound.protection.outlook.com (mail-am6eur05on20600.outbound.protection.outlook.com. [2a01:111:f403:2612::600]) by gmr-mx.google.com with ESMTPS id af79cd13be357-79f19093fd4si30054685a.4.2024.07.12.02.19.30 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Fri, 12 Jul 2024 02:19:30 -0700 (PDT) Received-SPF: pass (google.com: domain of benedikt.niedermayr@siemens.com designates 2a01:111:f403:2612::600 as permitted sender) client-ip=2a01:111:f403:2612::600; ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=KpoME/Zn75zjXGmaHW020TCe7XBLO72Z3Vto+tOPI2kAbiZfrjnJogPIbY3Diu8ElL9hYeb2TL88XZAlnleNuRC5M0OMhkS8p7wVrqoeKRNQQMXQ1+4VWpXxLep1Qsn9aGEePJ9NjB1PfHRyt8Mrl1PYIoL5LjWJtJIh/hVJuiePeMs9fPdIPwVNy/PPmmj4knJfUvtA0bxzzzn0Tq5L0rqauUKn3dnzZx1whIoBp1aPHxMB2ANF7ydPiPi8C6YyfzdG2dX7NbSFqqok5Tx/fDxTGVzxIz+15/o7C8UKCzDQDd7L8xehYe3qNmVq4lPcu3sqdRD1B7ZelQ2ZMhDUCg== 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=+CC3RlM+IV6IHSJL3m39RWflbyr6sxb+xYwr08TLikw=; b=y4qBBsiwEs85yrS50Llpi/7qgknhCcz3t3FUkXcrxpN05sV+E036P7D/Av+JJbEJWRJ8EV3Zu0h6yqix3cXlLCE7ptBcpwvHyjJV3/8eZ5Xw88XkDFwjCZG2OAiPrARF5KyUzHkVuUZGpGVlHV95THbAvViysu6HjJJZqDMe8rssyd7Jk2QwBzMXakTW1GPWZHubEUYzTO1rZFBLKI4D+MRw8y6I0PJYUnmP+AJDObCYtCX2yf2HLMRFEdNl+cDoQLwtE3X+aAeJ4+MhdfZEQGat8uLnPKqc9RFNbce2y35jLarXq83AW4J9zeCPBwZm+grxIrDU6VSFZ7dHnMieYg== 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 PAXPR10MB5520.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:102:23e::20) by DB8PR10MB3673.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:10:138::13) 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 09:19:27 +0000 Received: from PAXPR10MB5520.EURPRD10.PROD.OUTLOOK.COM ([fe80::7615:5a22:34bf:f079]) by PAXPR10MB5520.EURPRD10.PROD.OUTLOOK.COM ([fe80::7615:5a22:34bf:f079%4]) with mapi id 15.20.7762.020; Fri, 12 Jul 2024 09:19:26 +0000 From: "'Niedermayr, BENEDIKT' via isar-users" To: "isar-users@googlegroups.com" , "Kiszka, Jan" Subject: Re: [RFC][PATCH 2/3] container-loader: Introduce helper to load container images into local registry Thread-Topic: [RFC][PATCH 2/3] container-loader: Introduce helper to load container images into local registry Thread-Index: AQHa0iXew2NMKOAOmEy2rgaaXG3OqbHy1OGA Date: Fri, 12 Jul 2024 09:19:26 +0000 Message-ID: References: In-Reply-To: Reply-To: "Niedermayr, BENEDIKT" Accept-Language: de-DE, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: PAXPR10MB5520:EE_|DB8PR10MB3673:EE_ x-ms-office365-filtering-correlation-id: ece41d6f-607e-4dae-87ab-08dca253ba16 x-ms-exchange-atpmessageproperties: SA x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|366016|376014|1800799024|38070700018; x-microsoft-antispam-message-info: =?utf-8?B?eURSR0pMeDFieTJIZ2Q3aUdjd1pycG1MblRTWGVyRkJoREZXSkpKVTZiWlRx?= =?utf-8?B?clZweXNMTkhmV0l6Y08zYk5yeVU5dVM3UFp2dStaZU1xWXQ2aTU4UGJkNlBa?= =?utf-8?B?KzFNNGFEc0ZHZjVlcHVscjVMVjF1YXFDb1JNbGNOZ3B2elYrMVQxTTRKc2ZG?= =?utf-8?B?TkpQZFpZV1llVVZNeXhIK3prdWlTMHpmemFHTEYrSFJ3Kys2Z01vWFNnZUlj?= =?utf-8?B?citJcmVSckZZNGhybDN0WGFpT0d5a2ZvQmFwQ2hQM1Q4Tm5tL0s4S29WL2NM?= =?utf-8?B?RitEZGlobWwxNzRGRlV4RUI3SGJoL0l5YVRtTUZ2ZFdqRDdPL3E5NTFiL1cx?= =?utf-8?B?M0hIWkd5VmI5UjI4NUtCeHRTaVVBZ1piSDd4S0NIS0RoR0dXaHpycmFidGlr?= =?utf-8?B?Zm4yVXFpWDhtSUlmMEwwMGlRbTA5L2M1eWc1aWV0Vmw0ckx1ZGVYNHNoMzBB?= =?utf-8?B?MjBlV2FQV09TOHBJZk82NjJHc3JoT2IyZk1SVXNuSUpHbCtjNlZOSDFjaS96?= =?utf-8?B?eEVyVkVTYUxEdFp0RWFMNC9PcWxJdm10Ykd5cXJEZWJnTTQvelkzcXFYekxt?= =?utf-8?B?WmpPOTZ6YXkxSk9tZnY4T2xreThLV0hGTjgrMzJEL0pIaitLbE5wMU1JM3JB?= =?utf-8?B?RDlZQ0E1MnkzL1YvaURhTVBZeHBsMkJKQ0dPcFlmaUNYU0o2K3pPRDBES3Bo?= =?utf-8?B?d2VNVWhYbXMvZDBiKzhqalFURjdLdVNhYVl6Ymt1R0x4dFI3MnNvcnlxVURD?= =?utf-8?B?VnBKT0NyelpTSmQ4NTZWUE42V0NQODJYVjlBRVpiUTRVaW95RlMzbWVoeHht?= =?utf-8?B?SWpBQ3h4NW9zN3BQajFsNlUvUGZWZ1g5V0xPMEpCY05MVmdHOVBLRzBFaks2?= =?utf-8?B?MzJkT0NQdU05Y2M0bitIMVZVa3prWHJEOXBpV1pNWDg3eStrYUdTdzVZWHho?= =?utf-8?B?K3lEV0g4a3RkbnhWSmRkNGRweWh2NHFBOWpjNVZHQ25rRDAwbko2RWN0MFpK?= =?utf-8?B?UnJiZWJjWnlkMGo3Q0lLODZmVlNNZ3FYQTNSWjJlNmcwbGR2UEZya0VCckNE?= =?utf-8?B?dVlLMXBFcDY4MElheFF1RDJyeFd0R2ExQ05hVURsRG55UmN6WU9VUXlxUUJX?= =?utf-8?B?c2d5WG1hOXJtcHJEeXB4L2NVVjNWa29FcEU3YnZkUjRnaTNxSFBaaERZTmVU?= =?utf-8?B?UDhTSjF4ai9KNWU1dlRuWnhPZUdNYk9ud2FkaE5TUUtVdUZCdjQ2ajdEZU5F?= =?utf-8?B?OGx3VzdvSmZMcmlrME5oMlcwT1UrRVVweGkxZlh3WGlpOFYwaE15VFFRbG1B?= =?utf-8?B?V2NwK3ZwbVY4R2VUYmYzKzRaaEpyMkk0d25MQjk5YXAvYUhqYU4wQmpoTGEr?= =?utf-8?B?bXpraDFvbDBmeDgzd041K1Zqc1pkS0VGY0xIdnRRWkxueDBhSEM4UDdTSlBK?= =?utf-8?B?dlM5ZGZQRm13N3JSWTdLN3NlOVlZVnZ0aWw0WGlaaDhuOCtocitzRVNuTjIw?= =?utf-8?B?NmwwaTkwd0tBd0ViVE9SS0ltQlFsc3BGR1ZYM1BiL0dvQWp6a2ltcGNZTzIv?= =?utf-8?B?VlBTREZVcHRCVmw1ZVc1UTVGM1RiM29UeHpZa052Vml6cnMxbVFXNmZ3ZFZE?= =?utf-8?B?aEJPQ01TdFJ4VWdIVnNmcStOQUc4eStobTZtalFucHFXTmxJd3JHS0lYL2Ir?= =?utf-8?B?bTMwOVJ2a3ozQkdpZmFNd25zOTNWQk54UkFQUHBnTUFPQks5YVZhWjZ2cXRi?= =?utf-8?B?TzczWHhrZUxhalZROWtNdnR1K2YrNTd5RHdFS1B4YVVtcUpxRVhhNkVSZXQ1?= =?utf-8?B?amszVThnMUc0bExDRVhjSXNDdnJuZU1UbVM4ZU0rV2NGZTUwOTJtclJqc3Jt?= =?utf-8?B?ZjFWMno0cEJ3eTY5dkozcStwWDk5Tlh2UGxybE9IeUVycGc9PQ==?= x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAXPR10MB5520.EURPRD10.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(366016)(376014)(1800799024)(38070700018);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?T3AwK2ZOUnBOS3kzLzdnYWw2cnMra0czYmhaUVdKclNWTzM2NTkwVG9ZbFJm?= =?utf-8?B?N2NWMDFWMVJYanVkYnJjcDZUeHNPZ09ZdytFZE9iT0ZNSGc1VVN5RFlRbFow?= =?utf-8?B?UDd2bHMvaGZtaFlEcHpudVJWaGV1UDJnc1JKN1ljYnNDWElzd0NaVVkvL1ZZ?= =?utf-8?B?dlo5bG5mR0s4OVR5QnZKMHVxVFZXZ050eUcvT0hhUXhqV2Q0NEQ0Nm1EckFa?= =?utf-8?B?bml6dEtKV1JyM0xrS1BtckxoRkpjdHBqNTQ4cm5jamhoVkxtT1M2NTY2RUpM?= =?utf-8?B?ekVlU1djaGViRGZDZitzZEJrZUI4NWJuZWtSRHdKVWh4MHRSSWU2a0R1OEF3?= =?utf-8?B?N3VKdkJLcVo3Mkhmc0M1T2ZKVVV1azBlalROd2o0Q2NZMGJmS1dQTlkvSlQr?= =?utf-8?B?M3VoeS9iRmdWOGlBcURSQmsvbitSbVdXZGxaZ2FrTVk3OFdKUFFVeVRJMmJm?= =?utf-8?B?clpaTGxIcHdQYncwMWVrZklDUFQrT0YxQzVnQUk2a29tT2ZUaU9NS2l3VXRz?= =?utf-8?B?VFVkYXp4RmN5ZjBrYkFiWDBtTTBvVXRtcUloYkF5VERBRS8vTkV5aHRINGcy?= =?utf-8?B?bmMreFJlbGNNRmhtRmx5bW1weW1Qa1hjWjVEMnFGQVFtc09yRkxLNW5tT3g1?= =?utf-8?B?SHllY1lCT0lSeFhYUzlHdmgyL1pncThwdHNMVEhJYVhXMmZvSVNyNk5XTWEw?= =?utf-8?B?aWVRKzF6aUY2cFdkVlVDeUtOYWdnWGtjcFdsdmg1SjNnYUpXbHhCQ1FTWC9H?= =?utf-8?B?WWVhenlGL2VvVCs3NjVhdnJHa1ZqVVR3S3hqdkxDcFBiNU9vLzVpNGpmMmJj?= =?utf-8?B?MXF0R1hmUW81NUpDcXhtY1NaQkxscTBvVjcrdUtZVGFYS0l3cFpGbTlzL3Rw?= =?utf-8?B?aXFHYVdHTFZNK0VUL0JQUU9Sd1F4RCtsNkJ5c3pGZXRXajNObzgrMDdpUGh1?= =?utf-8?B?S2h6Tkpuc1RIdjNvZUVDbVU5NXlxdlpDTHBmeVV6MkdKeGFDS3BFYzgwVHJJ?= =?utf-8?B?SnZkaXhyWGI1NVBjWlRIdVNpSVV1dTZZZGNLdUxHSDFibFk5MW9ucjdzY0xR?= =?utf-8?B?d3djSEsxRnk0N1pvOFduc3ZCSWRSeWI4ZS9wVlViZGE0SFBOOE1RNThCNjNh?= =?utf-8?B?OWFVZ0RwKzcrME02V0hmN0NBM3VvYVU2SWZaWW5uZXhzUloxNkU0bWxaVk1t?= =?utf-8?B?U3B0Mm91RzRGc3lRdmZDZ08yeTFoOTRtYVY2ZHEyYWRUVFZFVmhwNGFoc0F5?= =?utf-8?B?T1dwSXR0bUxTYWhNV0RNN01reHVabE8vM0xmSWxHZ0N5NGZOOU4rWWlNTDAr?= =?utf-8?B?SzcvaTJNK3ZWdkJrRzFHMEdUWmtva3JLTWoyTGx3TEQ0OGhQQkpHUlZ1V25M?= =?utf-8?B?cGdWSnc3YXEzeVV1ZHp0bHNTOVVISlBkemFJSFI1VnRyblhyZHRJMFdmaEln?= =?utf-8?B?STF6OE81d2wrNVpEQ3hNRlFsdVd3M2Rlc3VReEl0ZmdDUGtUVjB1Y2lPMkRY?= =?utf-8?B?MDhEVVJ1a1FhZlVLdmlUL3pkTDVPNlZRZVNJanR6N2dVb3lBMkJGYWd2Mml4?= =?utf-8?B?bDAraTIzMEpMK0IxbWVKc1JCejBFd1l3dC9peStIb3ZVODFFWUthOGJkck9S?= =?utf-8?B?ZzBzUmhpb05TcmdXdExFdEgwNkp2NUxmT2tzZk14ckZaN2JYeEt5V1hycHcx?= =?utf-8?B?dkRSVnNManFyTytMaHhYdklNcDYvU2dWVVNZVlU4eWNMcHRjWXFwUWs1S2Fm?= =?utf-8?B?Ukp6THpWc2lPc1ZmS2hXQ3NnTHdOcEJvcGFBSWdmR0hwaDR2dENka1FiSlpw?= =?utf-8?B?TTZudFVmTnNCZ2h6d3hTWmNWL01xczZLNHF2eDlpcForaTJZOUdYd2tPNXpw?= =?utf-8?B?RDdWQ2hqNVU4Q1JPSW9vOXMwQmRsUVRIbytNRDVKNnlUQWlVeWMwOGxsaGxn?= =?utf-8?B?MkNoMnlpTE5FRkNROTFlYUludm1VbjdONllkRklEVytjRlUwSmVsV3BEdjUy?= =?utf-8?B?NGlEbGhlOS81UzJqTUVUSDZLWTcrRXd1cHRpV0hITCtKNHliU1lpelgzM2dp?= =?utf-8?B?SWdjNmZJd3JrSVU0OEd3b3A5S1VvRS85MTBRbzFpcEpMT3RZU0tvanJwWkt0?= =?utf-8?B?bFRkUjd1eXNsNHBMNHY5c3pJbHdKNEcwNVNOQjhWM0lpOGZVZldvMlpLWm1Y?= =?utf-8?Q?aTM2B7hdugqoxkIA2khO9UE=3D?= Content-Type: text/plain; charset="UTF-8" Content-ID: Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: siemens.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: PAXPR10MB5520.EURPRD10.PROD.OUTLOOK.COM X-MS-Exchange-CrossTenant-Network-Message-Id: ece41d6f-607e-4dae-87ab-08dca253ba16 X-MS-Exchange-CrossTenant-originalarrivaltime: 12 Jul 2024 09:19:26.7759 (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: bW6HxT8lXGbEalPjjJ9aGHEjxHe65JhjOlD2FGEEANdbL/8H3u7jGL2Jdgc6w/BRqiczfziV1v4Mvlxa9mQrzGIa5G+jIhkIruuLJmUw0xw= X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB8PR10MB3673 X-Original-Sender: benedikt.niedermayr@siemens.com X-Original-Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=bTni5YD9; 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 benedikt.niedermayr@siemens.com designates 2a01:111:f403:2612::600 as permitted sender) smtp.mailfrom=benedikt.niedermayr@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com X-Original-From: "Niedermayr, BENEDIKT" 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_H3,RCVD_IN_MSPIKE_WL,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: thrl1VTlqqsK On Tue, 2024-07-09 at 19:31 +0200, Jan Kiszka wrote: > From: Jan Kiszka >=20 > 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. >=20 > 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. >=20 > Separate include files are available to cater the main container > engines, one for docker and one for podman. >=20 > 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-loa= der.inc > =C2=A0create mode 100644 meta/recipes-support/container-loader/files/cont= ainer-loader.service.tmpl > =C2=A0create mode 100755 meta/recipes-support/container-loader/files/cont= ainer-loader.sh.tmpl > =C2=A0create mode 100644 meta/recipes-support/container-loader/podman-loa= der.inc >=20 > 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_COM= PRESSION') =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 'g= z' 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.l= ist", "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, _, _, par= m =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 conti= nue > + > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 image_name =3D host + (path i= f 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["ta= g"] 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:{un= packed_image} " \ > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 f"doc= ker-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('CONTAINE= R_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 image= _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.service= ${S}/debian/${PN}.service > +} > diff --git a/meta/recipes-support/container-loader/docker-loader.inc b/me= ta/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-loader= .service.tmpl > b/meta/recipes-support/container-loader/files/container-loader.service.tm= pl > new file mode 100644 > index 00000000..afde55d3 > --- /dev/null > +++ b/meta/recipes-support/container-loader/files/container-loader.servic= e.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-loader= .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.tmp= l > @@ -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 Should the images be deleted after import? I see no reason to preserve them= once they have been added to the local docker engine. An option to influence that would be good (e.g. CONTAINER_IMAGES_CLEAN). > diff --git a/meta/recipes-support/container-loader/podman-loader.inc b/me= ta/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" Benedikt --=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/ceaf8d24b29fc41b044ca55a7d1f28d8ca8a823e.camel%40siemens.com.