array( 'hostnameOvh' => 'ns111111.ovh.net', 'ip' => '1.1.1.1', ), 'srv2' => array( 'hostnameOvh' => 'ns222222.ovh.net', 'ip' => '2.2.2.2', ), ); if ( ! ($identifiants = parse_ini_file('.auth-api-ovh.ini'))) { echo "ERREUR : Impossible de récupérer les identifiants de connexion à l'API OVH.\n"; exit(1); } // Vérification des arguments if (empty($argv[1]) or ! in_array($argv[1], array_keys($listeServeurs))) { echo "ERREUR : veuillez spécifier le serveur sur lequel pointe actuellement l'IP failover : " . implode(', ', array_keys($listeServeurs)) . "\n"; exit(1); } if (empty($argv[2]) or ! in_array($argv[2], array_keys($listeServeurs))) { echo "ERREUR : veuillez spécifier le serveur vers lequel rediriger l'IP failover : " . implode(', ', array_keys($listeServeurs)) . "\n"; exit(1); } $serveurActuel = $argv[1]; $serveurDestination = $argv[2]; if ($serveurActuel == $serveurDestination) { echo "ERREUR : serveur actuel identique au serveur de destination.\n"; exit(1); } try { $soap = new SoapClient("https://www.ovh.com/soapi/soapi-re-1.59.wsdl"); //login $session = $soap->login($identifiants['login'], $identifiants['password'],"fr", false); // Changement de pointage de l'IP failover // doc : http://www.ovh.com/soapi/fr/?method=dedicatedFailoverUpdate $soap->dedicatedFailoverUpdate($session, $listeServeurs[$serveurActuel]['hostnameOvh'], $failoverIp, $listeServeurs[$serveurDestination]['ip']); //logout $soap->logout($session); } catch(SoapFault $fault) { echo $fault; exit(1); } // Code de retour Ok exit(0);