Maison > Questions et réponses > le corps du texte
J'ai écrit quelques tests d'intégration en utilisant Guzzle. J'ai également créé un pipeline sur bitbucket pour exécuter les tests.
$this->client = new Client([ 'base_uri' => "http://{docker_service_name}/api/", ]); $response = $this->client->request('GET', 'regions'); $this->assertEquals(SELF::STATUS_OK, $response->getStatusCode());
Mon bitbucket-pipeline.yaml ressemble à ceci :
image: php:7.1.1 pipelines: default: - step: script: - apt-get update && apt-get install -y unzip - curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer - composer install - vendor/bin/phpunit
Le problème est que le pipeline échoue avec l'erreur suivante :
GuzzleHttp\Exception\ConnectException: cURL error 7: Failed to connect to docker_service_name port 80: Connection refused (see https://curl.haxx.se/libcurl/c/libcurl-errors.html) for http://{docker_service_name}/api/regions
On dirait que le pipeline ne parvient pas à obtenir le nom d'hôte, sur mon site local, ce serait le nom du serveur Web Docker, que dois-je définir sur le pipeline ? Merci beaucoup d'avance
P粉5672810152024-02-18 11:09:02
Veuillez noter que le script d'étape est exécuté dans un seul conteneur Docker. Si vous devez vous connecter à un autre service pour exécuter des tests d'intégration, vous devez :