MEDIUM: server: remove experimental-mode for dynamic servers

Dynamic servers feature is now judged to be stable enough. Remove the
experimental-mode requirement for "add/del server" commands. This should
facilitate dynamic servers adoption.
diff --git a/reg-tests/server/cli_add_check_server.vtc b/reg-tests/server/cli_add_check_server.vtc
index 9f48c0d..c63710c 100644
--- a/reg-tests/server/cli_add_check_server.vtc
+++ b/reg-tests/server/cli_add_check_server.vtc
@@ -79,7 +79,7 @@
 
 # check on a functional server
 haproxy h1 -cli {
-	send "experimental-mode on; add server be1/s1 ${s1_addr}:${s1_port} check inter 200ms rise 1 fall 1"
+	send "add server be1/s1 ${s1_addr}:${s1_port} check inter 200ms rise 1 fall 1"
 	expect ~ "New server registered."
 
 	send "enable server be1/s1"
@@ -92,7 +92,7 @@
 	send "disable server be1/s1"
 	expect ~ ".*"
 
-	send "experimental-mode on; del server be1/s1"
+	send "del server be1/s1"
 	expect ~ "Server deleted."
 }
 
@@ -100,7 +100,7 @@
 
 # check on a disabled server
 haproxy h1 -cli {
-	send "experimental-mode on; add server be1/s2 ${s2_addr}:${s2_port} check inter 200ms rise 1 fall 1"
+	send "add server be1/s2 ${s2_addr}:${s2_port} check inter 200ms rise 1 fall 1"
 	expect ~ "New server registered."
 
 	send "enable server be1/s2"
@@ -113,13 +113,13 @@
 	send "disable server be1/s2"
 	expect ~ ".*"
 
-	send "experimental-mode on; del server be1/s2"
+	send "del server be1/s2"
 	expect ~ "Server deleted."
 }
 
 # agent check
 haproxy h1 -cli {
-	send "experimental-mode on; add server be1/s3 ${s1_addr}:${s1_port} agent-check agent-addr ${s3_addr} agent-port ${s3_port} agent-send 'hello' agent-inter 200ms rise 1 fall 1"
+	send "add server be1/s3 ${s1_addr}:${s1_port} agent-check agent-addr ${s3_addr} agent-port ${s3_port} agent-send 'hello' agent-inter 200ms rise 1 fall 1"
 	expect ~ "New server registered."
 
 	send "enable agent be1/s3"
@@ -130,7 +130,7 @@
 	send "disable agent be1/s3; disable server be1/s3"
 	expect ~ ".*"
 
-	send "experimental-mode on; del server be1/s3"
+	send "del server be1/s3"
 	expect ~ "Server deleted."
 }
 
diff --git a/reg-tests/server/cli_add_server.vtc b/reg-tests/server/cli_add_server.vtc
index fefdb0c..8c29305 100644
--- a/reg-tests/server/cli_add_server.vtc
+++ b/reg-tests/server/cli_add_server.vtc
@@ -38,37 +38,33 @@
 } -run
 
 haproxy h1 -cli {
-	# experimental mode disabled
-	send "add server foo/s1 ${s1_addr}:${s1_port}"
-	expect ~ "This command is restricted to experimental mode only."
-
 	# non existent backend
-	send "experimental-mode on; add server foo/s1 ${s1_addr}:${s1_port}"
+	send "add server foo/s1 ${s1_addr}:${s1_port}"
 	expect ~ "No such backend."
 
 	# missing address
-	send "experimental-mode on; add server test/s1"
+	send "add server test/s1"
 	expect ~ "'server' expects <name> and <addr>\\[:<port>\\] as arguments."
 
 	# invalid load-balancing algo
-	send "experimental-mode on; add server other/s1 ${s1_addr}:${s1_port}"
+	send "add server other/s1 ${s1_addr}:${s1_port}"
 	expect ~ "Backend must use a dynamic load balancing to support dynamic servers."
 
 	# invalid mux proto
-	send "experimental-mode on; add server other2/s1 ${s1_addr}:${s1_port} proto h2"
+	send "add server other2/s1 ${s1_addr}:${s1_port} proto h2"
 	expect ~ "MUX protocol is not usable for server."
 
 	# valid command
-	send "experimental-mode on; add server test/s1 ${s1_addr}:${s1_port}"
+	send "add server test/s1 ${s1_addr}:${s1_port}"
 	expect ~ "New server registered."
 
 	# duplicate server
-	send "experimental-mode on; add server test/s1 ${s1_addr}:${s1_port}"
+	send "add server test/s1 ${s1_addr}:${s1_port}"
 	expect ~ "Already exists a server with the same name in backend."
 
 	# valid command
 	# specify the proto, it should be accepted for this backend
-	send "experimental-mode on; add server test/s2 ${s1_addr}:${s1_port} proto h2"
+	send "add server test/s2 ${s1_addr}:${s1_port} proto h2"
 	expect ~ "New server registered."
 }
 
diff --git a/reg-tests/server/cli_add_ssl_server.vtc b/reg-tests/server/cli_add_ssl_server.vtc
index 843958d..95caf3f 100644
--- a/reg-tests/server/cli_add_ssl_server.vtc
+++ b/reg-tests/server/cli_add_ssl_server.vtc
@@ -70,7 +70,7 @@
 
 haproxy h1 -cli {
 	# non existent backend
-	send "experimental-mode on; add server li-ssl/s1 ${h1_feSslTerm_addr}:${h1_feSslTerm_port} ssl ca-file common.pem verify none"
+	send "add server li-ssl/s1 ${h1_feSslTerm_addr}:${h1_feSslTerm_port} ssl ca-file common.pem verify none"
 	expect ~ "New server registered."
 
 	send "enable server li-ssl/s1"
diff --git a/reg-tests/server/cli_add_track_server.vtc b/reg-tests/server/cli_add_track_server.vtc
index 6e90c62..318f236 100644
--- a/reg-tests/server/cli_add_track_server.vtc
+++ b/reg-tests/server/cli_add_track_server.vtc
@@ -117,15 +117,15 @@
 ###
 haproxy h1 -cli {
 	# invalid command: track on a non-checked server
-	send "experimental-mode on; add server be_check/s1 ${s1_addr}:${s1_port} track be_check/srv_no_check"
+	send "add server be_check/s1 ${s1_addr}:${s1_port} track be_check/srv_no_check"
 	expect ~ "unable to use be_check/srv_no_check for tracking as it does not have any check nor agent enabled."
 
 	# valid track usage
-	send "experimental-mode on; add server be_check/s1 ${s1_addr}:${s1_port} track be_check/srv_check"
+	send "add server be_check/s1 ${s1_addr}:${s1_port} track be_check/srv_check"
 	expect ~ "New server registered."
 
 	# invalid command: track on a dynamic server
-	send "experimental-mode on; add server be_check/s3 ${s1_addr}:${s1_port} track be_check/s1"
+	send "add server be_check/s3 ${s1_addr}:${s1_port} track be_check/s1"
 	expect ~ "unable to use be_check/s1 for tracking as it is a dynamic server."
 }
 
@@ -137,17 +137,17 @@
 # Delete the first dynamic server, enable be1/srv, S1 should report s1 and s3 UP
 ####
 haproxy h1 -cli {
-	send "experimental-mode on; add server be1/s1 ${s1_addr}:${s1_port} track be1/srv"
+	send "add server be1/s1 ${s1_addr}:${s1_port} track be1/srv"
 	expect ~ "New server registered."
 	send "enable server be1/s1"
 	expect ~ ".*"
 
-	send "experimental-mode on; add server be1/s2 ${s1_addr}:${s1_port} track be1/srv"
+	send "add server be1/s2 ${s1_addr}:${s1_port} track be1/srv"
 	expect ~ "New server registered."
 	send "enable server be1/s2"
 	expect ~ ".*"
 
-	send "experimental-mode on; add server be1/s3 ${s1_addr}:${s1_port} track be1/srv"
+	send "add server be1/s3 ${s1_addr}:${s1_port} track be1/srv"
 	expect ~ "New server registered."
 	send "enable server be1/s3"
 	expect ~ ".*"
@@ -155,7 +155,7 @@
 	send "disable server be1/srv"
 	expect ~ ".*"
 
-	send "experimental-mode on; del server be1/s1"
+	send "del server be1/s1"
 	expect ~ "Server deleted."
 
 	send "enable server be1/srv"
@@ -170,17 +170,17 @@
 # Delete the second dynamic server, enable be2/srv, S2 should report s2 and s3 UP
 ####
 haproxy h1 -cli {
-	send "experimental-mode on; add server be2/s1 ${s1_addr}:${s1_port} track be2/srv"
+	send "add server be2/s1 ${s1_addr}:${s1_port} track be2/srv"
 	expect ~ "New server registered."
 	send "enable server be2/s1"
 	expect ~ ".*"
 
-	send "experimental-mode on; add server be2/s2 ${s1_addr}:${s1_port} track be2/srv"
+	send "add server be2/s2 ${s1_addr}:${s1_port} track be2/srv"
 	expect ~ "New server registered."
 	send "enable server be2/s2"
 	expect ~ ".*"
 
-	send "experimental-mode on; add server be2/s3 ${s1_addr}:${s1_port} track be2/srv"
+	send "add server be2/s3 ${s1_addr}:${s1_port} track be2/srv"
 	expect ~ "New server registered."
 	send "enable server be2/s3"
 	expect ~ ".*"
@@ -188,7 +188,7 @@
 	send "disable server be2/srv"
 	expect ~ ".*"
 
-	send "experimental-mode on; del server be2/s2"
+	send "del server be2/s2"
 	expect ~ "Server deleted."
 
 	send "enable server be2/srv"
@@ -204,29 +204,29 @@
 ####
 haproxy h1 -cli {
 	# create server 1, track on be3/srv
-	send "experimental-mode on; add server be3/s1 ${s1_addr}:${s1_port} track be3/srv"
+	send "add server be3/s1 ${s1_addr}:${s1_port} track be3/srv"
 	expect ~ "New server registered."
 	send "enable server be3/s1"
 	expect ~ ".*"
 
 	# create server 2, track on be3/srv
-	send "experimental-mode on; add server be3/s2 ${s1_addr}:${s1_port} track be3/srv"
+	send "add server be3/s2 ${s1_addr}:${s1_port} track be3/srv"
 	expect ~ "New server registered."
 	send "enable server be3/s2"
 	expect ~ ".*"
 
 	# create server 3, track on be3/srv
-	send "experimental-mode on; add server be3/s3 ${s1_addr}:${s1_port} track be3/srv"
+	send "add server be3/s3 ${s1_addr}:${s1_port} track be3/srv"
 	expect ~ "New server registered."
 	send "enable server be3/s3"
 	expect ~ ".*"
 
 	# delete all dynamic servers
-	send "experimental-mode on; disable server be3/s1; del server be3/s1"
+	send "disable server be3/s1; del server be3/s1"
 	expect ~ "Server deleted."
-	send "experimental-mode on; disable server be3/s3; del server be3/s3"
+	send "disable server be3/s3; del server be3/s3"
 	expect ~ "Server deleted."
-	send "experimental-mode on; disable server be3/s2; del server be3/s2"
+	send "disable server be3/s2; del server be3/s2"
 	expect ~ "Server deleted."
 
 	# disable / enable the static server
diff --git a/reg-tests/server/cli_delete_dynamic_server.vtc b/reg-tests/server/cli_delete_dynamic_server.vtc
index a8b3036..e667641 100644
--- a/reg-tests/server/cli_delete_dynamic_server.vtc
+++ b/reg-tests/server/cli_delete_dynamic_server.vtc
@@ -39,7 +39,7 @@
 # add a new dynamic server to be able to delete it then
 haproxy h1 -cli {
 	# add a dynamic server and enable it
-	send "experimental-mode on; add server test/s2 ${s2_addr}:${s2_port}"
+	send "add server test/s2 ${s2_addr}:${s2_port}"
 	expect ~ "New server registered."
 
 	send "enable server test/s2"
@@ -47,16 +47,12 @@
 }
 
 haproxy h1 -cli {
-	# experimental mode disabled
-	send "del server test/s1"
-	expect ~ "This command is restricted to experimental mode only."
-
 	# non existent backend
-	send "experimental-mode on; del server foo/s1"
+	send "del server foo/s1"
 	expect ~ "No such backend."
 
 	# non existent server
-	send "experimental-mode on; del server test/other"
+	send "del server test/other"
 	expect ~ "No such server."
 }
 
@@ -74,14 +70,14 @@
 # delete the dynamic server
 haproxy h1 -cli {
 	# server not in maintenance mode
-	send "experimental-mode on; del server test/s2"
+	send "del server test/s2"
 	expect ~ "Only servers in maintenance mode can be deleted."
 
 	send "disable server test/s2"
 	expect ~ ".*"
 
 	# valid command
-	send "experimental-mode on; del server test/s2"
+	send "del server test/s2"
 	expect ~ "Server deleted."
 }
 
diff --git a/reg-tests/server/cli_delete_server.vtc b/reg-tests/server/cli_delete_server.vtc
index 9721518..61d241c 100644
--- a/reg-tests/server/cli_delete_server.vtc
+++ b/reg-tests/server/cli_delete_server.vtc
@@ -27,38 +27,34 @@
 } -start
 
 haproxy h1 -cli {
-	# experimental mode disabled
-	send "del server test/s1"
-	expect ~ "This command is restricted to experimental mode only."
-
 	# non existent backend
-	send "experimental-mode on; del server foo/s1"
+	send "del server foo/s1"
 	expect ~ "No such backend."
 
 	# non existent server
-	send "experimental-mode on; del server test/other"
+	send "del server test/other"
 	expect ~ "No such server."
 
 	# server referenced in ACL
-	send "experimental-mode on; del server test/s1"
+	send "del server test/s1"
 	expect ~ "This server cannot be removed at runtime due to other configuration elements pointing to it."
 
 	# tracked server
-	send "experimental-mode on; del server test/s2"
+	send "del server test/s2"
 	expect ~ "This server cannot be removed at runtime due to other configuration elements pointing to it."
 
 	# tracked server
-	send "experimental-mode on; del server test/s3"
+	send "del server test/s3"
 	expect ~ "This server cannot be removed at runtime due to other configuration elements pointing to it."
 
 	# server in running mode
-	send "experimental-mode on; del server test/s4"
+	send "del server test/s4"
 	expect ~ "Only servers in maintenance mode can be deleted."
 
 	send "disable server test/s4"
 	expect ~ ".*"
 
 	# valid command
-	send "experimental-mode on; del server test/s4"
+	send "del server test/s4"
 	expect ~ "Server deleted."
 }
diff --git a/reg-tests/ssl/dynamic_server_ssl.vtc b/reg-tests/ssl/dynamic_server_ssl.vtc
index e498a81..b7730f5 100644
--- a/reg-tests/ssl/dynamic_server_ssl.vtc
+++ b/reg-tests/ssl/dynamic_server_ssl.vtc
@@ -70,11 +70,11 @@
 	expect ~ ".*"
 
 	# valid command
-	send "experimental-mode on; del server test/s1"
+	send "del server test/s1"
 	expect ~ "Server deleted."
-	send "experimental-mode on; del server test/s2"
+	send "del server test/s2"
 	expect ~ "Server deleted."
-	send "experimental-mode on; del server test/s3"
+	send "del server test/s3"
 	expect ~ "Server deleted."
 }
 
@@ -95,7 +95,7 @@
 }
 
 haproxy h1 -cli {
-	send "experimental-mode on; add server test/s1 ${tmpdir}/ssl.sock ssl verify none crt ${testdir}/client1.pem"
+	send "add server test/s1 ${tmpdir}/ssl.sock ssl verify none crt ${testdir}/client1.pem"
 	expect ~ "New server registered."
 	send "enable server test/s1"
 	expect ~ ".*"