尝试测试容器进行集成测试。我正在测试 rest api 端点。这里是技术栈——quarkus、RESTEasy 和 mongodb-client
我能够看到 MongoDB 容器已成功启动但出现异常。异常:“com.mongodb.MongoSocketOpenException:异常打开套接字”
2020-04-26 15:13:18,330 INFO [org.tes.doc.DockerClientProviderStrategy] (main) Loaded org.testcontainers.dockerclient.UnixSocketClientProviderStrategy from ~/.testcontainers.properties, will try it first
2020-04-26 15:13:19,109 INFO [org.tes.doc.UnixSocketClientProviderStrategy] (main) Accessing docker with local Unix socket
2020-04-26 15:13:19,109 INFO [org.tes.doc.DockerClientProviderStrategy] (main) Found Docker environment with local Unix socket (unix:///var/run/docker.sock)
2020-04-26 15:13:19,258 INFO [org.tes.DockerClientFactory] (main) Docker host IP address is localhost
2020-04-26 15:13:19,305 INFO [org.tes.DockerClientFactory] (main) Connected to docker:
Server Version: 19.03.8
API Version: 1.40
Operating System: Docker Desktop
Total Memory: 3940 MB
2020-04-26 …Run Code Online (Sandbox Code Playgroud) Quarkus using Rest Client,解释了如何使用 MicroProfile REST Client。对于基本 URL application.properties 可以使用。
org.acme.restclient.CountriesService/mp-rest/url=https://restcountries.eu/rest #
Run Code Online (Sandbox Code Playgroud)
使用上述方法,不能有动态基本 URL。
能够通过使用 RestClientBuilder 来实现它,如MicroProfile Rest Client 中所述。这种方法的缺点是没有自动协商功能。
SimpleGetApi simpleGetApi = RestClientBuilder.newBuilder().baseUri(getApplicationUri()).build(SimpleGetApi.class);
Run Code Online (Sandbox Code Playgroud)
有没有其他或更好的方法来实现这一目标?谢谢。
我在项目中有两个 Azure git 存储库。我需要在单个管道中访问两个存储库。我用我的管道映射了一个存储库。
根据文件:https : //docs.microsoft.com/en-us/azure/devops/pipelines/repos/azure-repos-git?view=azure-devops&tabs=yaml#authorize-access-to-your-repositories
我在管道中使用命令-script: git clone -c http.extraheader="AUTHORIZATION: bearer $(System.AccessToken)" <clone URL>来访问另一个存储库
: Mapping values are not allowed in this context."由于冒号而出现异常(授权:)
所以试着逃避冒号 -script: git clone -c http.extraheader="AUTHORIZATION':' bearer $(System.AccessToken)" <clone URL>
但有错误
Cloning into 'XXXX'...
fatal: unable to access <repository url>'
我可以在本地克隆这个存储库。