X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=planetlab%2Fexp-tool%2FMakefile;h=942160bda68343cfcab888ea09cc07c6e01752c2;hb=a6ca7c672f6d5aaf24111d3414ea132ec36b40d6;hp=e13374f665131df381e933a3643cf1594ea832d2;hpb=305b76debf72120672a8ba81d3356b6dccb1da9a;p=sliver-openvswitch.git diff --git a/planetlab/exp-tool/Makefile b/planetlab/exp-tool/Makefile index e13374f66..942160bda 100644 --- a/planetlab/exp-tool/Makefile +++ b/planetlab/exp-tool/Makefile @@ -160,7 +160,7 @@ showdpid-%: FORCE @echo $*_DPID=0x$$( $(SSH) $(HOST_$*) $(SUDO) ovs-vsctl get bridge $(BRIDGE) datapath_id | sed -e 's,",,g') showmac-%: FORCE - @echo $*_MAC=\"$$( $(SSH) $(HOST_$*) $(SUDO) sliver-ovs show-mac)\" + @echo $*_MAC=\"$$( $(SSH) $(HOST_$*) $(SUDO) sliver-ovs get-mac $(BRIDGE))\" showports-%: FORCE @$(SSH) $(HOST_$*) $(SUDO) ovs-ofctl show $(BRIDGE) \ @@ -510,3 +510,42 @@ help: +%: varname=$(subst +,,$@) +%: @echo "$($(varname))" + +# external nodes and links +# +ALL_LINKS := $(LINKS) $(patsubst L/%,%,$(filter L/%,$(MAKECMDGOALS))) +EXTERNAL_LINKS := $(filter $(foreach host,$(EXTERNAL_HOSTS),%-$(host)),$(ALL_LINKS)) + +$(foreach host,$(EXTERNAL_HOSTS),sshcheck-$(host)): ; +$(foreach host,$(EXTERNAL_HOSTS),ovsversion-$(host)): ; +$(foreach host,$(EXTERNAL_HOSTS),showdpid-$(host)): ; +$(foreach host,$(EXTERNAL_HOSTS),showmac-$(host)): ; +$(foreach host,$(EXTERNAL_HOSTS),showports-$(host)): ; +$(foreach host,$(EXTERNAL_HOSTS),update-$(host)): ; +$(foreach host,$(EXTERNAL_HOSTS),del-controller-$(host)): ; +$(foreach host,$(EXTERNAL_HOSTS),cache/status.$(host)): ; +$(foreach host,$(EXTERNAL_HOSTS),cache/db.$(host)): ; +$(foreach host,$(EXTERNAL_HOSTS),cache/bridge.$(host)): ; +$(foreach host,$(EXTERNAL_HOSTS),cache/switch.$(host)): ; +$(foreach host,$(EXTERNAL_HOSTS),cache/controller.$(host)): ; +$(foreach link,$(EXTERNAL_LINKS),cache/iface.$(link)@2): ; +$(foreach link,$(EXTERNAL_LINKS),cache/port.$(link)@2): ; +$(foreach link,$(EXTERNAL_LINKS),del-iface.$(link)@2): ; + +$(foreach host,$(EXTERNAL_HOSTS),cache/rsnap.ip.$(host)): ; + @touch $@ + +$(foreach host,$(EXTERNAL_HOSTS),cache/rsnap.links.$(host)): ; + @touch $@ + +# we assume that a program called tunproxy is available on the +# external nodes. + +.SECONDEXPANSION: +$(foreach link,$(EXTERNAL_LINKS),cache/endpoint.$(link)@2): cache/endpoint.%@2: cache/port.%@1 cache/host.$$(call leftnode,%) + @#echo $* [$<] [$^] $(call rightnode,$*) + @echo $(call default,EXTERNAL_PORT,$(call rightnode,$*)) > $@ + @echo "===>" $(call rightnode,$*): \ + ./tunproxy -t $$(cat cache/host.$(call leftnode,$*)):$$(cat cache/port.$*@1) \ + -p $(call default,EXTERNAL_PORT,$(call rightnode,$*)) -e -d +