[00:09] <johnsonshi_> Hi upstream folks, I realized that cloud-init recently began using pycloudlib for integration tests. Azure support for integration tests was just added in https://github.com/canonical/cloud-init/pull/604
[00:10] <johnsonshi_> Do you know where the integration tests are defined in? I've looked around pycloudlib and cloud-init, but can't seem to find where the suite of integration tests are defined.
[08:47] <vijayendra> rharper, smoser how can we set IPV6_FORCE_ACCEPT_RA to no from cloudinit, for any ipv6 static configuration. I see this set to yes by default, env: RHEL8, cloudinit-19.4, power hardware.
[08:49] <vijayendra> we wanted to set IPV6_AUTOCONF=no in ipv6 interface in ifcfg-* files
[09:18] <vijayendra> above is for static configuration of ipv6
[12:55] <meena> final failing tests fixed, now it's time to start removing more duplicates and wrappers of generate_fallback_config()!
[14:42] <amansi26> smoser: Hi it will be great help if you can review the changeset https://github.com/canonical/cloud-init/pull/584/files
[15:04] <rharper> vijayendra: what does your network-config look like?  reading cloudinit/net/sysconfig.py:  IPV6_AUTOCONF defaults to no; except if the subnet is 'ipv6_slaac' or 'ipv6_dhcpv6-stateless';   the 'accept-ra' network config key translates to IPV6_FORCE_ACCEPT_RA on rhel;
[15:05] <rharper> vijayendra: I suggest you work with cloud-init devel net-convert  ; you can provide input config and it will render distro specific network config output to a directory so you can adjust the inputs to get your desired output
[15:33] <blackboxsw> paride: minor merge conflict that will need sorting on https://github.com/canonical/cloud-init/pull/576
[15:34] <blackboxsw> paride: and since Dan is about to land another PR  for Azure, might want to rebase off of tip of master once https://github.com/canonical/cloud-init/pull/590 lands
[15:34] <blackboxsw> Odd_Bloke: is https://github.com/canonical/cloud-init/pull/590 ready?
[15:34] <paride> blackboxsw, +1
[15:34] <paride> I'll rebase after #590 lands
[15:34] <blackboxsw> CI passed on #590 now, and in approved state
[15:35] <blackboxsw> BTW paride first time I've seen const used on argparse. Thanks for that
[15:36] <paride> not that I knew it before using it there :P
[15:54] <Odd_Bloke> Yep, #590 is the PR I referenced in stand-up as just waiting on CI; I've just merged it.
[15:55] <Odd_Bloke> paride: ^ #590 has landed.
[15:56] <paride> ty Odd_Bloke
[16:49] <meena> what's const in python / argparse?
[17:11] <vijayendra> rharper, Looks like cloudinit did not any entry related to IPV6_AUTOCONF and IPV6FORWARDING
[17:11] <vijayendra> when no entry added IPV6_AUTOCONF seems to be yes and IPV6FORWARDING  is no
[17:11] <vijayendra> If IPV6FORWARDING=yes, then IPV6_AUTOCONF will default to no.
[17:11] <vijayendra> If IPV6FORWARDING=no, then IPV6_AUTOCONF will default to yes
[17:11] <vijayendra> configdrive metadata_json: https://paste.ubuntu.com/p/8HkQtzWFyh/
[17:11] <vijayendra> cloud.cfg:  https://paste.ubuntu.com/p/KbNGjqHYYq/
[17:11] <vijayendra> ifcfg-env3: https://paste.ubuntu.com/p/CZvP3yGBGH/
[17:13] <vijayendra> rharper, ignore bootcmd in the cloud.cfg at the end
[17:13] <vijayendra> was added that because I couldn't figure out other way
[17:54] <rharper> vijayendra: I don't know if there is a bug or if you want a different configuration; but given what we have from openstack in your network config; it's not clear to me how cloud-init can make a choice about the variables you want set or unset;
[17:56] <vijayendra> rharper, I did check code here cloudinit/net/sysconfig.py, it doesn't seems to have any key I can specify in network_data.json for the same
[17:58] <rharper> the flow is network_data.json (parsed by cloudinit/sources/helpers/openstack.py:convert_net_json() into a network-v1 config -> (internal net state) -> sysconfig.py renders;  now; looking at network_data.json input ... what in that JSON indicates to cloud-init that it should configure IPV6 the way you want it to be configured?
[17:58] <rharper> I don't believe network_data.json from openstack is *specific* enough to let cloud-init know that IPV6 should enable/disable RAs for static addresses;
[17:58] <rharper> or anything at all about forwarding
[17:59] <rharper> so, what can cloud-init do here?
[18:02] <vijayendra> rharper, True, I did work with few changes in network_data.json like specifying accept_ra: no and mode: link-local etc... no success , I failed to construct a right network_data.json here to tell cloudinit to configure IPV6_AUTOCONF to no and  IPV6_FORCE_ACCEPT_RA to no
[18:03] <rharper> are you creating a custom config-drive  payload?  or is openstack generating this for you ?
[18:07] <vijayendra> openstack generated one(with minor changes to it), I am working with cloud-init devel convert as shown here https://paste.ubuntu.com/p/Tb5vk6SgT4/
[18:10] <vijayendra> rharper, currently trying to construct network_data.json to so that I can have sysconfig something like shown here https://paste.ubuntu.com/p/kPVP8JrZqH/
[18:13] <rharper> do none of the typical modes work? it seems like you'd want one of the DHCP modes;  otherwise if you disable RA; how will you get next neighbor hop ?  you have no gateway provided, no ?
[18:14] <rharper> typically we see, SLAAC, or DHCP6 (stateful or stateless);  and if you;re purely static I'd think you'd want to accept router advertisements for getting packets to/from the instance;  ?
[18:15] <vijayendra> currently no ipv6 router, ipv6 interface is used for local lan communication b/w vms
[18:15] <vijayendra> its a static configuration
[18:16] <rharper> ok, but what's wrong with enabling autoconf ?
[18:16] <rharper> if you have no routers doing advertisements, then it just sends out the request every so often; could be disabled separately from cloud-init (or in a runcmd )
[18:17] <vijayendra> when you enable autoconf  ra is enabled too. meaning without ipv6 router, ipv6 interface has few issues on RHEL
[18:18] <rharper> right, I know it enables RA; what issues?
[18:18] <rharper> it sends neighbor requests every so often and backs off ;  you can also disable RA via sysctl  commands
[18:19] <vijayendra> ipv6 interface ip address fluctuates every now and then
[18:19] <rharper> that doesn't sound right; you have a static ip; it does neighbor discovery to determine if the address is local or global ... but I wouldn't think the address actually changes;  that sounds like a serious bug
[18:20] <rharper> in any case; network_data.json doesn't have a "ipv6_static_no_ra" network type yet; so I don;t think cloud-init is ever going to render a config the way you want;
[18:22] <vijayendra> yes true. Let me share you ip a output for you which we were monitoring using some script
[18:22] <rharper> fixing up the rendered config later in boot with runcmd program might not help if you networking is unreliable until you can disable RA;  maybe bake a sysctl setting into the image?
[18:22] <rharper> vijayendra: I don't need to see it; it sounds like a RHEL bug; but maybe it is expected for ipv6 in some scenarios; I know a bit but not a ton on ipv6;
[18:25] <vijayendra> rharper, I did try sysctl settings like below but no success
[18:25] <vijayendra> net.ipv6.conf.all.autoconf=0
[18:25] <vijayendra> net.ipv6.conf.all.accept_ra=0
[18:29] <rharper> sounds like a bug or the issue isn't related to ra; or that doesn't turn off RA the way its needed;
[18:30] <vijayendra> rharper, ok. but not sure of any other way right now. if you check nmcli -o connection show System\ env5 ---> ipv6.method auto even though we have static ip address. this has to be manual or link-local
[18:30] <rharper> we don't configure nm directly
[18:31] <rharper> so that could be an nm bug as it's parsing sysconfig second hand
[20:41] <aswinr> Hi. Looking to get this into the October SRU. Has been reviewed by AnhVoMSFT and signed off. Would appreciate review and help in getting this merged. https://github.com/canonical/cloud-init/pull/613
[21:18] <meena> we have another SRU coming up??
[21:26] <AnhVoMSFT> I believe there's a tentative plan for an SRU end of October