From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <julien.escario@altinea.fr>
Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68])
 (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
 key-exchange X25519 server-signature RSA-PSS (2048 bits))
 (No client certificate requested)
 by lists.proxmox.com (Postfix) with ESMTPS id 2E6DB627D4
 for <pve-devel@lists.proxmox.com>; Mon, 13 Jul 2020 17:07:50 +0200 (CEST)
Received: from firstgate.proxmox.com (localhost [127.0.0.1])
 by firstgate.proxmox.com (Proxmox) with ESMTP id 1A6841CC19
 for <pve-devel@lists.proxmox.com>; Mon, 13 Jul 2020 17:07:20 +0200 (CEST)
Received: from mx03.altinea.fr (mx03.altinea.fr [IPv6:2a06:ac00:4100:200:e::1])
 (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
 (No client certificate requested)
 by firstgate.proxmox.com (Proxmox) with ESMTPS id 3683F1CC0C
 for <pve-devel@lists.proxmox.com>; Mon, 13 Jul 2020 17:07:18 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=altinea.fr; 
 s=default;
 h=Content-Transfer-Encoding:Content-Type:MIME-Version:Date:
 Message-ID:From:Subject:To:reply-to:sender:cc:bcc:in-reply-to:references;
 bh=82097LxJBxQHbEezWKCQX3Gsg+Ocw1KdLLyGaafsGJY=; b=SNhCPWe9VlCK3mInTPaoqVBRTO
 3jCvclvBHGBKmlDpQBUn6YSGuntQSkUGkREdOGYtIiX6KYxir1c3te/cVACPgHb3nVFphj6O97iam
 PqiFbKTOGQR6NggX6r7wNAak1+O7g7o3EXxpATl+Ih6vmpn7QoOGODSjO53znDaeGjfBH8muuDwMF
 3owL/k+L0qPMPO0fBHGjpr+zPtKUgZ8xMAGhEWfptt/0kThVzrvv8jDuMGwhD+Z/ic0EkmdXVOncf
 5o1SGKfkYOrFRckHhNWAgaAbZ4VSZQe4sQeS/8Op7/FQI1eR4Mi8wrE3CeRBJcJ4kgbm4VkJPI+FZ
 tUNjT/ew==;
Received: from [195.200.217.24] (helo=zpush.altinea.fr)
 by mx03.altinea.fr with esmtp (Exim 4.92)
 (envelope-from <julien.escario@altinea.fr>) id 1jv02t-0000lq-Iv
 for pve-devel@lists.proxmox.com; Mon, 13 Jul 2020 17:07:11 +0200
Received: from zimbran.netmind.fr (zimbran.altinea.fr [185.123.84.49])
 by zpush.altinea.fr (Postfix) with ESMTPS id DA1664052E
 for <pve-devel@lists.proxmox.com>; Mon, 13 Jul 2020 17:07:06 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by zimbran.netmind.fr (Postfix) with ESMTP id 201ADC22D9
 for <pve-devel@lists.proxmox.com>; Mon, 13 Jul 2020 17:07:12 +0200 (CEST)
Received: from zimbran.netmind.fr ([127.0.0.1])
 by localhost (zimbran.netmind.fr [127.0.0.1]) (amavisd-new, port 10032)
 with ESMTP id IyAZrvZOFb87 for <pve-devel@lists.proxmox.com>;
 Mon, 13 Jul 2020 17:07:12 +0200 (CEST)
Received: from localhost (localhost [127.0.0.1])
 by zimbran.netmind.fr (Postfix) with ESMTP id 02FA3C231F
 for <pve-devel@lists.proxmox.com>; Mon, 13 Jul 2020 17:07:12 +0200 (CEST)
X-Virus-Scanned: amavisd-new at zimbran.netmind.fr
Received: from zimbran.netmind.fr ([127.0.0.1])
 by localhost (zimbran.netmind.fr [127.0.0.1]) (amavisd-new, port 10026)
 with ESMTP id IJtmX5UEl82g for <pve-devel@lists.proxmox.com>;
 Mon, 13 Jul 2020 17:07:04 +0200 (CEST)
Received: from smtp.altinea.fr (webfront01.altinea.fr [185.123.84.56])
 by zimbran.netmind.fr (Postfix) with ESMTP id CAF39C22D9
 for <pve-devel@lists.proxmox.com>; Mon, 13 Jul 2020 17:07:04 +0200 (CEST)
To: pve-devel@lists.proxmox.com
From: Julien Escario <julien.escario@altinea.fr>
Autocrypt: addr=julien.escario@altinea.fr; keydata=
 mQINBFqVUA8BEADj7xi2mP7m+y/DNC53JKjp4J3zFL/kId6wGSksrJd23OFOAD7TP5IfpNHZ
 ZmIVOjTSfQEb72/+q8Vr8v0ziWsgFzdNN2QRTq3Lc4QaRjMVott4bHhD52RLoPVKb5iLrdVk
 yZfWIanHxcn2RQfVLld1qH3ulS827jppUzOePswolc0otjDxpoC+8Q4Jnu3tPXd6LKTZxa2e
 bCJHCNg3x020vvF2hc5SP8V2U+QOOAMUJ4phoE56o6BHWsK2A/DicJ+eNs/irZ0m4wyR3Iyv
 HRJHxfEKCuJTTGMFWyJYj695c5ogByK61h8qJzGwvaReP7QkLNLyPPOv4FkJc08upoig7N/B
 8o/YeYKTnxAFV5zXGYqQt57SInm0lTrSTdwPIFLdCIItllNrC9MS1dobwHDAkLFzsNk6Xlwu
 3hXJK7eFPexWYnYektFvCykdftabA+zYcp3AemVmYeCp7D2arRxFatIEtehncBgkTBUHtWJ3
 Lm+ymuPooab4fQNOPbHz5RsvJAP2s0X3OuhA5Os3NVS/S0ZdPQabcXM8g+3Ol/exn6vYfw8I
 jvr5kaGN7NpIWNGDkmHmMw4ogUCxWGA1kqMBLwSzQ2EPEBB6ms7xf0uUqgB7j/rEVMtOmo99
 bqPu+LZh/0CjMkq40LtWe27/u8G00yJ+93Gi7ugjLArKYQyUmwARAQABtCpKdWxpZW4gRXNj
 YXJpbyA8anVsaWVuLmVzY2FyaW9AYWx0aW5lYS5mcj6JAjcEEwEIACEFAlqVUA8CGwMFCwkI
 BwIGFQgJCgsCBBYCAwECHgECF4AACgkQ4xSwrBv8+0yYUw//RTIM7j+keOTQnVtSlK784/ff
 PqR9FFJHE1xwzT8OeDdSGdVL/kmYtNHZuLFK0NRivzEYacXUUig9xxPiIBQRfC7uaW9aorxA
 xMANonqNsyUHI6nfJ5zcQJxffKB7Fh49810qIZ7acsrZPWktMU20lk4p9XoH9Ps48M6X1V/V
 bjirnTCQykrVmHJ9KnZApFNyQGMnCCN+v80qX/hpIMzodpE7td2nX3BDOGKv/TRzSRa6pkjl
 VtprZieT/TSub86UIKPgBnXgnI8yH0Tnkp/4bVTnQJ9FSYXPeMRBhoUMkkYDciFSCf18Pt3h
 CzvxORzYRY+vyFDV26GxrTSdHartZ8P4hovVuwMQclzquxhUP4xv92d7jmnEg2g1axFfW2N4
 nVoMA3EO/zSD3fMT4HWm0yM4qkUxcWH8g/OPJQNrHZmLXsGCC0nuDxseTPur/wjM8m0Hve6w
 tjWH6/p03SQsSkQ2m5W2Iusz8kGvnUI8g4dvNzkuDt9FO1OHUU2imUM6HocOnwKoXr08Phmb
 THo42blNOvOMEfD/wlDMNfmqOb+0VQPrkifGn57QVFhOK2zTJLL/KaJ1Mqg9HlzUwfeoSPHi
 n0bUKzMS8+IVOEESDl9nKkXRoupizIYagUqtoVqGwPDMCxUcF/8/xOZp29NrWODvGs/xzLed
 zr7jeCOkRre5Ag0EWpVV/QEQANCsi1+I42IK0BGfOtoSRgoSuzt8OW2T6FZt5y6UvyACKKhy
 Qgy15XR+iJuUcXq1PCgs1fgjHK0MEnYTYQz+lunLSqUKzgVOWAT0AgpiaRh28m8YFVMAiDGH
 zIxgnCjBDqLh854iwIdQhpx3mToaitqo1TZBmuOCH4tR2o6sdryltSEEQO3exiZleXiwDY0m
 IxQwA3I029K96lVCNfvibXMPc+PjIUdnwuEff/30nln6fdkdOBodIUFPNcr1EJKybwofsP53
 r/A0MMrSj6SlKghINW8cZVC4Oy1O4AhzwbuAGQVL2bW/8kN1HcJECYrDVhPtK4kVaetTTvhx
 r4ayCIjysaPLez6+urv+uweAxcPk6OLtVWpe6KipyC4REWIx18Z6gzdrGU+8xli04q7f2bbI
 lJMNFt4Q018FQrLM5Dr7B2SHi/GdIqKXKwevHPQm+KD0TAtBL3Hyl8HK1T3+kIF2W36R7NJz
 nZNJJ3XXWrbuqaY6/MtPv4EoDY8mpT9LYzhtldZrElKDo9kP+Hq1Rnhr6muDXa38mKqb+NyR
 Ont+bxHs5zzROMHKZmfCkhQdn8ScqtYldENf4R5SQOtBEom2Z4/mcKbEJOj816YbGtwiQh44
 SdF9uG7szgbCbEO2w9INJ6Hjbyuiw17YNedztrJ8yoo05bgMtFMYRVttVQwVABEBAAGJBD4E
 GAEIAAkFAlqVVf0CGwICKQkQ4xSwrBv8+0zBXSAEGQEIAAYFAlqVVf0ACgkQ5a/YOj8xy26H
 Gg/+PvIT04J9tyWK/FSDC0nWvvSmWmTRf4c/NIJ/bq9AfYjXr8vwDBeUcCIGQWsjMaZmiHCe
 umW7BAc+U1hsq1tuGdWA+G2lBPSV1eV5t+VTmKK0VAxO1KBYxtc5UAg0fESWx5t9BIcV8XlU
 gZJ2cGR58NTaTP2FOAWsuf3hfY3jqFwgtGc8pTO8SKaD7VarkNWdd1GW7DJfoddlNe0bjAgq
 RZJptfShnfF0IcMoYO8Z3p948fKTxap23WiBv34R2vue3Hh83h0fbZSWxppra/zg8SPK3vBg
 x59KopVlXzScwa/VXSLyYBqV961ybjk6nNcczEEJIjJp+gGfevBqvxkJCgUye7zDK6mC43ph
 V7Aa4yESwBx9jPBQB1RHtJuiwwzz0++CUtlTIjT2LA6dYNTHO7RPrn35ZGH5fn3lL2Td4aZN
 owsPNCKs+ZEoUY6BjO0uQPjNvQcRmcAjFoeJy+i+tVdVwKAMJKy1Q0coOqLQ9GsvlMCw8ief
 hAjBAP7TfKhfdPADPA8vggYMkqYmbgsUvxGjs6cQ19vQcIDgl8r/Q+6Q6b5JIKqufWH+1XIt
 zlGH9zOxQ3JTmGHKpLfWNrUHg6LxVN8srqzB37ef/p2Szm0u8nzlcIb0KmkY0ytaHBjyLkhY
 VdeVKJyO/kMXK4MZ3XGaYL43TTHzm0RhKFw0QWnc9Q//S2t/S5+nmP6uWvf+LbwSgKNk0+ZD
 +iKIPi51f7+Qbj1rDaV9ghdGly9ziU0qIY4M5lQsq6ZfKmdkjpoVQnXCpxwR6BstEZ4k3a/h
 QGBTdlnykYY0X17FQOPgwTf+9hvuCgMbwCfzOcBTTtS+2PPXOMdvKuS5ccv37lj4WOBnYJOH
 ELuzf+af0eF/LCYyUHpLQ6HNVCLLh5aOCqjgu5sTU8n9FGQh/XGX5A1c5AoolEMg3v/4/5bX
 pIjOi9Swz8ot51e9Lflo7mgS5suWjtHXZ/DqUGvIAlk79MQGZE4fe4SUX0nyhUjOqk2AQGJs
 1bfG6rFoe6086GGpmd8pFvcf9Gc1ELHyBWn+CQo/ZM7CoEvGcORv2UpkTyr4WimDV/zoInsg
 UXcBSYV65ZkozKsDjavpfRUus21+lSqRs6r3HsUfLYVVLkHLPjQhj8rdCafYkXhkP5CySB6z
 hjCp+r66FM2vDZ4U6hfgFLDrQ/8t+tpEAmhj7wG8vGOMpQwYzZFHPEKcl+9rBuRPQTvZwcao
 TRsCfeFwlpbIa3hXcfJGh6L4NNDAXEsAWW3jdhuu8iT+VRvGKq5CHLSYhEw+xlMyNpU6xL4C
 kyNA1Xq4nwjtoIBO00aag3y27gmVtjM5P1m8Tm19NirldTX9Etn3Y2DEqSl/YM9em0akx9Td
 zBY13mm5Ag0EWpVXSAEQAPVLdWSrN++z7kq7YzRaoW+6DWeWe1OHcdasq9fydyh3D9VAvFe+
 rGsg0xM2gu/+9YpaB2qRluy3/q0V/timr0V+kLqPlN8agA92PlFDh1Eh6vsxDI/tQUgLvxho
 Rz2Fw8n6EElVBooUHOh7250jGLGZsq6v+X/E7dYKfjeK7T/sP64MtI5JbEsRlMQ4X/krMoO6
 0EH+7yUZ+1DljJHj8K8z9cMcRM6DGjJrJi1YL4e7Rp3xDStHV0SEbCfw7e9wgB42yU1qDIp2
 k6t//fdHiUmYYGL4sPpue+GcNO0zuCxIwY7+Wu0CPd4iBoC2UzSVHtwXnYmzPBeLBsyyACqG
 2V3B6Bk1/k1pLcrxPvDcZehjEV958mXSk1qwt/UyCgdbON+dX1QpV9B5sCOPfr+2SmErvwIB
 cq+NGuaKCC031pF1MnBp2WN5Qsa34VhvUwi3z8gYUXwbIEPBxw25fKQjdCZ4W8ZyKevel1BN
 6OwIFlh/og2khPlAEHDs0hRGeFDeqv7qEUnnmDWOYq1RlP1801LWTyXcDXBzym19NxPENKe8
 vGRiz8WN+Sc7sFOA4jPGpk0tYCaKpXJDFZ1Re32u0mfvga7pA3ZXrMlAlV85AS5Edgd/50EE
 cjbbVgO3oLQSN5TPZN8Pj6glqkTM56oiOxpc6OGJYB/yQt5ebf+H8FWZABEBAAGJAh8EGAEI
 AAkFAlqVV0gCGwwACgkQ4xSwrBv8+0wiiBAAurGnyX5/JOv3akSQUWYxCoKMTUfrDvln9xGJ
 RxZUNRVB1Fbi8zMi8X5Kv3s3xbPEcgCAexW+hjqwJG5TP2cqNSav/H84T+V0y6V9oNVVFeTw
 XlPSkJ3YVzYrWdx78qEJJTjAecm1GOdqNdaCJFx9ohd94ov86g+K/0n5zzXA+G34tJzQAwad
 77O/A9sKwBvMnP4rfdlbnW09OXTPGnBCE5VJbcB+k50drJIg9yzDox6eejovJbYr9Pn9PYBz
 FjM3hhiVtBWcqJt2V2ekIjJeqh12C9kMXFpk96Xw3n0bHf+obOBdB3+K5CYkJa3T//I6tslE
 EzypgFcue9L5tlTidiYBo3t97/cE7ErlRrsqpnW+ZyhjB5VVqNDARxu90DRuXv/KnL42s0Lq
 OOrxFIeNt6tVkfXO41cyLtheRg3TkZvqTjUAA0wKea77NjCQZlCgEovq9I5yba9pJjiGkfqy
 bDsmDeDXzlEdhlJg938kTBX2WIMWjORAfc4TDnaUCeb4mQuXNhvEns4EkTXpnmcmM6yWq1YF
 0Cv2+7kFkMdzzF2XpboekHZT/e4TeB3WCsdeAzMEpjX+vylmn2l2roqt6hMkAWvK1ZDZUHSh
 kzcHW9gekWop0BL0t1ktNCQiRFPjzFiMOxmb8nt5Q1fZyKIly5e150qVA8SH25D/CcfA+HY=
Message-ID: <e84dcdd6-250a-4f0b-c1b8-162b61b20dcf@altinea.fr>
Date: Mon, 13 Jul 2020 17:06:59 +0200
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101
 Thunderbird/68.10.0
MIME-Version: 1.0
Content-Type: text/plain; charset=utf-8
Content-Language: en-US
Content-Transfer-Encoding: quoted-printable
X-Originating-IP: 195.200.217.24
X-SpamExperts-Domain: altinea.fr
X-SpamExperts-Username: 195.200.217.24
Authentication-Results: altinea.fr;
 auth=pass smtp.auth=195.200.217.24@altinea.fr
X-SpamExperts-Outgoing-Class: ham
X-SpamExperts-Outgoing-Evidence: Combined (0.18)
X-Recommended-Action: accept
X-Filter-ID: Mvzo4OR0dZXEDF/gcnlw0ZZlDYW4q2llG44Qh0NJtYKpSDasLI4SayDByyq9LIhVKL1p7nvXfxq/
 N4hD70AyjkTNWdUk1Ol2OGx3IfrIJKywOmJyM1qr8uRnWBrbSAGDcVcXB/4c7z20kan73EXNfnc0
 qRfgViFHIQUcSGlOrvYBcORxfCojcTOpEjtvWHp2gBTLgPsE+fegcPBu42Tfwjg9YkzbMy6DOYhG
 3MUcvhrxNrJjiSXeBtvVVpEJHS+dNVAwoWXyMaFztlLOSMxQ4r7kBdimmT9PFSheE0r33xatdanO
 U07Z4oQbhfKrYy0P2DgAp0at4W1lubqSgAR5nDxIPj1UU4msT2Odp9D6f/PptQHeGNL6keepTGFH
 NE3ltXmdhPE/B5jGda2JMHgPHtc5zScesmtYQ1BiGhs8Odr8IkZQDt2EpmToKZhJj95yhaC2TJpF
 rGrq1WX76kTmg5w7R2/M+XaT5BLifEp8KpWqooevY5/6HOcNgAZkE/CQ5a0Bpndg7VT+tKRUzue4
 ciCv9TR+UxzLZWL8hwGBjhoI3W+YcuHfP5PkZb5A+wE5qGdpH54Oa3V8I76VOEvlwPpZ90pncljT
 Sb0eCPh6fGXQuHkL7xykfiMvvZNbsB3+bpGbCZ+FcyfALkCaA0pccWk354VKVy2jITdLutSL5zkh
 SyLWVSVG4FGaHMJdecGYh4+qX/dyZmzcbbG8DB5w/Rg66gs5OuzYxJgw5atIxePRATBeLGgnttiH
 xNCy3FcthnwK/FjFMJzVvuGnepWec8JvUUJhGvQd9wjrqiRkVLZm4zuNRcgRKiGg7nXFaZTxwDWz
 6SFxRhhBvNty4287hq9OawZ9trOCFJtg2YpWaZvA59NWR7cRTvvohcucPlk0mxWKDzjztSbxuQDv
 VMtKqLs3WcJylURQLRbRHpRj2JUFVvz0rtpV/MwsyfZgA3Ieosqd6Nd+YjikxZ7zJsgoLjRT9RFI
 9HkoLJidr5+YVEcxL7hrJSk60SF3F6RYOYr2
X-Report-Abuse-To: spam@mx01.altinea.fr
X-SPAM-LEVEL: Spam detection results:  0
 DKIM_SIGNED               0.1 Message has a DKIM or DK signature,
 not necessarily valid
 DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature
 DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's
 domain
 DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from
 domain
 SPF_HELO_NONE           0.001 SPF: HELO does not publish an SPF Record
 SPF_PASS               -0.001 SPF: sender matches SPF record
Subject: Re: [pve-devel] [PATCH qemu-server] api: cloud-init support for mtu
 and userdata
X-BeenThere: pve-devel@lists.proxmox.com
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Proxmox VE development discussion <pve-devel.lists.proxmox.com>
List-Unsubscribe: <https://lists.proxmox.com/cgi-bin/mailman/options/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=unsubscribe>
List-Archive: <http://lists.proxmox.com/pipermail/pve-devel/>
List-Post: <mailto:pve-devel@lists.proxmox.com>
List-Help: <mailto:pve-devel-request@lists.proxmox.com?subject=help>
List-Subscribe: <https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel>, 
 <mailto:pve-devel-request@lists.proxmox.com?subject=subscribe>
X-List-Received-Date: Mon, 13 Jul 2020 15:07:50 -0000

Hello,
First, sorry, I'm taking the thread from the archive, don't have much
history.

To the question :
"Any reason why snippets [0] are not enough for custom userdata?"

Yes, there's one : in the generated, there's a few vm-specific options,
like "fqdn:" and "hostname:" parameters. Having them auto-generated in
PVE is really nice and remove the need to have a snippet file per VM.

With snippets, one can only REPLACE generated user-data. So, the fqdn
and hostname parameters are completely gone which leads to the need of
one snippet file per VM.

Having the ability to EXTEND the generated user-data is really needed.
So we can add only vm-agnostic parameters like sshkeys, packages and so
on ...

On another approach, I wrote a (really) small patch adding the
vendor-data custom file [1] but I'm not a developer and submitting a
proper usable patch is out of my capacity.

vendor-data never supersede user-data [2] so no other change should be
required.

cloud-init support in Proxmox is almost complete, please consider
integrating one of the 2 solutions inside your code base so we could
full automate VM deployment using the API and 'plug' the VM into a
config management system like puppet, ansible, chef, whatever.

Thanks a lot !

1 :
https://forum.proxmox.com/threads/combining-custom-cloud-init-with-auto-g=
enerated.59008/page-2
2 : https://cloudinit.readthedocs.io/en/latest/topics/vendordata.html