summaryrefslogtreecommitdiff
path: root/smoketest
AgeCommit message (Collapse)Author
2021-03-31smoketest: bfd: only evaluate individual profile sectionChristian Poessinger
When validating FRR profiles, only load the configuration for each individual profile instead of all profiles. This is done by a new argument to getFRRconfig() named endsection='^!' which tells what is the delimiter when a config section of FRR ends, this is usually "^!", but for BFD profiles this is "^ !", as this is a new level under the FRR CLI.
2021-03-30smoketest: qat: change comment for unittest frameworkChristian Poessinger
2021-03-29bgp: T1711: remove ASN tagNode and move to "local-as"Christian Poessinger
Every time when set configuration bgp, you need set AS number. There is very less benefit in this system so the AS number is moved from a tagNode level down to a leafNode with the name "local-as", same as on the neighbor or peer-group level. This changes the CLI configuration from: set protocols bgp 100 neighbor 10.10.1.2 remote-as 200 to set protocols bgp local-as 100 set protocols bgp neighbor 10.10.1.2 remote-as 200
2021-03-26smoketest: ensure symlink exists /usr/sbin/ip -> /bin/ipChristian Poessinger
2021-03-24smoketest: isis: drop trailing whitespace on "router isis" statementChristian Poessinger
After upgrading FRR to a newer revision in stable/7.5 branch we can drop the workaround where an additional whitespace was required after the "router isis FOOO " statement. Related to https://github.com/FRRouting/frr/pull/8306
2021-03-21isis: T3417: drop artificial "domain" node identifying the IS-IS process nameChristian Poessinger
As we and FRR do not support multiple FRR process instances, there is no need to make this configurable for a user. We rather rely on a solid default "VyOS".
2021-03-21ospf: vrf: T2271: ease FRR interaction for config reloadChristian Poessinger
Instead of multiple if/else paths, use a common vrf string variable which is either populated or not. In addtion when interfaces are configured for a given VRF, harden the regex for config reload.
2021-03-21isis: T3417: add VRF supportChristian Poessinger
VRF support can be tested using: set vrf name red table 1000 set vrf name red protocols isis domain FOOO set vrf name red protocols isis net 49.0001.1921.6800.1002.00 set vrf name red protocols isis interface eth1
2021-03-21smoketest: add initial IS-IS testcaseChristian Poessinger
2021-03-21smoketest: config: add IS-IS example configurationChristian Poessinger
2021-03-20smoketest: config: evpn: move NTP into MGMT vrfChristian Poessinger
Within this example a MGMT VRF is used to administer the system, thus also move the NTP portion into that VRF.
2021-03-19bridge: T3415: add port isolation / private-vlan optionChristian Poessinger
Private VLAN, also known as port isolation, is a technique in computer networking where a VLAN contains switch ports that are restricted such that they can only communicate with a given "uplink". The restricted ports are called "private ports". Each private VLAN typically contains many private ports, and a single uplink. The uplink will typically be a port (or link aggregation group) connected to a router, firewall, server, provider network, or similar central resource. Q: https://en.wikipedia.org/wiki/Private_VLAN
2021-03-17smoketest: static: add required vrf to setUp()Christian Poessinger
When we leak routes to a VRF it is verified that the target VRF actually exists.
2021-03-17smoketest: remove failfast=True as debug leftoverChristian Poessinger
2021-03-17smoketest: add shim for every test to re-use common tastsChristian Poessinger
Currently every smoketest does the setup and destruction of the configsession on its own durin setUp(). This creates a lot of overhead and one configsession should be re-used during execution of every smoketest script. In addiion a test that failed will leaf the system in an unconsistent state. For this reason before the test is executed we will save the running config to /tmp and the will re-load the config after the test has passed, always ensuring a clean environment for the next test.
2021-03-15smoketest: config: add BGP EVPN spine/leaf configurationsChristian Poessinger
2021-03-14vyos.util: rename get_json_iface_options() -> get_interface_config()Christian Poessinger
2021-03-14vrf: T3344: move dynamic routing protocols under "vrf name <name> protocols"Christian Poessinger
Instead of having the dynamic routing protocols OSPF and BGP residing under the "protocols vrf <name> [ospf|bgp]" nodes, rather move them directly under the "vrf name <name> protocols [ospf|bgp]" node. Now all VRF related parts are placed under the same root node. This eases the verify steps tremendously, as we do not need to check wheter a VRF eists or not, it will always exist as we operate under a child node.
2021-03-14vrf: ospf: T2271: create individual OSPF process for specified VRF nameChristian Poessinger
VyOS CLI config: vrf red { ospf { default-information { originate { always } } default-metric 30 passive-interface default } } Will create the FRR configuration snippet: ! router ospf vrf red auto-cost reference-bandwidth 100 timers throttle spf 200 1000 10000 passive-interface default default-metric 30 default-information originate always !
2021-03-09Merge pull request #762 from jack9603301/T2518Christian Poessinger
nptv6: T2518: Support IPv6 address translation
2021-03-09nptv6: T2518: Support masquerade and cancel new migratorsjack9603301
2021-03-08bgp: T3391: migrate old IPv4 only maximum-paths config to new syntaxChristian Poessinger
2021-03-09nptv6: T2518: Support IPv6 address translationjack9603301
2021-03-07bgp: T3391: add per AFI maximum-paths supportChristian Poessinger
* set protocols bgp ASN address-family ipv4-unicast maximum-paths * set protocols bgp ASN address-family ipv4-unicast maximum-paths-ibgp * set protocols bgp ASN address-family ipv6-unicast maximum-paths * set protocols bgp ASN address-family ipv6-unicast maximum-paths-ibgp
2021-03-06smoketest: ospf: add debug codeChristian Poessinger
2021-03-06smoketest: pppoe-server: adjust client_ip_pool testcase to latest code fixesChristian Poessinger
Commit 52ee92b8 ("pppoe: T3386: Fix client ip-pool stop range") fixed the generated client range configuration line for Accel-PPP but missed out altering the testcase, too which validates the generated configuration line.
2021-03-05smoketest: config: add azure VPN gateway exampleChristian Poessinger
2021-03-03tunnel: T2966: add ip6gretap encapsulation supportChristian Poessinger
2021-03-03smoketest: geneve: remove debug statementChristian Poessinger
2021-03-03Merge branch 'T3379' of https://github.com/sever-sever/vyos-1x into currentChristian Poessinger
* 'T3379' of https://github.com/sever-sever/vyos-1x: dhcpv6-server: T3379: Add option global-parameters name-server
2021-03-03geneve: T1799: add additional per tunnel optionsChristian Poessinger
Support setting additional options to the GENEVE tunnel like: - ttl - tos - do not fragment bit - ipv6 flowlabel
2021-03-03smoketest: vxlan: extend testcase to verify additional tunnel parametersChristian Poessinger
Verify proper configuration of VXLAN parameters for - source-interface - source-address - remote - vni - group Before it was only verified if the VXLAN tunnel interface was configured at all but not if the parameters are correct, too.
2021-03-02dhcpv6-server: T3379: Add option global-parameters name-serversever-sever
2021-03-01smoketest: vif: T3349: derive test_vif_8021q_lower_up_down for bridgeChristian Poessinger
Commit 49bc3f1e ("vif: T3349: use fixed ordering when enabling parent and child interface") also shipped a smoketest to verify the functionality of the parent admin up/down problematic from T3349. The generic testcase failed for the VLAN aware bridge as vlan-awarenes was not turned on.
2021-02-28vif: T3349: use fixed ordering when enabling parent and child interfaceChristian Poessinger
When a VIF/VLAN interface is placed in admin down state but the lower interface, serving the vlan, is moved from admin down -> admin up, all its vlan interfaces will be placed in admin up state, too. This is bad as a VLAN interface will become admin up even if its specified as admin down after a reboot. To reproduce: set interfaces ethernet eth1 vif 20 disable set interfaces ethernet eth1 disable commit delete interfaces ethernet eth1 disable commit Now check the interface state and it returns UP,LOWER_UP 7: eth1.20@eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000 link/ether 00:50:56:b3:09:07 brd ff:ff:ff:ff:ff:ff inet6 fe80::250:56ff:feb3:907/64 scope link valid_lft forever preferred_lft forever
2021-02-28vyos.util: provide single implementation for get_json_iface_options()Christian Poessinger
There had been four implementations of "ip -d -j link show interface" scattered accross the codebase. Those implementations have now been combined into a new helper: vyos.util.get_json_iface_options()
2021-02-28vxlan: T1513: add dont-fragment CLI optionChristian Poessinger
2021-02-28l2tpv3: T3366: migrate local-ip and remote-ip CLI optionsChristian Poessinger
Rename CLI options local-ip to source-address and remote-ip to remote to get a consistent CLI experience for the user.
2021-02-28validators: fqdn: T3370: support "private" or "local" domain namesChristian Poessinger
2021-02-28vxlan: T3369: add underlay IPv6 supportChristian Poessinger
2021-02-28macsec: T3368: add support for gcm-aes-256 cipherChristian Poessinger
2021-02-28tunnel: T3366: rename remote-ip to remoteChristian Poessinger
Streamline the CLI configuration where we try to use remote on other interfaces like vxlan, geneve.
2021-02-28tunnel: T3366: rename local-ip to source-addressChristian Poessinger
Streamline the CLI configuration where we try to use source-address when creating connections which are especially sourced from a discrete address.
2021-02-28tunnel: T3364: rename encapsulation mode "gre-bridge" to "gretap"Christian Poessinger
The following list shows the mapping of VyOS tunnel encapsulation modes to the corresponding Linux modes. VyOS Linux gre gre gre-bridge gretap ipip ipip ipip6 ipip6 ip6ip6 ip6ip6 ip6gre ip6gre sit sit Besides gre-bridge this is pretty consistent. As bridge interfaces are also called tap interfaces gre-bridge will be renamed to gretap to make the post-processing much easier. This means (in detail) that there are no more child classes of _Tunnel and there will be now one geneirc TunnelIf class handling all sorts of encapsulation.
2021-02-27smoketest: bgp: T2100: fix "simple" testcase for ebgp-requires-policyChristian Poessinger
Commit 4bf55f97 ("BGP: T2100: Adding RFC8212 option toggle.") added a CLI option to enable RFC8212 ebgp-requires-policy checks. The extended smoketests assumed that this will lead to an FRR configuration line of "bgp ebgp-requires-policy" - which is not the case as this is a default option and FRR hides default options from the config. In order to properly verify this functionality we must conduct the negative test and ensure the option is not present in the CLI at all.
2021-02-26Merge pull request #744 from Cheeze-It/currentChristian Poessinger
bgp: T2100: Changing RFC8212 behavior and option toggle
2021-02-26BGP: T2100: Adding RFC8212 option toggle.Cheeze_It
In this commit we add the default operation within BGP to have RFC8212 disabled for eBGP routes. This default should preserve the normal behavior for VyOS from earlier releases of FRR to the current latest release. Another option that we add is the ability to toggle whether or not RFC8212 is enabled or disabled.
2021-02-25smoketest: configs: extend bgp-small-internet-exchange with more policiesChristian Poessinger
2021-02-25smoketest: extend "policy" smoke testsChristian Poessinger
Only missing is the route-map smoketest which tens to become very "heavy"
2021-02-24smoketest: add basic "policy access-list" test caseChristian Poessinger