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; Tue, 16 Jul 2024 22:09:04 +0200 X-Sieve: CMU Sieve 2.4 Received: from mail-oa1-f61.google.com (mail-oa1-f61.google.com [209.85.160.61]) by shymkent.ilbers.de (8.15.2/8.15.2/Debian-8+deb9u1) with ESMTPS id 46GK927N015434 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 16 Jul 2024 22:09:03 +0200 Received: by mail-oa1-f61.google.com with SMTP id 586e51a60fabf-25e7f6bd7a0sf5842452fac.2 for ; Tue, 16 Jul 2024 13:09:03 -0700 (PDT) ARC-Seal: i=3; a=rsa-sha256; t=1721160537; cv=pass; d=google.com; s=arc-20160816; b=Ejkwb2COFFnI1LZt4ztQ5oNU2aZznUsxHxz9RNoS+0gatwGRoy978P9rcq6CQqs1hL HLfU3PmlmZi+nTPXx23hH0sPL+q/Xk+ylVHkRkxa3H6d4oLxui/f+Gv6XEG46pc5CLRC C99HfXDtiZypeg2XWv/yjQ8iOtNNnoDRBwfKZuSoJWMNQ1FX6rdPhqJTDHuz48GB9yRV I2tJhPAJYEMZGJO50kpk6k3jPU56XRJv/FreItj6/rqrMdLf8nrAFESPbX8ZpdtedSSy frJTrWL8RyR3RqDAzHDXHF0iEmJZEU/6Mn4No0sYIhuhW8aKNT4uN7fJxKbPA9Ana6Lt f/9g== 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=TbKjPr/ORqWtB7CNwT4NSE5LVxkJF2SdU4rNFZEkXhY=; fh=AgSnZ4MZTYaOpGAjvq/sdkXpHEGuiNQaq5V7xC8xhk4=; b=rk3d1MGLqywaRSnUWcCmGV0GVXrtVyrvz+jKgaLUlU1GJBR6qvaWzdByB23z+2hEkn Jp/P3MZ0e0T7FpKIEcm1WrarWgHiXnxxpqZjxjKnQBzZvbi1O15/QJ7L0n3yUt3JJJkD Qe+S26h/CXktDl441uMsqWwTOgPcngULrdgbbvk1mclQ7Dh9n6eouL7XVN5pX/sYjK5X cdHHfwNCy+ukQb6tTZfFEbSZxggiDTBeZjVjgE4NIwF7/nPku4BqcdXdSVa8gdoJsemY krXKHr05SLcW7gi7dUe9vqerdmOeV+L2kj6141GWb28ZETetyLXRQlh+WzJJEKs7OrVB nYOw==; darn=isar-build.org ARC-Authentication-Results: i=3; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=tC5+krRQ; 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:2606::604 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=1721160537; x=1721765337; 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=TbKjPr/ORqWtB7CNwT4NSE5LVxkJF2SdU4rNFZEkXhY=; b=ZJL4uYUSeC68KXOYZd4cW1zxA3CkhK+yZ5dHruYZUxrEIEa5el/B+Rf3TYO8a7umFI u25P6YtaJNezJKqFVWp8vKHMdWTivfMNGPwFi8JaNQO3cuKcLkH+4C5QPdie/OHCVa26 DYbBsCtx/ESZ/l9pFIpbc5O0IzAMGyMEBpBRQtdBf54HIa1sYllkLK1TgXYubisG1COT d+bjotPqHMTSz2IhYNENhuOKcXK/Wmiw0bwqFpxmcu8F+ETsmsndmEnm3XS2jaC0q+K/ 4aFYb6e9Zbz5M2SSfmumH3g099YjxgA5zSFremCgKjeDFTDDx0E3g2ilSJNkjuNCkR/Y lraA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1721160537; x=1721765337; 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=TbKjPr/ORqWtB7CNwT4NSE5LVxkJF2SdU4rNFZEkXhY=; b=l6q7i6N2hMKpLFtTrIVk2io/BckiV+MX5C/OcWh+TvaL4u1EK4X8WEg6fXIA3xyMH6 IbNDRIOGRjGYQmyZC/QCTE+hBfY6knTnnVI3BWbnQAD1THJWBZ8bEtWlSh0n9b+CRjRY P6Fz4rKW+dsAC7D+YH5fXGUNgcjKG1LyMHCAmldGxJjc3xt9qQKHHs2YCZhww8+3klH9 Mqwp7AGwWNA2dTAso/I3gXNLvjvtIJqjn1xPCyZm81UCRqYcGaCLgM2y1AhJhjpcofDj 7KIfyJCmDdzDlJ+SUajsv5umskgvnrqPI/6W059KVqcelKYLSxsuQSp0vckkiwbsNavr 1IUQ== X-Forwarded-Encrypted: i=3; AJvYcCULjjot559H/bfXVwMcOFwUXSkikJOsXBOC8/OYjCEvQcvK072sFr3UX0dCjPKN6WrnbtqKrNeeZqymYJ8j10K4UGI= X-Gm-Message-State: AOJu0YyfBuYLZWCbMYGn0kVy3tDNf+PFD9r8RgaLsweNdty4n7vA0eGn Iyi+sq26qO12J9KEsmU5EWkHc8zO5D5ayb0QPfckUcl+JHAYNXr6 X-Google-Smtp-Source: AGHT+IEt/4Y6u9EnZPspNsJ+xKNShkq/pif4BrX35h9w2HGIOFWxt1tI6zTMhWNAQcldXj94B6bZyg== X-Received: by 2002:a05:6870:9a1d:b0:254:77f7:7bdd with SMTP id 586e51a60fabf-260be00b425mr2517555fac.50.1721160536617; Tue, 16 Jul 2024 13:08:56 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a05:6870:4d1a:b0:25e:1ff1:3bb7 with SMTP id 586e51a60fabf-2603a714fbals1040223fac.0.-pod-prod-02-us; Tue, 16 Jul 2024 13:08:56 -0700 (PDT) X-Received: by 2002:a05:6870:64ab:b0:25d:f1f6:8a2c with SMTP id 586e51a60fabf-260bdfbed6bmr2578423fac.39.1721160535862; Tue, 16 Jul 2024 13:08:55 -0700 (PDT) ARC-Seal: i=2; a=rsa-sha256; t=1721160535; cv=pass; d=google.com; s=arc-20160816; b=aUtr+gtCabwiRMCjWoHoPo7PWh9RuGFWc1aD/vGpSrLRX8twc21T90Wiy1XFrvakOv XWjIDZnaYmc+buA61lz7d/QTAGdgRxArygCPVb5oD/wI5BTY1QGTfk5JJ2LNZrq2lgR3 ouY0F2rSKvullNLi0bWpBQDTPJV/dK4tooWccDCfBi7RAXj5jDEIk5gM2B2dSYrSc86E rYYSV5d2NHD/DdHnl9pkoDXQ0NEv59dRG9HATW3wy+Pfcge1j+rYDVVLOSUr6FsA/dPL JlIMy5+rEz+f3MXCjhszO9HrYMY5gu9dZLQpBrYc5MZQxbX6G40E2Vxvq4czCLvDx1Dy JbrQ== 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=DBN6i6klcNZM/fARUDDBfc/D02HtZaWHQdSJPeFjaMk=; fh=wx/qHEWp2Y06eJ/zwavY6bN0pacVoP8jscDHO49cHr8=; b=nXLRihNLDtQzMD7R+tdgIJC3dmBEAP6uS+lPoT1GAKx7q6u4LNSsp7NBUFrykV32++ k5CoxSYkxbDyATNs6fIY5qmdAEnz6YnYKAyr1rU9d4On/m82k+wMK/GzRGotN2wttbFf ClTlckSOJlt3Zd+s+7mhN8NLiM6hncHnDK9Q0AGKKQOYq/REyS5fkxspAu5U2fVNaypn LNRfiSxmLpoMpaMYLzhMYDt6J8NE1kiNJQCvibI5ZW1ZizfejAASTvWL5JdvrZvHlD+o 3LYW5wYndjTeY7Fs5Kw4RutrmUpajLmYRMN7OfgjXGTwiUlt6x+84EKmzPE7UMiYjmga 26ow==; dara=google.com ARC-Authentication-Results: i=2; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=selector2 header.b=tC5+krRQ; 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:2606::604 as permitted sender) smtp.mailfrom=benedikt.niedermayr@siemens.com; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=siemens.com Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on20604.outbound.protection.outlook.com. [2a01:111:f403:2606::604]) by gmr-mx.google.com with ESMTPS id 586e51a60fabf-2607537b66dsi333345fac.4.2024.07.16.13.08.55 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Tue, 16 Jul 2024 13:08:55 -0700 (PDT) Received-SPF: pass (google.com: domain of benedikt.niedermayr@siemens.com designates 2a01:111:f403:2606::604 as permitted sender) client-ip=2a01:111:f403:2606::604; ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=xyq0CVMgQowTLdU45P9rrxvPoqqAMvoSX5opkzDLr1FzPO9KtDJNth0zo6oYBJCGP4P11TJZFDPvODeoTYFjHSyR886tyiezmcxdiQB/6RAZBMLIyR3NiS3c+9uio6u8f1qXmhVNdR9csM7tefimptvu7rnbQRsq4t+1hO2HvQV26aJjfZrwsFm2MtR+8jPdpaeyQ9teFLRZbco9ijXYzUnIKxw5l02ztD2JqOP+Nd+s0Thcd3OEsYxOdrsXjtCwBd2g0zUirgXVubf8HalmM49DyiSNS+olGghwiOyLzsu5vjN5919GS5UqFPgZUnCYwwmQAgPxd0cKZs/4ol+IeQ== 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=DBN6i6klcNZM/fARUDDBfc/D02HtZaWHQdSJPeFjaMk=; b=ya/z17fxcs4Wo7vr7XIgTYrIkP9ATtWycxnzAL6C6b6fbaL0h8O6h9OiN0iKoCq6f7EgB3pSC5gKZUxa0aJf3Q05RSUgUxdZDac6yAIZFc4BaMd6lkxK/814TPwmcrq47tQGyRCLjkmeOxq1VSDAaE84OpezfGG4Rw0dT4rJ9yONIZLA1+hh4u/Sxz3G8mLxVRtNGNhaSJ1RdPUFaoAqengemSh++0srbIIlWOodgGDNe+2aDFz3qtFHmx9FmHV/M4s87L0U/HSqjpxzkiI8T0r748xYW8WXfr2rwOeI7cuqlTi/D3KaS24gRfB+KN7PkzRM8O4EQHH+KuwByz3+6A== 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 PAWPR10MB6901.EURPRD10.PROD.OUTLOOK.COM (2603:10a6:102:33d::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7762.28; Tue, 16 Jul 2024 20:08:51 +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.027; Tue, 16 Jul 2024 20:08:51 +0000 From: "'Niedermayr, BENEDIKT' via isar-users" To: "isar-users@googlegroups.com" , "Kiszka, Jan" CC: "Cirujano Cuesta, Silvano" , "MOESSBAUER, Felix" Subject: Re: [PATCH v3 2/5] container-loader: Introduce helper to load container images into local registry Thread-Topic: [PATCH v3 2/5] container-loader: Introduce helper to load container images into local registry Thread-Index: AQHa14r+zjVRoOlsWUOUWO2YAUfXi7H5yNwA Date: Tue, 16 Jul 2024 20:08:51 +0000 Message-ID: References: <3b7b8dbdde7fa3a4184daa3f8d567e72c8b50d2d.1721139489.git.jan.kiszka@siemens.com> In-Reply-To: <3b7b8dbdde7fa3a4184daa3f8d567e72c8b50d2d.1721139489.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_|PAWPR10MB6901:EE_ x-ms-office365-filtering-correlation-id: bb1c17ce-80ae-433d-5037-08dca5d31c68 x-ms-exchange-atpmessageproperties: SA x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0;ARA:13230040|1800799024|366016|376014|38070700018; x-microsoft-antispam-message-info: =?utf-8?B?aFFYK2d1TEZ3VjZIdndqVVhwMmJBU0JnS3RSOWxrbzZqN1AyYy95Rlc0eGZB?= =?utf-8?B?R3J0bGc5anJ2UWJGL3VXOGJxWEJncE0wbE9JVUd5K0NSbmp0UGN0bmlFSGRr?= =?utf-8?B?MVlKcnZtbnJrekx5TmVOV1JiMnUvZjhSR3RiQVQxZExOOWVEWDNnZEV4MTRr?= =?utf-8?B?U1FwYk1KRmlXb3I4NUh3ejFtUVlmVlJVSHpKajIrT05yTHR5Yzl1b3FjNDFy?= =?utf-8?B?Uml6V3N5M3ppZjhQTk9wL3FLWjlSZWJhYzBjM2JzUUt5YVV5cW9Gc1hFUUFW?= =?utf-8?B?aEozNExyWURrTmJKTzU1dEYxOVgycFZUYksrTTdvK0p6Q0FCa01xaG9MZWNY?= =?utf-8?B?VjlYK0E3MkhmcjNoWWF2c0xsNEF3bGx2LzFIT1QvUzJLcVRvN0tYZldPcHlh?= =?utf-8?B?djhQVDJLWnkwRkJIRWF2ZFl1aEdJdTJMbHZrMDl5akVTUnlKamFLVXVJOVhH?= =?utf-8?B?U1pOUEF4UUR3bGNzdm1QT0Zjc3lUQnhXUkFTOTJOcU05dWhmNVZDTTNjb1ZR?= =?utf-8?B?bGVNU2lMWVVZaS9Nc09jbkZUc0tZTjI1Wldva1Frd2hnZTBkRU5yZ0xGL1BY?= =?utf-8?B?VG8xODd2akRBcEFTUmxvckk5RytNSUFYcUt1eUlNVjh5L21kc3dBcU1LRFg0?= =?utf-8?B?L21SVng1RVR5c094YTZHdE8rN2JLejlSWlBCc1R0MktzZkFnaVM1aVlhNlBz?= =?utf-8?B?alpMSXo3NzM1cFJEU2dkaURNSGpYVVZPdm43V0p5NC9Oblg3UjlwQXZGOENU?= =?utf-8?B?NVVvUUJEblMzU0RXS2VBTlhlMEp4OFR0c2dYNkNNZWRlL1FBT1A4ZFo4SEFH?= =?utf-8?B?RmlnRHhTUjRhUWlwOUx0UHZVckpmcnNBMnByL3VnN0xicFhZZXI0dDUxMVdN?= =?utf-8?B?RGVlOFZRTytXRGw2TFRNZ3lQZE44bGlZZXZIUlNRNE9jbi9CL1pXM0xaeEZM?= =?utf-8?B?RDZCWVd5c1JKaVZpMmRxMFFycm1jMlFHN2V2NEtUSVJjTGI0ejZqSmxjK3pZ?= =?utf-8?B?SS9YL0NYRkJVY1hmaTlTbEVtdzV3N1VSTTQvZUIzUHNFTG5JM0NXQ1EvNVZy?= =?utf-8?B?QTFmczMycGZHQ2Y1K00zRGxWem9aMzN5RjlmVFd3T2ZLUVZTN2c5VTYwcjc3?= =?utf-8?B?Wnh0TXpTaDlTSmFWM1ZuRm0vaEZVODBNZ1VQQXRSeWhqbGplbDZUcjI2a2tx?= =?utf-8?B?WG1kY01rM1FPTDBJZXFodUFpVmNOWHYzMXFWNy9yU1c1aUFDZkFJOUc1ZXE0?= =?utf-8?B?bVhmaTFtZit2emx1OUNDZWIvMmJaaW1SUFRUTHVMYXBHaXZESHg3cFhMR3Qx?= =?utf-8?B?Qk1ST05HK1hVSm5pZXBWR1ErRFllRlhGNG1BSXBwdnBjY3dQU0hRNllJUDFN?= =?utf-8?B?T0NDVHJyWEh0ZVRiaWVIN1RKREZRaFVmZHJxNHZVSlBNb05xMDJab0ZkR0VS?= =?utf-8?B?NVlRY09GRk8raUtTZGhBaHZ5b3lkNlhqM0pmK1dWMjc3UWpTaXN5NkFQMmF4?= =?utf-8?B?QjNialVXYzJzRHRoSVdwZHVOTzBMbHZxNi9zSXRQbFJRdmc3MzZNdUNsM25Q?= =?utf-8?B?YzJqalFTcWUrTllkOVBoT1N3MEhFQ2RQWnJnSmdGU1FodGVqQW9EQkdpVWlu?= =?utf-8?B?ME45WlFiZWxuRGI1ZjNGTUNSL3hnSWRvcnE0ZlBRZisyVUZrYVROMEJpLzhV?= =?utf-8?B?QWYxWWc0cFE5T1BxUUtpNHpzUkVFVURqa3diOGdsUEtrZTY1SmcxbnBFNk5Z?= =?utf-8?B?dEQ0RG0vV05reDF6ZDhHMlJKQVF2ejRvNytpUUo5OTd2d0xmY3pRNzhPRUND?= =?utf-8?B?OWNudk1jTG82WkFyanBwYnhuMCtleGUyMWo4S1FJSlhwaUpTd0RMWk8zWVlB?= =?utf-8?B?RFAreGs3b3Y0by9UdEo1SjZCM2s4MFNzRlBZQTB0ZzNoNnc9PQ==?= 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)(1800799024)(366016)(376014)(38070700018);DIR:OUT;SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?utf-8?B?NUdVV3FtVEU2UGtSVCtYTDFQNjNTbG4vV1FuZHN6NWxPSjNTa1cxY2w1amxE?= =?utf-8?B?MkZOQmhGUUJvczc3L2Y1d3JSQU85MVJqRVZ0aEt3Ykg5M2tJZnZYcDBKNVRU?= =?utf-8?B?dHlmNkVvd3BxcHRMTGNERHc0RFpsWDRtRjBlZVArUkF5REd6eFJNcU1tcm1L?= =?utf-8?B?eSswRjY2anhMNXdONWhsNWZ0bFFCL3licTllNjJXcG0wY1dEUXFGTGtvK2hP?= =?utf-8?B?WVJiZkJaRWYzSHJZRWFlSk5BQTlyOGlUUXhXWmMyNXJwWmcvbUNMaTNwcjJi?= =?utf-8?B?cUExUEpPMDRyLzg3OWlDWVZqM3BUT21mcDllZUsxSEc2RXpCNUtEcnord255?= =?utf-8?B?ck5scEJycVN2K1puRmxEN1JuU0JVT1Vta3lXRzFMamErTGQ1cjlMNUU0cUFZ?= =?utf-8?B?TlhYTE5sMmtCcEpIOVdpZ0FaZXpYSmthSk8zWjI2NVMyRjIzMW9YUjgyTVlh?= =?utf-8?B?Ukw4N3BkRGsySHlaWWFkallMSFIzMWtWcTNIbnZaNzBwb0N6ZFk5a1FWSDl0?= =?utf-8?B?ZGhsbTF0emw2Y2JNQ25QT2VlSEc3Vk5QSEdObitxV2dTcjZkZUNzemtObFpG?= =?utf-8?B?K1pBS0RDYjEvSE1lQURqdkRPUGNLQkpQeklkb2djeGtmUExjZ3k3SUxWUThs?= =?utf-8?B?TUdVRTZ5QkFkamk4clpzSnlaVExXbWs5Z0NWbDA1NXBBdHRKY0l1V0llQnBO?= =?utf-8?B?bzdjNUFvRTBLVEZYVDdnampwRXFFZW1sQklXL3krdjhtdXoxKzhJQi9JL2xO?= =?utf-8?B?TWhycm92cVptSktVUUEyaDJZUHErUTlsUFBjclhEOGQzdWt4SnZ3SWEwdHB2?= =?utf-8?B?R254eGpFcTZXOFFuWTRKWldLZ3ZodVRhZVAxMkp5azlmMzdLWTdDK0ZEUWY1?= =?utf-8?B?a2RvcVZ6dVhOSDQ0WnY1b1dhbmdONW12ekVwSFVBN00zNkd6NEVVNnh6NUo0?= =?utf-8?B?UHZ3M1Z3dDFNNGZKc21Rc1o5UTZ3Y2YvZC9oaUo2elFTMjNXM2VVL2w5c1Nn?= =?utf-8?B?anRIZzA5dlZjK1hhbHNnOVVhczhNeThoSUUwMkZxNWQ0V1BEVzhWaDl6V25N?= =?utf-8?B?TjBlUEVsT0xGYVU3eS9yMitXWFoxWURVVGdEL0hZZVFlRXBiWFcwQVFGamdV?= =?utf-8?B?eEtzK1lCZmh6MEpUYUxzU1RpT1RMQldUNm1Uei9aS1p6K1RnbXNxSlNlRWNm?= =?utf-8?B?TUlhay9WcVBmMnVvLzlFbE5oUHdMYWkzUHpnZm1DbjhYUjJVUm04UkJsNnh3?= =?utf-8?B?bkJvM2pFbGI4aDNYVzV0WjladjlSdDYwYjZtcG8yWG9BK2lhcXNmWTFCVzAr?= =?utf-8?B?WFhmLzUzV2JZUUR4eVBTZStoVkQyWXpML0FRbitmY3NXRmFiTzNwSkgzL2V1?= =?utf-8?B?V0N3TDl1VUdUMWx3aWZISHhKZ1BqeUZnSWgrdFh1Nzc0Q2Y5bnpnbzQvMmN1?= =?utf-8?B?WUt0aGpsSDJiYjVPMVFYU3lxZ3hGTEd5Rm9lQjlTUHJ1eld0bU9sMXVBL1Ir?= =?utf-8?B?QjFJZFUzeWJxVHM1bVprNTFRRnBxV280N2dnV1lSditEQ0ZYdVhVTnM2QXVt?= =?utf-8?B?NEdPa0tUM3BxYUdzWDJRUTBWNmFBMzJ1NkNpV3J5TEpBTzZNTng4ZTA3YnpC?= =?utf-8?B?OXRSRTUvRThPbFQrcy9vd2VBRXdEWDFLWjhNYnRQbjBXcnhjN2wyTmlVWTJ2?= =?utf-8?B?TTd3am56eEhONVJnMXJNMS9zTFZFNTNCZkVna3dwZmY2QmlNVldrTmJkNnJ0?= =?utf-8?B?NzY2MWUwYXJEREhSNlZrMlUxWVA3SHo5Z2hJenFBWm85UG82ektwSEtiNkRw?= =?utf-8?B?VWJIbzdmWWxra0FqUXNhYnJkenpTM1huOVFiNGdVbTFSR3BaMkJuZUhuVnZJ?= =?utf-8?B?ckJnRnh2aHdwLyt6SVZlamcrU0UvZSswYlB3NFFhOXlRRUR3YTBLSUt6QkFZ?= =?utf-8?B?N1VzS2JOcFppeitLMFF1VCt5a3F5dzNTWUhzcHBhWGd0Uzl5LzlMaWlUd1ZG?= =?utf-8?B?cFg3TWY3QmJLbGNFeWhxU2tzbmFUa0NZRWVPMFVBVnlIVk8wdEFDeDd5ZEpO?= =?utf-8?B?UVVES2xkejJqUXpBK2Y2MDBlTXlrM215SEJ5TjlVN0VYVHpHSmt0eEw4N1k5?= =?utf-8?B?UVM0SFdVdWJkN3FVWUNydUxoaWJLV2NBdEQwVEdCKzRBOUxTZ284UkRES1Bu?= =?utf-8?Q?T6x3uRNFHk9Ca6CJNU4wSeY=3D?= Content-Type: text/plain; charset="UTF-8" Content-ID: <00621088796AE74BAF5537D9DE8D6432@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: bb1c17ce-80ae-433d-5037-08dca5d31c68 X-MS-Exchange-CrossTenant-originalarrivaltime: 16 Jul 2024 20:08:51.2494 (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: +dEMboGIuqFYbJWvN39GnWh79a969zvjhMKprwP6paJGS7T1KpnLYqbB1pStauaKYz7G7COqL9fOBqBAl73p9C3RKCZXUPTwJlNohIFF2Y4= X-MS-Exchange-Transport-CrossTenantHeadersStamped: PAWPR10MB6901 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=tC5+krRQ; 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:2606::604 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: Lo4NXRuXBBjp On Tue, 2024-07-16 at 16:18 +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 zstd. >=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 |= 101 ++++++++++++++++++ > =C2=A0.../container-loader/docker-loader.inc=C2=A0=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 |=C2=A0 12 +++ > =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 |=C2=A0 18 ++++ > =C2=A0.../container-loader/podman-loader.inc=C2=A0=C2=A0=C2=A0=C2=A0=C2= =A0=C2=A0=C2=A0 |=C2=A0 10 ++ > =C2=A05 files changed, 151 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..e97e829b > --- /dev/null > +++ b/meta/recipes-support/container-loader/container-loader.inc > @@ -0,0 +1,101 @@ > +# 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" > + > +CONTAINER_COMPRESSION ?=3D "zst" > +CONTAINER_DELETE_AFTER_LOAD ?=3D "0" > + > +DEBIAN_DEPENDS +=3D " \ > +=C2=A0=C2=A0=C2=A0 ${CONTAINER_ENGINE_PACKAGES} \ > +=C2=A0=C2=A0=C2=A0 ${@', gzip' if d.getVar('CONTAINER_COMPRESSION') =3D= =3D 'gz' else \ > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ', zstd' if d.getVar('CONTAINER_COM= PRESSION') =3D=3D 'zst' else \ > +=C2=A0=C2=A0=C2=A0=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 ''}" > + > +CONTAINER_COMPRESSOR_CMD =3D "${@ \ > +=C2=A0=C2=A0=C2=A0 'gzip -f -9 -n --rsyncable' if d.getVar('CONTAINER_CO= MPRESSION') =3D=3D 'gz' else \ > +=C2=A0=C2=A0=C2=A0 'xz -f ${XZ_DEFAULTS}' if d.getVar('CONTAINER_COMPRES= SION') =3D=3D 'xz' else \ > +=C2=A0=C2=A0=C2=A0 'zstd -f --rm ${ZSTD_DEFAULTS}' if d.getVar('CONTAINE= R_COMPRESSION') =3D=3D 'zst' else \ > +=C2=A0=C2=A0=C2=A0 ''}" > + > +CONTAINER_DECOMPRESSOR_CMD =3D "${@ \ > +=C2=A0=C2=A0=C2=A0 'gzip -c -d -n' if d.getVar('CONTAINER_COMPRESSION') = =3D=3D 'gz' else \ > +=C2=A0=C2=A0=C2=A0 'xz -c -d -T0' if d.getVar('CONTAINER_COMPRESSION') = =3D=3D 'xz' else \ > +=C2=A0=C2=A0=C2=A0 'pzstd -c -d' if d.getVar('CONTAINER_COMPRESSION') = =3D=3D 'zst' else \ > +=C2=A0=C2=A0=C2=A0 ''}" > + > +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 " \ > +=C2=A0=C2=A0=C2=A0 CONTAINER_ENGINE \ > +=C2=A0=C2=A0=C2=A0 CONTAINER_DECOMPRESSOR_CMD \ > +=C2=A0=C2=A0=C2=A0 CONTAINER_DELETE_AFTER_LOAD" > + > +do_install() { > +=C2=A0=C2=A0=C2=A0 install -m 755 ${WORKDIR}/container-loader.sh ${D}/us= r/share/${BPN} > +} > +do_install[cleandirs] +=3D " \ > +=C2=A0=C2=A0=C2=A0 ${D}/usr/share/${BPN} \ > +=C2=A0=C2=A0=C2=A0 ${D}/usr/share/${BPN}/images" > + > +python do_install_fetched_containers() { > +=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 BPN =3D d.getVar('BPN') > + > +=C2=A0=C2=A0=C2=A0 image_list =3D open(D + "/usr/share/" + BPN + "/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, _, _, 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/= " + BPN + "/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 bb.utils.remove(tar_image) > +=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_CMD')} {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() > +} > + > +addtask install_fetched_containers after do_install before do_prepare_bu= ild Add do_install_fetched_containers[vardeps] +=3D "CONTAINER_COMPRESSOR_CMD" = here. By the way, for this to work the implementation in bitbake.conf needs to be= fixed as well. The vardepsexclude for ZSTD_DEFAULTS should not contain "ZSTD_LEVEL". I could sent out a patch for this. Benedikt > + > +do_prepare_build:append() { > +=C2=A0=C2=A0=C2=A0 install -v -m 644 ${WORKDIR}/container-loader.service= ${S}/debian/${BPN}.service > + > +=C2=A0=C2=A0=C2=A0 # Do not compress the package, most of its payload is= already, and trying > +=C2=A0=C2=A0=C2=A0 # nevertheless will only cost time without any gain. > +=C2=A0=C2=A0=C2=A0 cat <> ${S}/debian/rules > +override_dh_builddeb: > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0dh_builddeb -- -Znone > +EOF > +} > 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..1638eaf2 > --- /dev/null > +++ b/meta/recipes-support/container-loader/files/container-loader.servic= e.tmpl > @@ -0,0 +1,12 @@ > +[Unit] > +Description=3DLoad archived container images on boot > +After=3D${CONTAINER_ENGINE}.service > +Requires=3D${CONTAINER_ENGINE}.service > + > +[Service] > +Type=3Doneshot > +ExecStart=3D/usr/share/${BPN}/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..b6abec92 > --- /dev/null > +++ b/meta/recipes-support/container-loader/files/container-loader.sh.tmp= l > @@ -0,0 +1,18 @@ > +#!/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 [ -e /usr/share/${BPN}/images/"$image" ] && \ > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 [ -z "$(${CONTAINER_ENGINE} images = -q "$ref")" ]; then > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ${CONTAINER_DECOMPRESSOR_CMD}= /usr/share/${BPN}/images/"$image" | \ > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 ${CON= TAINER_ENGINE} load > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 if [ "${CONTAINER_DELETE_AFTE= R_LOAD}" =3D "1" ]; then > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 rm -f= /usr/share/${BPN}/images/"$image" > +=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0=C2=A0 fi > +=C2=A0=C2=A0=C2=A0 fi > +done < /usr/share/${BPN}/image.list > 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" --=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/f73b26066edb422e5add7f67098cc53bc12fb2b4.camel%40siemens.com.