4848        ipv4 : ["false", "true"] 
4949        ipv6 : ["false", "true"] 
5050        ipv6-primary : ["false", "true"] 
51+         backend : ["iptables", "nftables"] 
5152        exclude :
5253        - ipv4 : " false" 
5354          ipv6 : " false" 
5758        - ipv4 : " true" 
5859          ipv6 : " false" 
5960          ipv6-primary : " true" 
61+         - with-ipam : " true" 
62+           backend : " nftables" 
6063    runs-on : ubuntu-24.04 
6164    steps :
6265    - uses : actions/checkout@v4 
@@ -85,13 +88,22 @@ jobs:
8588      if : matrix.with-ipam == 'true' 
8689      working-directory : v2/e2e 
8790    - run : make install-coil-egress-v4 
88-       if : matrix.with-ipam == 'false' && matrix.ipv4 == 'true' && matrix.ipv6 == 'false' 
91+       if : matrix.with-ipam == 'false' && matrix.ipv4 == 'true' && matrix.ipv6 == 'false' && matrix.backend == 'iptables' 
92+       working-directory : v2/e2e 
93+     - run : make install-coil-egress-v4-nft 
94+       if : matrix.with-ipam == 'false' && matrix.ipv4 == 'true' && matrix.ipv6 == 'false' && matrix.backend == 'nftables' 
8995      working-directory : v2/e2e 
9096    - run : make install-coil-egress-v6 
91-       if : matrix.with-ipam == 'false' && matrix.ipv4 == 'false' && matrix.ipv6 == 'true' 
97+       if : matrix.with-ipam == 'false' && matrix.ipv4 == 'false' && matrix.ipv6 == 'true' && matrix.backend == 'iptables' 
98+       working-directory : v2/e2e 
99+     - run : make install-coil-egress-v6-nft 
100+       if : matrix.with-ipam == 'false' && matrix.ipv4 == 'false' && matrix.ipv6 == 'true' && matrix.backend == 'nftables' 
92101      working-directory : v2/e2e 
93102    - run : make install-coil-egress-dualstack 
94-       if : matrix.with-ipam == 'false' && matrix.ipv4 == 'true' && matrix.ipv6 == 'true' 
103+       if : matrix.with-ipam == 'false' && matrix.ipv4 == 'true' && matrix.ipv6 == 'true' && matrix.backend == 'iptables' 
104+       working-directory : v2/e2e 
105+     - run : make install-coil-egress-dualstack-nft 
106+       if : matrix.with-ipam == 'false' && matrix.ipv4 == 'true' && matrix.ipv6 == 'true' && matrix.backend == 'nftables' 
95107      working-directory : v2/e2e 
96108    - run : make test TEST_IPAM=${{ matrix.with-ipam }} TEST_EGRESS=true TEST_IPV4=${{ matrix.ipv4 }} TEST_IPV6=${{ matrix.ipv6 }} 
97109      working-directory : v2/e2e 
@@ -101,7 +113,7 @@ jobs:
101113    - uses : actions/upload-artifact@v4 
102114      if : always() 
103115      with :
104-         name : logs-ipv4-${{ matrix.ipv4 }}-ipv6-${{ matrix.ipv6 }}-with-ipam-${{ matrix.with-ipam }}-ipv6-primary-${{ matrix.ipv6-primary }}-${{ matrix.kindest-node }}.tar.gz 
116+         name : logs-ipv4-${{ matrix.ipv4 }}-ipv6-${{ matrix.ipv6 }}-with-ipam-${{ matrix.with-ipam }}-ipv6-primary-${{ matrix.ipv6-primary }}-backend-${{ matrix.backend }}- ${{ matrix.kindest-node }}.tar.gz 
105117        path : v2/e2e/logs.tar.gz 
106118  certs-generation :
107119    name : Cert generation test 
0 commit comments