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; Thu, 25 Jul 2024 12:48:49 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-il1-f189.google.com (mail-il1-f189.google.com [209.85.166.189]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 46PAmme6005646 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Thu, 25 Jul 2024 12:48:48 +0200 Received: by mail-il1-f189.google.com with SMTP id e9e14a558f8ab-39858681a32sf7849945ab.2 for ; Thu, 25 Jul 2024 03:48:48 -0700 (PDT) ARC-Seal: i=3; a=rsa-sha256; t=1721904522; cv=pass; d=google.com; s=arc-20160816; b=xk7dqITimudsB7jwRQN5eBGrYjTt6ALWFD0dEmKHsqAOOa+0i+eZOrwBqQLiTyGojC QRtal12ZKd2UzxPfozKbC5YtVzL6xLKEGuVVv5clS44oyX6SM/audvnPSAzHblS2ky6p LTm8/eC0p5/RIJMh4UvgW8sQe/GYGiFobudZXWI+1v1FNbjsoFHR/FeaUeGTH6OJ2rDg Qz3JaSIiE0KMrrOTkJDq1Ce6X5q4TjQiKIobuOiLsFuNlCCu0N/ZLq3FK1kJizXJdUBM +b6EbrlpYodknDe6Ov3bAR9kFX+CnAsrJA/RptVt2fuKN8WAMcDLXqhbwfQxGfhkaOqv jNwA== 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:cc:to:from:dkim-signature; bh=IbyKAUbcVxMnnG9IJgS9cCXBie1oTCGErGCjHokubIU=; fh=n5XhRVJGjM9yvBYhzHpLDvvk7heMqkvNW5vF81dqWLQ=; b=tfNLqzZloBTvcIPq93bx63/b1AuBuhvuU4VAy0gdvyCKocWTG3Py+DI5thwwoPkiD6 +L9VmeDvp2bkxfviLJ8vT9UnhRRl16rMMIZ4+wL+JUNB34dJj89m7+kYJiLy/VMsncTa vhk9qP7/qOYrXGxgA1Bhrgw4C17SRH4t3Fg3aIZRnJmr92UmBVw2y3DDKp+yiqFSZL4O D9CpE1CD4fGozaCMpPTrZTwRF/G275KLaF36Y8RvEBBH9nHWU7Loxotz9QenRC1Gr3fi QmfZZ5K5m3EUXwQj1v1zgFKzv1JifOdNFF1Ex4kWQXWlpkfAk7m+L26H+Pahu6O2xVAe IxVg==; darn=isar-build.org ARC-Authentication-Results: i=3; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=oax1roqe; 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:2613::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=1721904522; x=1722509322; 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:cc:to:from:from :to:cc:subject:date:message-id:reply-to; bh=IbyKAUbcVxMnnG9IJgS9cCXBie1oTCGErGCjHokubIU=; b=l36gCfQcOg/ypiqxD7Ra5Xx+ecUwnetNThNIdqKy72FEzdeFMKpvk8akmnolmx1wBd 9KPW2DmHwHQAt8rU2dfkgXsaBoUZfT9ywZsk8w+o2MM2qmkKiKwQkkK/BYzkGXtTRCrX pHVp5bWb300S1q8pUQ9DO7UhmRnSLonA04QQUMWBUMGfomjWc99cphSjolHRmL3GK6jk 0yfJiYs4g77oNCGlVNMNA0ajR9wXbs0plIfVjA3PwQqh+g+LWEa0P7vYHlZxIKyEsEoy uFg6NW9vwGMsPWEBOhVcEs2GMRVVc5NHcBHQyAXatwKUScfnjYuGxQusxS/qGqFCGOzx i9og== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1721904522; x=1722509322; 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:cc:to:from:x-beenthere :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=IbyKAUbcVxMnnG9IJgS9cCXBie1oTCGErGCjHokubIU=; b=kBMxZwhRA9l2929G/5CLgOEAsTDQN8wnmZrTJ7nIGal7Muol8AyJf/VAukEPDWLrba xOggoammr3uzvLmDopzlEi+fiJM4rdybg0KZOWWlQY1rw4p8qYldYKDm/oZAlffqypli 8rsZPMJUlLCGiySxAaeojwjoxuOkNGAsC56tAGsXN5nNR3YGAyzyH/bCHjIaYI8Cwj9O 1oEUjSVc4TOYg9Q4+Ls1K1VLkehvCed4a3/H7VdhWS8ZBHhQ4tviq000i/ydDC8ZHwPm +5ve0vqq8IjFZruRUdqpfZZGCwhu2UfnVuS88wMyEJHPj08Q9Irz4TNv2JjN/g5gnWX+ aWWw== X-Forwarded-Encrypted: i=3; AJvYcCVWRg/TYRX18fGIEqBRdsXxDI8nOkV/XcbmY7Z0GuOkiWSY1rhUvNB78B5qX7ZthCeFHwgQmV/9TaflfKmldP3glfo= X-Gm-Message-State: AOJu0Yz9oGCIGxBogONdmaCfSIB7v/NgaaayAl9Al0e+5a4BlWSz1sKZ jejGaxbdatfi3Ub8PrPTLy4bQouMe6sXiNOlmfKotnYzLYcKbutU X-Google-Smtp-Source: AGHT+IGp+CpsMWQuZ3lsqC7G/0W6tR9ciqfJMC3VCjxtigIa8/Reonb/ga1eLlEwsbpSTJCsV4EQCQ== X-Received: by 2002:a05:6e02:174a:b0:383:6af0:eb09 with SMTP id e9e14a558f8ab-39a217bea60mr35029625ab.1.1721904522444; Thu, 25 Jul 2024 03:48:42 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a05:6e02:1d85:b0:38b:4cd0:9089 with SMTP id e9e14a558f8ab-39a2179a2d6ls6154635ab.1.-pod-prod-03-us; Thu, 25 Jul 2024 03:48:41 -0700 (PDT) X-Received: by 2002:a05:6e02:13a8:b0:397:d9a9:8769 with SMTP id e9e14a558f8ab-39a2183b107mr29022895ab.24.1721904521279; Thu, 25 Jul 2024 03:48:41 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1721904521; cv=pass; d=google.com; s=arc-20160816; b=hV/ky8icbULU6EqJ/pieg4vzOVC0vnXmWuzxONlRg33NBwFrQ2NyqntWmRrKUFoe6k JQ9oTLAl/EesGzd6dneYwGrAOS32ezyV5MHIpTqUOlVvwrR78i3OR7L7bGnPRY4yys1D mrO/pcIRrhg0OSZgunDSC6oc/46RI481rP7J9Ao7SqsIx2kXzcW07+4CUyt04ODuK79K /DX3O32loq1IPyScOzNRhfTG7lfgilA61lSwzYAzdSbEr55vPtgzFnObTxCj/MQ9xMXe ujZ3c5dueTI268Y6djwOkrODCqmgFGYOvoodwhSB3z5u1armGBcZR9IvohODHVbsKO5r Dj4g== 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:cc:to:from:dkim-signature; bh=NPdxgwGUP9FZrkHo1iUG8++KwaZ9fwWnBR33cQ40Hnk=; fh=wx/qHEWp2Y06eJ/zwavY6bN0pacVoP8jscDHO49cHr8=; b=Ng2yXBYbP5ZKFuzyUJLMSmuyDhRz3jNcmAEjHv/OvTD/A2lX1tIOBrfOxtaAVH6Von 8jcyG5nRh7GBTAhNG1T28p5Js2iCPmtfaGZi2JVI9CJBxVQm14rCVk3vyalB47kRtarr LQGcWNJxH9HC3zBm+MVv546qliRJiWNQyKNyil/hyz/Ib9wyUxLfi3QtZIu/TzUU3wUj OmWm5CAUVSKe8L5y9SjbGkBeSn8HB4eAqCPubtkct6WWVU+trt25u4OATOehMLJ3wAIK CuWvJD73BPDf0PAFlbm4BPcg12c/oYpmChVBHrlshcPNCytAKOFDAOZkgRlZeSTV7pkR xUrQ==; dara=google.com ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=oax1roqe; 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:2613::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-VI1-obe.outbound.protection.outlook.com (mail-vi1eur05on20600.outbound.protection.outlook.com. [2a01:111:f403:2613::600]) by gmr-mx.google.com with ESMTPS id e9e14a558f8ab-39a2310ca00si595145ab.2.2024.07.25.03.48.40 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 25 Jul 2024 03:48:41 -0700 (PDT) Received-SPF: pass (google.com: domain of benedikt.niedermayr@siemens.com designates 2a01:111:f403:2613::600 as permitted sender) client-ip=2a01:111:f403:2613::600; ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=TcSs2DX9VbnQgWDMxyGQpUSQ6JYSV3kZqyC0dnC5/mtQQdUEuKXkdLrFcvVhctvOhsU+YZU8EClq3e9CFmhDPxG1ydVREDiRFekJDQeFPspapKPmPTcveaX20u1myjHdUL66SlGoVpoDA4DnNUtJX8dCdsrTcSLK68KgMmCQy93sZ7rzY9wfVz0Ws1KBLuNT7MNlVgisrW0gZrgh+Gc8Q6T2IdwuPBhRsuN/wn5PtOxraLMPNIjvJ/CA9WffdvwQdApQYmTH1FwW0ylvfwVj2YyptWYV4jqu1muNqJxa+Av3+GIb6MciWX9VJJeqsI8hNjxmo9fNXa44IqDyVSB04Q== 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=NPdxgwGUP9FZrkHo1iUG8++KwaZ9fwWnBR33cQ40Hnk=; b=IrF9c/s7dnTom4JHQaBdSSVw7i9MGfjYtkU0nzd/vk/xts4RZ46+lLT7AbfKJAfIp2GSVwQv7/cdUOD2UzPhvGq3EZdJ38B4mLy52LgpXWBNgKuzrcOy6aAJjUGjWWnxtIV2MtQCMuPFKa8OwKs9C7dYsus/wVh1z0xKOnzK7Vhv5Lh2Flz8dHDnYk5IbCUueGsjGhdgHm60YEoqtrtEoQ5BVGuTtAR/2dxNcz88Hqt6U6TEfe+FrRBjNGNrEZMDd7LITMHAlXzkHtplBvYvgUCJdg0gjZ0Fa6323WiqyZ0zOEBTAw2FHD/J6qjhDrGAW3qDW/kyqj1MHvyn9Lm2EQ== 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 PR3PR10MB3900.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:102:4b::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7784.20; Thu, 25 Jul 2024 10:48:37 +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.7784.017; Thu, 25 Jul 2024 10:48:37 +0000 From: "'Niedermayr, BENEDIKT' via isar-users" To: "isar-users@googlegroups.com" , "Kiszka, Jan" CC: "Cirujano Cuesta, Silvano" , "MOESSBAUER, Felix" Subject: Re: [PATCH v4 1/5] Introduce fetcher from container registries Thread-Topic: [PATCH v4 1/5] Introduce fetcher from container registries Thread-Index: AQHa2fof2tfhY+QeO0mPrhWK+Hd8FrIHTHGA Date: Thu, 25 Jul 2024 10:48:37 +0000 Message-ID: <6beda53beb7a2cf672dca87757d4ca885cb62c93.camel@siemens.com> References: <82da88bf02bf928d8807bc93bfb5fcdeece1f558.1721407122.git.jan.kiszka@siemens.com> In-Reply-To: <82da88bf02bf928d8807bc93bfb5fcdeece1f558.1721407122.git.jan.kiszka@siemens.com> 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_|PR3PR10MB3900:EE_ x-ms-office365-filtering-correlation-id: 408aef0b-97ef-4fcd-dac5-08dcac9756dd 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|38070700018; x-microsoft-antispam-message-info: =?utf-8?B?L3VoWGU2N1VmSmJ5eTVldGlUYmtTb0g3L1dXcW9Bam1WeHROcTc2MXR3Skta?= =?utf-8?B?UFZvWGpVS1lHU1RidUYvUCs3bFU2Ty9GNFI2ZERnTE1JYS9HNVI1MHhqYysw?= =?utf-8?B?MFBMRWZXUzkwbGpYclNKRkdSR0xJSWhWOGtIeUZZOURKT0I0UC93V2I4ZDFn?= =?utf-8?B?MXhHdVR1bWZMUXVjYmpENnp1dHdzRDF0UGhSMEx2bXR6dTNqM2tzbm5NWlA2?= =?utf-8?B?eW9UNDBGR25ZQytGQWtQRWovUlJZVWVXQk1kT2FEMVE0WHZ3SXN0bHdVSDR1?= =?utf-8?B?MFEyVnRrQjV6N0txY0RmRzc4TFlNSEtBa3FGd0dXRnk2K3RhRnhaL0U2QTZh?= =?utf-8?B?L1I5dzI2Yys2UnNPQkQrQW9zNmFzY2NFekdLbEVqb2tCM2N4NG1RZ1dTVlph?= =?utf-8?B?end4UmQxdURRMGtkVmhCT09aOHdTeDV3WUhGMWlRdWVFdEt0VFRSbndzcE5W?= =?utf-8?B?ZWZVOWFNVnRXNDNnUkhMRk1oTHFhR25YVjVQWG4wMmhJU3QzNENzZy9EeW1i?= =?utf-8?B?TmFrTXRFQStoaW5rRUhwYXpkOE5yeGtQVHh5akxVVnNKQmZhWFVGeEhJVEhx?= =?utf-8?B?bjR1bmZjY1Y0d3c2bkRTVGZqNXhMaDI0MTN3d3drc3EwY1NYbVFHOE44TjBK?= =?utf-8?B?UmNyNzFDbG44S0lZSStvOG41aUtZNWd0ZkNmRFVUbURPdHpmb2ZqUldDbDVm?= =?utf-8?B?aVlUdTZlRGlmL3ZsMnRzNWhzZjM0U0pDV1F5VTVGaU50SVJ5c0hTNVVDNFhj?= =?utf-8?B?V2tISnQ2enk1RldVWHlXODhHTjhiV3A5V252SHROU0d4emR6WmEwSnU5VU85?= =?utf-8?B?dnlQUlA4ditYTlRyZml5cFIvaGkySThNZFcwcWpSai9EdnBiMHdhUlFEOHNt?= =?utf-8?B?eGEvNEY5S1JFS1ZtS2NPM3pENUtJdjJMckFxZlRveDRTVVhWcXhRaW11UmF1?= =?utf-8?B?NmFoaWhrTWNXQUxGVWZNeEJwdXBFcFAvTG55aU5XanEwR0d6NU5GOWVUMXVv?= =?utf-8?B?QzR5Y1pHNXlJd0xPUmlkZUpjS2NENHpjUG1JS1c3STRRNlFidkt6OHAyMUFW?= =?utf-8?B?YmdWTWFsSXNNSE01TFdiV3d3WVdkYWtMYlRlc2tjbmU1NG85endmNEJwR3hp?= =?utf-8?B?aDZ2SXNJcVhIby9QQUtUUUZjV21GbER3TWJSVzhhWmVaS1RQYlRESFZFU1RE?= =?utf-8?B?WWw2QkNOQjNIcFJ6Vzh0ajMrYmlFL3RtTnRJbUF4ckVrUTRUN2pLRXh4ZG5Q?= =?utf-8?B?WFBJUzc0Y1RNZkpRaFZ1a2pydUpVSmNTT3IvaEFXek50ZjBybVhqdUtMKytz?= =?utf-8?B?eFNibHZFQmdlMVV2dHFaTzN3M25nNDQ1em5tSnRRY3J0ejVKRmlQZVFvMnBW?= =?utf-8?B?cDBOS05ZdVZnejl5SFVvQWtucEpWSWs5Wk1iS0VYNFN1MXFrbEdtK05CNHJ1?= =?utf-8?B?cStNeW9BdUVoekhsa3VGcjcrb0U0Tmg1NS9IRHRUcWFsbU52b1lvVFBIVWtO?= =?utf-8?B?eTEvU0NIWm1wcmZVYnBXc0I3QU9LSGZmNnVkZnZyUTIzRjVMV2JVLy9BVXNw?= =?utf-8?B?cXVPRzhhRnVUMWFwOEloUlgvQU9hT3BneWpYQU90akdadGdYOXNXVURJYUt4?= =?utf-8?B?TTZNU1YxUXhlNTNNZFU3aDEwYmhLT2Fuc1VpWG1ROVVScmZXZnV0dVRhSXNH?= =?utf-8?B?bytYU2V0dDk4eDh3SlZBYUJpMXY1bUVDT3NQNUVjOGFaRDhvK1VCcFpmanpx?= =?utf-8?B?SWhyd1hXK1RWLzFNOHV3TFVveS9BNDVJNWgyKzI1eThHQTdhSWFpWHg2RXJI?= =?utf-8?B?RE1YTzYxTzE1WGRQdWwrMHpycUkrVm1VK2dIRWltRHgvblJqRzNTWm5DVTNL?= =?utf-8?B?U256anZVbmN3WmN3cmwxK0dUWVFwb3l2dnd0bWJEeEk5cHc9PQ==?= 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)(1800799024)(376014)(38070700018);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?blpGeHNXdjE5WmNyVjJqd2EvdWN4bDdsbk13R0grRDhtMUpaS1p1Q3pCcHVD?= =?utf-8?B?NWpnSVpnazQya3V1SkNXNmR4Yi8yOWRrN0JkMk4yVnA0NWhsTnlJWklySHNn?= =?utf-8?B?U1dPdCt1aG12SHd2Z0V5c0VHSlFVb0JrWUR2RGwya2VVamh5OUdpN3I2TzQx?= =?utf-8?B?dHFBV2owTEVMUGVnR2lRTEZzMXB2dmtabGtEQWtYNHdZd3B4YlZiY1N5OC9x?= =?utf-8?B?NTg4T05lU2E4YmZtWXhHUGdmZWNRMnc1YUxyVFpJNlVkdC84cEtxa1JzRFl5?= =?utf-8?B?SWdRUFI3RDVaUkRMZmMyVVZicEUwUTZFNnZKV0ErQTllZVAzcUttZnBXRmF2?= =?utf-8?B?cEp6NDk3ZHQxeVA2bGFXcVozdmcrOHpkdkxZVmFHeXQvR0NCempJRlZKanRo?= =?utf-8?B?dkJJVEswdlI4cE1wRFVHRmxyNlJSbnF3WTV1YXBrT3g2T3dNeVloU1NYTTRN?= =?utf-8?B?bWNmN1NQZ0NQM1JKQ3VQWkxPdUgxYzUrdVNiK2NpUE40NU1ZWWhMaG0vTGVB?= =?utf-8?B?NDN2ZWkrOFczQ3M5b2tneXp4Z0tKa3VIZm0rajd2UWdOL0FOS0JHZkJ3b1hm?= =?utf-8?B?YTdxMUZnWHdmMXFSUnZzNUFXaWh4bktlVGxvSTV5SmRWN0pUbG1LVEVEM0dS?= =?utf-8?B?eGdiMnl2N0x4WVQxbm1mV1l4dEZFVGt1YXljWDJCRUJKUmkrK25YaWIrcGJ6?= =?utf-8?B?TmlCODUwdCtya0k5ZUhxQ2pnRWdWaTZwMEVvTWNNY05jZFVkaUgwM1dIY0o1?= =?utf-8?B?U29vVGJaZmIxNW1oeGtaQ0hsemV6WTdCWEdoYVdmdlRnMXI5M2dKNFZRQVFB?= =?utf-8?B?SG9qQ0c5L3lGOXRLRGpESVR0bTNMZWd1WWoxNTB0MVpQRmRNaVhWMjJDQ2c4?= =?utf-8?B?K0h6WWp1cG9STlFCMjkzdk1SNW9pang2YUxhemhlM0hheklRWHJBOUt2UGdH?= =?utf-8?B?Q3dUV0dBbDk1NW1hWmxjdnNDbEFwaVIxRDVyK2FTdjRzS0NwZGs3UmhoUjVi?= =?utf-8?B?Z0h5dXFHa2g0bDV6dS9yT2dMZzJjdVlxL2VIdU95NnhNNWdwaGhUdXY0d2xk?= =?utf-8?B?U3FQOHJhcUJRSXc0c2RSMTdLemFTZzRRcG00V0hzMXR3M1ZDRWo4TEZ3YU5p?= =?utf-8?B?QkZMUkUxUnoydWlFUWt5NGdPRDVhMG05VS9hVXFTZ1BNMUt3V0ZpM0VOT0dk?= =?utf-8?B?aFgzaVJMNlpDMWFTS28zUjJlSU5BWVo2RTlJS3duS25iRmhQYUwxQVdyTkQz?= =?utf-8?B?WTJlNVZ4WGJWVVlRbzhSL0NtTDVSOWdUeXFOUlNHOUZReURLeHEzMmdGM240?= =?utf-8?B?RHNxY3Q3N3FmYnJ1M2EwMkNIK21wSXhqTUlmelQ3cWllTzhCeGdyb2tEMHlG?= =?utf-8?B?c0NxZjZFUWhaY2dwaEYxekZXM2VEdHdNQ09IcmNlL09wSzBFdkFHOCtmWVA1?= =?utf-8?B?WGZrQ0NRTFdCRTRJczNXQVZnSXl6Z1ZmdGY2NHgzV0wwQTZLUGh4WlZSNzN1?= =?utf-8?B?dFRrYWRsQ2VNNlJ6WFd2YndkZGljaHZQZVJiVmk3SGQ1MWpZWTgvMkZDR0FT?= =?utf-8?B?bzRVbnZibEduMEMwcGhRWEJpUGVhZVpGN01kYysvdU8zbENkQm5TeDNrNUox?= =?utf-8?B?RklZcFJHSDVPWTJPc3JMb0pmemlsSzNJVTNHZDY5eDZrdEJ3UFZkbmlOcDhh?= =?utf-8?B?R2h2M1hUK05uTGh3QmcwZVE4ZjdiUzhUY2I0cDdZMnExb2t2SGw2ZzJwbHEy?= =?utf-8?B?M1B6a1dBRExlbmd6TWFkbUFWYklYRkJNK2NsKzZWYk5GWEdqU0FMYUpnclVM?= =?utf-8?B?ZHNnUTkrVnlSaW41MEZmelZLeUtBT01hV3VDL2JucU52QUNIRGRCQ3FqaThK?= =?utf-8?B?ZThubFhxaFM1ODhBa244WS9kdDlZRk9xVjFIWlpTZ3J4MzBncndlRzRNMmlT?= =?utf-8?B?NDJSemROMEt6dEZnalZERDcwS3dySVJnV0czYmVmOW5SVVN3Smp3WkRFbUdq?= =?utf-8?B?dTdrMlhiY1FoSUE1aVFCUktIOE5mS2Ztc1VHaUJPK1djbXhpWEh0RTE0b3FP?= =?utf-8?B?TFF3d1ZJTURxb2s0cUFqS0FaenBJN3pvSGhocUtPb3FaaGZWMUtZWmVaMGo0?= =?utf-8?B?UnQ4SVE5OWFTUkg1SzhNSmZOcWlha1E4VitrdEJpcXZZWTNKbHY5M3NYeTYx?= =?utf-8?Q?/wZciQOdh2runpmO8GXLKQk=3D?= Content-Type: text/plain; charset="UTF-8" Content-ID: <182E88AD3E5ABE4CA25031D5CB58A424@EURPRD10.PROD.OUTLOOK.COM> 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: 408aef0b-97ef-4fcd-dac5-08dcac9756dd X-MS-Exchange-CrossTenant-originalarrivaltime: 25 Jul 2024 10:48:37.6697 (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: Al6xuNrWQZwHr0XkIW7Pjr8rXxDOLoakDjxOMxs4/qi9VdCRx3aZMrlizTZeuugUdc8JLqnWiEctWvWEb3u4E5wsiISo5zaJdYt7AAPDab4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PR3PR10MB3900 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=oax1roqe; 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:2613::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_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: 08t7MVg5Ufrn On Fri, 2024-07-19 at 18:38 +0200, Jan Kiszka wrote: > From: Jan Kiszka >=20 > This bitbake fetcher allows to pull container images from registries, > store them in the download cache and transfer them into the workdir of > recipes requesting the image. The format of the URL is >=20 > docker://[/];digest=3Dsha256:...[;tag=3D] >=20 > Fetching without digest is supported but will cause a warning, just like > downloading via wget without a checksum. If tag is left out, "latest" is > used. >=20 > In case a multi-arch image is specified, the fetcher will only pull for > the package architecture of the requesting recipe. The image is stored > compressed in docker-archive format and, wherever possible, hard-linked > from DL_DIR to WORKDIR. Future versions may also introduce full > unpacking of the fetched container layers in workdir if use cases come up= . >=20 > Signed-off-by: Jan Kiszka > --- > =C2=A0meta/classes/dpkg-base.bbclass |=C2=A0 6 +++ > =C2=A0meta/lib/container_fetcher.py=C2=A0 | 86 ++++++++++++++++++++++++++= ++++++++ > =C2=A02 files changed, 92 insertions(+) > =C2=A0create mode 100644 meta/lib/container_fetcher.py >=20 > diff --git a/meta/classes/dpkg-base.bbclass b/meta/classes/dpkg-base.bbcl= ass > index 789d6c74..d90b32a9 100644 > --- a/meta/classes/dpkg-base.bbclass > +++ b/meta/classes/dpkg-base.bbclass > @@ -98,6 +98,12 @@ python() { > =C2=A0=C2=A0=C2=A0=C2=A0 if len(d.getVar('SRC_APT').strip()) > 0: > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 bb.build.addtask('apt_un= pack', 'do_patch', '', d) > =C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 bb.build.addtask('cleana= ll_apt', 'do_cleanall', '', d) > + > +=C2=A0=C2=A0=C2=A0 # container docker fetcher > +=C2=A0=C2=A0=C2=A0 import container_fetcher > +=C2=A0=C2=A0=C2=A0 from bb.fetch2 import methods > + > +=C2=A0=C2=A0=C2=A0 methods.append(container_fetcher.Container()) > =C2=A0} > =C2=A0 > =C2=A0do_apt_fetch() { > diff --git a/meta/lib/container_fetcher.py b/meta/lib/container_fetcher.p= y > new file mode 100644 > index 00000000..0d659154 > --- /dev/null > +++ b/meta/lib/container_fetcher.py > @@ -0,0 +1,86 @@ > +# This software is a part of ISAR. > +# Copyright (c) Siemens AG, 2024 > +# > +# SPDX-License-Identifier: MIT > + > +import oe.path > +import os > +import tempfile > +from=C2=A0=C2=A0 bb.fetch2 import FetchMethod > +from=C2=A0=C2=A0 bb.fetch2 import logger > +from=C2=A0=C2=A0 bb.fetch2 import MissingChecksumEvent > +from=C2=A0=C2=A0 bb.fetch2 import NoChecksumError > +from=C2=A0=C2=A0 bb.fetch2 import runfetchcmd > + > +class Container(FetchMethod): > +=C2=A0=C2=A0=C2=A0 def supports(self, ud, d): > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 return ud.type in ['docker'] > + > +=C2=A0=C2=A0=C2=A0 def urldata_init(self, ud, d): > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ud.tag =3D "latest" > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if "tag" in ud.parm: > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ud.ta= g =3D ud.parm["tag"] > + > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ud.digest =3D None > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if "digest" in ud.parm: > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ud.di= gest =3D ud.parm["digest"] > + > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ud.arch =3D d.getVar('PACKAGE= _ARCH') > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ud.variant =3D None > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if ud.arch =3D=3D "armhf": > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ud.ar= ch =3D "arm" > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ud.va= riant =3D "v7" > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 elif ud.arch =3D=3D "armel": > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ud.ar= ch =3D "arm" > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ud.va= riant =3D "v6" > + > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ud.container_name =3D ud.host= + (ud.path if ud.path !=3D "/" else "") > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ud.container_src =3D ud.conta= iner_name + \ > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ("@" = + ud.digest if ud.digest else ":" + ud.tag) > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ud.localname =3D ud.container= _name.replace('/', '.') > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ud.localfile =3D "container-i= mages/" + ud.arch + "/" + \ > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 (ud.v= ariant + "/" if ud.variant else "") + ud.localname + \ > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 "_" += (ud.digest.replace(":", "-") if ud.digest else ud.tag) + \ > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ".zst= " > + > +=C2=A0=C2=A0=C2=A0 def download(self, ud, d): > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 tarball =3D ud.localfile[:-le= n('.zst')] > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 with tempfile.TemporaryDirect= ory(dir=3Dd.getVar('DL_DIR')) as tmpdir: > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 # Tak= e a two steps for downloading into a docker archive because > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 # not= all source may have the required Docker schema 2 manifest. > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 runfe= tchcmd("skopeo copy --preserve-digests " + \ > +=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 f"--override-arch {ud.arch} " + \ > +=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 (f"--override-variant {ud.variant} " if ud.variant else = "") + \ > +=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 f"docker://{ud.container_src} dir:{tmpdir}", d) > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 runfe= tchcmd(f"skopeo copy dir:{tmpdir} " + \ > +=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 f"docker-archive:{tarball}:{ud.container_name}:{ud.tag}"= , d) > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 zstd_defaults =3D d.getVar('Z= STD_DEFAULTS') > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 runfetchcmd(f"zstd -f --rm {z= std_defaults} {tarball}", d) do_fetch doesn't get triggered if "ZSTD_LEVEL" changes, but it should, sinc= e the output zst file changes with a different ZSTD_LEVEL. Even adding a do_fetch[vardeps] +=3D "ZSTD_DEFAULTS" doesn't lead to the de= sired behavior: When ZSTD_LEVEL changes, the fetch task is run but does not actually fetch = anything and immediately proceeds with do_unpack. More precisely, the download() Method = of the Container() class is not getting executed, maybe due to some logic in the upper/surroun= ding Fetch() class. That would be fine if the compression task didn't implement the compression= ... Another thing to mention is that he whole fetch task is run again only if t= he compression changes. Skopeo seems to override already downloaded layers rather than skipping the= m, which means that changing the compression also means a complete new download process.=20 Maybe the unpack() task for packing and hardlinking the images would be bet= ter, even though it sounds strange to put an compression task into the unpack task. =20 Benedikt > + > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if ud.digest: > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 retur= n > + > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 checksum =3D bb.utils.sha256_= file(ud.localpath + "/manifest.json") > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 checksum_line =3D f"SRC_URI = =3D \"{ud.url};digest=3Dsha256:{checksum}\"" > + > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 strict =3D d.getVar("BB_STRIC= T_CHECKSUM") or "0" > + > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 # If strict checking enabled = and neither sum defined, raise error > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if strict =3D=3D "1": > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 raise= NoChecksumError(checksum_line) > + > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 checksum_event =3D {"sha256su= m": checksum} > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 bb.event.fire(MissingChecksum= Event(ud.url, **checksum_event), d) > + > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if strict =3D=3D "ignore": > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 retur= n > + > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 # Log missing digest so user = can more easily add it > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 logger.warning( > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 f"Mis= sing checksum for '{ud.localpath}', consider using this " \ > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 f"SRC= _URI in the recipe:\n{checksum_line}") > + > +=C2=A0=C2=A0=C2=A0 def unpack(self, ud, rootdir, d): > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 image_file =3D ud.localname += ":" + ud.tag + ".zst" > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 oe.path.remove(rootdir + "/" = + image_file) > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 oe.path.copyhardlink(ud.local= path, rootdir + "/" + image_file) --=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/6beda53beb7a2cf672dca87757d4ca885cb62c93.camel%40siemens.com.