canonical / canonical/microcloud

Support ovn_underlay_*subnet* in preseed

Open
#1,053 1 comment 0 reactions 0 assignees View on GitHub
Feature
Dominant language
Go
Stars
532
Forks
83
Avg merge
1d 14h
Merged PRs (30d)
36

Description

In the following example in the test case, there is an unnecessary conversion from a subnet 10.3.123.0/24 to the actual IP addresses such as 10.3.123.2, .3, and .4 before passing the value to the preseed file.

https://github.com/canonical/microcloud/blob/9df6e15e0f7227f1d117a9d5d422cfb6ac5dcfff/test/suites/preseed.sh#L30-L36

It would be nice if the preseed can simply accept a subnet instead of an explicit IP address.

[actual]
```yaml
systems:
- name: micro01
ovn_uplink_interface: enp6s0
ovn_underlay_ip: 10.3.123.2
- name: micro02
ovn_uplink_interface: enp6s0
ovn_underlay_ip: 10.3.123.3
```

[expected]
```yaml
systems:
- name: micro01
ovn_uplink_interface: enp6s0
ovn_underlay_subnet: 10.3.123.0/24
- name: micro02
ovn_uplink_interface: enp6s0
ovn_underlay_subnet: 10.3.123.0/24
```

In a similar way with `lookup_subnet`, `ceph.internal_network`, and `ceph.public_network`.

Contributor guide

Open the contributing guide

Research direction

Start with test/suites/preseed.sh around lines 30-36 and trace how the preseed fields are handled. Update the preseed behavior and related tests so ovn_underlay_subnet accepts 10.3.123.0/24, with analogous support for lookup_subnet, ceph.internal_network, and ceph.public_network; done means the explicit IP conversion is no longer needed.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
infrastructure, networking
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.