mirror of
https://github.com/vyos/vyos-build.git
synced 2025-10-01 20:28:40 +02:00
Merge pull request #847 from dmbaturin/T6915-flavor-cleanup
build-flavors: T6915: clean up flavor definitions
This commit is contained in:
commit
2ef1e83db2
@ -1,76 +0,0 @@
|
|||||||
# VyOS build flavors
|
|
||||||
|
|
||||||
VyOS supports multiple different hardware and virtual platforms.
|
|
||||||
Those platforms often need custom packages and may require custom
|
|
||||||
configs. To make maintenance of existing flavors simpler
|
|
||||||
and to allow everyone to make and maintain their own flavors,
|
|
||||||
the build scripts support storing flavor configuration in [TOML](https://toml.io) files.
|
|
||||||
|
|
||||||
Flavor files must be in `data/build-flavors`. Here's an example:
|
|
||||||
|
|
||||||
```toml
|
|
||||||
# Generic (aka "universal") ISO image
|
|
||||||
|
|
||||||
image_format = "iso"
|
|
||||||
|
|
||||||
# Include these packages in the image regardless of the architecture
|
|
||||||
packages = [
|
|
||||||
# QEMU and Xen guest tools exist for multiple architectures
|
|
||||||
"qemu-guest-agent",
|
|
||||||
"vyos-xe-guest-utilities",
|
|
||||||
]
|
|
||||||
|
|
||||||
[architectures.amd64]
|
|
||||||
# Hyper-V and VMware guest tools are x86-only
|
|
||||||
packages = ["hyperv-daemons", "vyos-1x-vmware"]
|
|
||||||
```
|
|
||||||
|
|
||||||
## Image format
|
|
||||||
|
|
||||||
The `image_format` option specifies the default format to build.
|
|
||||||
|
|
||||||
```toml
|
|
||||||
image_format = "iso"
|
|
||||||
```
|
|
||||||
|
|
||||||
**Note:** currently, ISO is the only supported format,
|
|
||||||
support for different flavors is in progress.
|
|
||||||
|
|
||||||
## Including custom packages
|
|
||||||
|
|
||||||
If you want the build scripts to include custom packages from repositories
|
|
||||||
in the image, you can list them in the `packages` field.
|
|
||||||
|
|
||||||
For example, this is how to include the GNU Hello package:
|
|
||||||
|
|
||||||
```toml
|
|
||||||
packages = ['hello']
|
|
||||||
```
|
|
||||||
|
|
||||||
It's possible to include packages only in images with certain build architectures
|
|
||||||
by placing them in a subtable.
|
|
||||||
|
|
||||||
If you want to include GNU Hello only in AMD64 images, do this:
|
|
||||||
|
|
||||||
```toml
|
|
||||||
[architectures.amd64]
|
|
||||||
packages = ['hello']
|
|
||||||
```
|
|
||||||
|
|
||||||
## Including custom files
|
|
||||||
|
|
||||||
You can include files inside the SquashFS filesystem by adding entries
|
|
||||||
to the `includes_chroot` array.
|
|
||||||
|
|
||||||
```toml
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/question.txt"
|
|
||||||
data = '''
|
|
||||||
Can you guess how this file ended up in the image?
|
|
||||||
'''
|
|
||||||
|
|
||||||
path = "etc/answer.txt"
|
|
||||||
data = '''
|
|
||||||
It was in the flavor file!
|
|
||||||
'''
|
|
||||||
```
|
|
||||||
@ -1,3 +0,0 @@
|
|||||||
image_format = "iso"
|
|
||||||
|
|
||||||
packages = ["amazon-cloudwatch-agent"]
|
|
||||||
@ -1,5 +0,0 @@
|
|||||||
image_format = "iso"
|
|
||||||
|
|
||||||
packages = ["waagent"]
|
|
||||||
|
|
||||||
|
|
||||||
@ -1,116 +0,0 @@
|
|||||||
# ISO image for Dell VEP4600 devices
|
|
||||||
|
|
||||||
image_format = "iso"
|
|
||||||
|
|
||||||
# Replace built-in NIC naming rules with empty files
|
|
||||||
# to prevent them from taking any effect
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "lib/systemd/network/99-default.link"
|
|
||||||
data = ''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "lib/udev/rules.d/65-vyatta-net.rules"
|
|
||||||
data = ''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "lib/udev/rules.d/75-persistent-net-generator.rules"
|
|
||||||
data = ''
|
|
||||||
|
|
||||||
# Install platform-specific link files
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth0-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:05:00.1
|
|
||||||
Driver=ixgbe
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth0
|
|
||||||
Alias=SFP+1
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth1-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:05:00.0
|
|
||||||
Driver=ixgbe
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth1
|
|
||||||
Alias=SFP+2
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth2-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:02:00.2
|
|
||||||
Driver=igb
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth2
|
|
||||||
Alias=GE1
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth3-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:02:00.3
|
|
||||||
Driver=igb
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth3
|
|
||||||
Alias=GE2
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth4-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:02:00.0
|
|
||||||
Driver=igb
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth4
|
|
||||||
Alias=GE3
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth5-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:02:00.1
|
|
||||||
Driver=igb
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth5
|
|
||||||
Alias=GE4
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth6-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:07:00.1
|
|
||||||
Driver=ixgbe
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth6
|
|
||||||
Alias=GE5
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth7-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:07:00.0
|
|
||||||
Driver=ixgbe
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth7
|
|
||||||
Alias=GE6
|
|
||||||
'''
|
|
||||||
@ -1,267 +0,0 @@
|
|||||||
# ISO image for Dell VEP4600 devices
|
|
||||||
|
|
||||||
image_format = "iso"
|
|
||||||
|
|
||||||
# Replace built-in NIC naming rules with empty files
|
|
||||||
# to prevent them from taking any effect
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "lib/systemd/network/99-default.link"
|
|
||||||
data = ''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "lib/udev/rules.d/65-vyatta-net.rules"
|
|
||||||
data = ''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "lib/udev/rules.d/75-persistent-net-generator.rules"
|
|
||||||
data = ''
|
|
||||||
|
|
||||||
# Install platform-specific link files
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth0-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:04:00.0
|
|
||||||
Driver=igb
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth0
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth0-001.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:05:00.0
|
|
||||||
Driver=igb
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth0
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth10-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:65:00.3
|
|
||||||
Driver=i40e
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth10
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth1-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:b8:00.0
|
|
||||||
Driver=i40e
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth1
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth1-001.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:b6:00.0
|
|
||||||
Driver=i40e
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth1
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth11-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:17:00.0
|
|
||||||
Driver=i40e
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth11
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth12-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:17:00.1
|
|
||||||
Driver=i40e
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth12
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth13-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:17:00.2
|
|
||||||
Driver=i40e
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth13
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth14-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:17:00.3
|
|
||||||
Driver=i40e
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth14
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth2-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:b8:00.1
|
|
||||||
Driver=i40e
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth2
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth2-001.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:b6:00.1
|
|
||||||
Driver=i40e
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth2
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth3-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:02:00.1
|
|
||||||
Driver=igb
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth3
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth4-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:02:00.0
|
|
||||||
Driver=igb
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth4
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth5-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:02:00.3
|
|
||||||
Driver=igb
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth5
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth6-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:02:00.2
|
|
||||||
Driver=igb
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth6
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth7-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:65:00.0
|
|
||||||
Driver=i40e
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth7
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth8-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:65:00.1
|
|
||||||
Driver=i40e
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth8
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-eth9-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:65:00.2
|
|
||||||
Driver=i40e
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=eth9
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-unused0-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:b8:00.2
|
|
||||||
Driver=i40e
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=unused0
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-unused0-001.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:b6:00.2
|
|
||||||
Driver=i40e
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=unused0
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-unused1-000.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:b8:00.3
|
|
||||||
Driver=i40e
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=unused1
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/10-unused1-001.link"
|
|
||||||
data = '''
|
|
||||||
[Match]
|
|
||||||
Path=pci-0000:b6:00.3
|
|
||||||
Driver=i40e
|
|
||||||
|
|
||||||
[Link]
|
|
||||||
Name=unused1
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "etc/systemd/network/99-default.link"
|
|
||||||
data = '''
|
|
||||||
'''
|
|
||||||
@ -1,46 +0,0 @@
|
|||||||
# ISO image for EdgeCore routers
|
|
||||||
|
|
||||||
image_format = "iso"
|
|
||||||
|
|
||||||
# udev rules for correct ordering of onboard NICs
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "lib/udev/rules.d/64-vyos-SAF51015I-net.rules"
|
|
||||||
data = '''
|
|
||||||
ATTR{[dmi/id]board_name}!="SAF51015I-0318-EC", GOTO="end_ec_nic"
|
|
||||||
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:02:00.0", ENV{VYOS_IFNAME}="eth1"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:03:00.0", ENV{VYOS_IFNAME}="eth2"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:04:00.0", ENV{VYOS_IFNAME}="eth3"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:05:00.0", ENV{VYOS_IFNAME}="eth4"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:06:00.0", ENV{VYOS_IFNAME}="eth5"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:06:00.1", ENV{VYOS_IFNAME}="eth6"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:06:00.2", ENV{VYOS_IFNAME}="eth7"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:06:00.3", ENV{VYOS_IFNAME}="eth8"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:0a:00.0", ENV{VYOS_IFNAME}="eth9"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:0a:00.1", ENV{VYOS_IFNAME}="eth10"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:0b:00.0", ENV{VYOS_IFNAME}="eth11"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:0b:00.1", ENV{VYOS_IFNAME}="eth12"
|
|
||||||
|
|
||||||
LABEL="end_ec_nic"
|
|
||||||
|
|
||||||
'''
|
|
||||||
|
|
||||||
[[includes_chroot]]
|
|
||||||
path = "lib/udev/rules.d/64-vyos-SAF51003I-net.rules"
|
|
||||||
data = '''
|
|
||||||
ATTR{[dmi/id]board_name}!="SAF51003I", GOTO="end_ec_nic"
|
|
||||||
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:02:00.0", ENV{VYOS_IFNAME}="eth1", ATTR{ifalias}="LAN1"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:02:00.1", ENV{VYOS_IFNAME}="eth2", ATTR{ifalias}="LAN2"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:02:00.2", ENV{VYOS_IFNAME}="eth3", ATTR{ifalias}="LAN3"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:02:00.3", ENV{VYOS_IFNAME}="eth4", ATTR{ifalias}="LAN4"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:05:00.0", ENV{VYOS_IFNAME}="eth5", ATTR{ifalias}="LAN5"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:05:00.1", ENV{VYOS_IFNAME}="eth6", ATTR{ifalias}="LAN6"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:05:00.2", ENV{VYOS_IFNAME}="eth7", ATTR{ifalias}="LAN7"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:05:00.3", ENV{VYOS_IFNAME}="eth8", ATTR{ifalias}="LAN8"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:08:00.0", ENV{VYOS_IFNAME}="eth9", ATTR{ifalias}="DMZ"
|
|
||||||
ACTION=="add", SUBSYSTEM=="net", KERNELS=="0000:08:00.1", ENV{VYOS_IFNAME}="eth10", ATTR{ifalias}="WAN"
|
|
||||||
|
|
||||||
LABEL="end_ec_nic"
|
|
||||||
|
|
||||||
'''
|
|
||||||
Loading…
x
Reference in New Issue
Block a user