apache / apache/cloudstack-extensions

Network Namespace extension should support untagged public networks

Đang mở
#8 0 bình luận 0 reaction 0 người được giao Xem trên GitHub
Ngôn ngữ chính
Không có dữ liệu ngôn ngữ
Star
4
Fork
4
Merge trung bình
1 giờ
Pull request đã merge (30 ngày)
3

Mô tả

## Summary

The current Network Namespace extension code does not support an untagged public network. It treats the public VLAN value as a numeric VLAN ID and attempts to create a VLAN sub-interface. In an environment where the public network is intentionally untagged, this causes the following Marvin tests to fail if the Public network is not tagged (a valid scenario):

- `test_05_isolated_network_full_lifecycle`
- `test_06_vpc_multi_tier_and_restart`
- `test_07_vpc_network_acl`
- `test_09_vpc_source_nat_ip_update`

The later Static NAT and port-forwarding errors appear to be consequences of the initial public-network setup failure, rather than four unrelated test failures.

## Environment

- CloudStack Marvin smoke tests
- Network Namespace extension
- Public network is untagged and uses the existing bridge/uplink path
- No tagged public VLAN is available on this test network

## Observed behavior

The extension attempts to create a VLAN interface using the literal value `untagged`, resulting in an error similar to:

`Error: argument "untagged" is wrong: id is invalid`

The Network Namespace extension script then exits with code 2, and the dependent network operations fail.

## Expected behavior

When the configured public network is untagged, the extension should:

1. Skip creation of an `ethX.` VLAN sub-interface.
2. Use the existing bridge or physical uplink directly.
3. Continue with the required address, route, ARP, and NAT setup.
4. Preserve the current behavior for numeric VLAN configurations.

A public network does not inherently require VLAN tagging; both tagged and untagged deployments are valid. Supporting the explicit `untagged` mode would allow the same tests to run on simple bridge/NAT-based lab networks without requiring an artificial VLAN configuration.

## Validation

Please consider adding coverage for both:

- Numeric VLAN configuration, preserving current tagged behavior.
- Explicit untagged configuration, without creating a VLAN sub-interface.

It would also be helpful if the extension scripts used by a test run could be pinned to a commit or release, rather than fetched from a moving branch at runtime, so that failures remain reproducible.

This issue concerns the Network Namespace extension only; it is not a change to the default CloudStack Virtual Router path.

Hướng dẫn đóng góp

Chưa lập chỉ mục được hướng dẫn đóng góp cho kho mã nguồn này

Hướng nghiên cứu

Bắt đầu với Network Namespace extension script và đường dẫn thiết lập mạng công cộng, sau đó chạy các bài kiểm thử Marvin được liệt kê: test_05_isolated_network_full_lifecycle, test_06_vpc_multi_tier_and_restart, test_07_vpc_network_acl và test_09_vpc_source_nat_ip_update. Xác minh rằng các cấu hình VLAN dạng số vẫn giữ nguyên hành vi hiện tại và rằng cấu hình untagged tường minh hoàn tất việc thiết lập địa chỉ, route, ARP và NAT mà không tạo sub-interface VLAN.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Lĩnh vực
networking
Loại issue
Lỗi
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Sôi nổi
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
55/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.