Skip to content

Commit 7d19991

Browse files
committed
kind-common, k8s-frr, bgp: Avoid hard coding container runtime binary
Set OCI_BIN according to env. Some inspect operation that use formatting did not work in podman due to formatting differences comparing to docker. The format string is changes to a form that fits both docker and podman. With the new format string, the index keyword is redundant hence removed. Signed-off-by: Or Mergi <[email protected]>
1 parent 6ec1a44 commit 7d19991

File tree

1 file changed

+19
-19
lines changed

1 file changed

+19
-19
lines changed

contrib/kind-common

Lines changed: 19 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -708,7 +708,7 @@ deploy_frr_external_container() {
708708
popd || exit 1
709709
if [ "$PLATFORM_IPV6_SUPPORT" == true ]; then
710710
# Enable IPv6 forwarding in FRR
711-
docker exec frr sysctl -w net.ipv6.conf.all.forwarding=1
711+
$OCI_BIN exec frr sysctl -w net.ipv6.conf.all.forwarding=1
712712
fi
713713
}
714714

@@ -735,40 +735,40 @@ deploy_bgp_external_server() {
735735
ip_family="ipv4"
736736
ipv6_network=""
737737
fi
738-
docker rm -f bgpserver
739-
docker network rm -f bgpnet
740-
docker network create --subnet="${BGP_SERVER_NET_SUBNET_IPV4}" ${ipv6_network} --driver bridge bgpnet
741-
docker network connect bgpnet frr
742-
docker run --cap-add NET_ADMIN --user 0 -d --network bgpnet --rm --name bgpserver -p 8080:8080 registry.k8s.io/e2e-test-images/agnhost:2.45 netexec
738+
$OCI_BIN rm -f bgpserver
739+
$OCI_BIN network rm -f bgpnet
740+
$OCI_BIN network create --subnet="${BGP_SERVER_NET_SUBNET_IPV4}" ${ipv6_network} --driver bridge bgpnet
741+
$OCI_BIN network connect bgpnet frr
742+
$OCI_BIN run --cap-add NET_ADMIN --user 0 -d --network bgpnet --rm --name bgpserver -p 8080:8080 registry.k8s.io/e2e-test-images/agnhost:2.45 netexec
743743
# let's make the bgp external server have its default route towards FRR router so that we don't need to add routes during tests back to the pods in the
744744
# cluster for return traffic
745745
local bgp_network_frr_v4 bgp_network_frr_v6
746-
bgp_network_frr_v4=$($OCI_BIN inspect -f '{{index .NetworkSettings.Networks "bgpnet" "IPAddress"}}' frr)
746+
bgp_network_frr_v4=$($OCI_BIN inspect -f '{{.NetworkSettings.Networks.bgpnet.IPAddress}}' frr)
747747
echo "FRR kind network IPv4: ${bgp_network_frr_v4}"
748748
$OCI_BIN exec bgpserver ip route replace default via "$bgp_network_frr_v4"
749749
if [ "$PLATFORM_IPV6_SUPPORT" == true ] ; then
750-
bgp_network_frr_v6=$($OCI_BIN inspect -f '{{index .NetworkSettings.Networks "bgpnet" "GlobalIPv6Address"}}' frr)
750+
bgp_network_frr_v6=$($OCI_BIN inspect -f '{{.NetworkSettings.Networks.bgpnet.GlobalIPv6Address}}' frr)
751751
echo "FRR kind network IPv6: ${bgp_network_frr_v6}"
752752
$OCI_BIN exec bgpserver ip -6 route replace default via "$bgp_network_frr_v6"
753753
fi
754754
# disable the default route to make sure the container only routes accross
755755
# directly connected or learnt networks (doing this at the very end since
756756
# docker changes the routing table when a new network is connected)
757-
docker exec frr ip route delete default
758-
docker exec frr ip route
759-
docker exec frr ip -6 route delete default
760-
docker exec frr ip -6 route
757+
$OCI_BIN exec frr ip route delete default
758+
$OCI_BIN exec frr ip route
759+
$OCI_BIN exec frr ip -6 route delete default
760+
$OCI_BIN exec frr ip -6 route
761761
}
762762

763763
destroy_bgp() {
764-
if docker ps --format '{{.Names}}' | grep -Eq '^bgpserver$'; then
765-
docker stop bgpserver
764+
if $OCI_BIN ps --format '{{.Names}}' | grep -Eq '^bgpserver$'; then
765+
$OCI_BIN stop bgpserver
766766
fi
767-
if docker ps --format '{{.Names}}' | grep -Eq '^frr$'; then
768-
docker stop frr
767+
if $OCI_BIN ps --format '{{.Names}}' | grep -Eq '^frr$'; then
768+
$OCI_BIN stop frr
769769
fi
770-
if docker network ls --format '{{.Name}}' | grep -q '^bgpnet$'; then
771-
docker network rm bgpnet
770+
if $OCI_BIN network ls --format '{{.Name}}' | grep -q '^bgpnet$'; then
771+
$OCI_BIN network rm bgpnet
772772
fi
773773
}
774774

@@ -807,7 +807,7 @@ install_ffr_k8s() {
807807
echo "Attempting to reach frr-k8s webhook"
808808
kind export kubeconfig --name ovn
809809
while true; do
810-
docker exec ovn-control-plane curl -ksS --connect-timeout 0.1 https://$(kubectl get svc -n frr-k8s-system frr-k8s-webhook-service -o jsonpath='{.spec.clusterIP}')
810+
$OCI_BIN exec ovn-control-plane curl -ksS --connect-timeout 0.1 https://$(kubectl get svc -n frr-k8s-system frr-k8s-webhook-service -o jsonpath='{.spec.clusterIP}')
811811
[ \$? -eq 0 ] && exit 0
812812
echo "Couldn't reach frr-k8s webhook, trying in 1s..."
813813
sleep 1s

0 commit comments

Comments
 (0)