Add routers on top.sls to be able to do a command like sudo salt 'router-002' state.apply roles/router
- Queries
- All Stories
- Search
- Advanced Search
- Transactions
- Transaction Logs
Advanced Search
Mar 8 2026
vmx0 is not always releated to the network intranought, so I add entry["interface_name"] = interface_name
in output of get_carp_entries(), so then in carp.rc the prefixe is based on that.
Mar 5 2026
Fix : we need to use context to call the function get_carp_entries on carp.sls
in place of calling this function on the template carp.rc
Mar 4 2026
Changed the source path in carp.sls into : source: salt://roles/router/carp/files/carp.rc
The flag hello_ipv6_ovh was missing in web-001, because in netbox the ipv6 was in /56 not in /64.
Mar 3 2026
Add some changes : some flags where missing
Add canonical_public_ipv4 for Ysul
Change the files motd for db-a-001 and db-b-001
rename db-B-001 to db-b-001 across the repository
This change touches Wolfplex files. As such, administrative approval is needed from Wolfplex technical contact.
Rename network interfaces on selected machines to standardize the naming convention across all hosts, using intranought and public.
Mar 2 2026
Updated some functions to preserve a consistent and deterministic
display order by using OrderedDict.
Adjusted the ordering of entries (and the content) in nodes.sls to maintain consistency with the generated pillar structure and ensure deterministic output.
I tried pip install salt==3006.8, but it brings the same strange issue : AttributeError: cannot access submodule 'cmdmod' of module 'salt.modules' (most likely due to a circular import)
(same in WindRiver)
Using a separate file like /etc/rc.conf.d/netif/carp keeps the CARP configuration isolated,
avoids modifying the main /etc/rc.conf, and makes the setup cleaner and safer.
It improves maintainability, reduces the risk of conflicts, and ensures a more modular infrastructure design.
Feb 26 2026
I added a test to determine if the function get_carp_entries() will avoid an FHRP group
if it's not the CARP protocol. Also, it is more readable if we place the CARP configuration directly in the forest.yaml.
Feb 25 2026
We need to use OrderedDict from the collections module because the pillar generation script must preserve the order of the information. This ensures that the generated pillar file remains consistent and human-readable. Maintaining a stable order also makes it easier to review changes, compare versions, and debug configurations.
Feb 24 2026
Feb 23 2026
Hostnames should always be written in lowercase and the node name must match the hostname.
Add the flag ipv6_dhcp_duid for windriver
Fix : when an IPv6 address belongs to the Scaleway tenant, add the
ipv6_dhcp_duid flag in the pillar
Remove an incorrect character from the code (star that shouldn't be there).
I removed the priority and name entries from the generated pillar, as they are not used by Salt in our current setup.
Keeping only the fields actually consumed by the states makes the pillar cleaner and avoids maintaining redundant data.
Use True and False (capitalized) to follow Salt's Python boolean conventions.
Increase the SOA serial so secondary name servers detect the changes and perform a zone transfer.
Ensure DNS records are placed in alphabetical order within the zone file.