codecamp

SpringCloud 工作原理

该图像在/contracts文件夹下搜索合同。运行测试的输出将在/spring-cloud-contract/build文件夹下可用(对于调试目的很有用)。

您安装合同,传递环境变量就足够了,该映像将:

  • 生成合同测试
  • 针对提供的URL执行测试
  • 生成WireMock存根
  • (可选-默认情况下处于启用状态)将存根发布到Artifact Manager

环境变量

Docker映像需要一些环境变量以指向您正在运行的应用程序,工件管理器实例等。

  • PROJECT_GROUP-您的项目的组ID。默认为com.example
  • PROJECT_VERSION-您项目的版本。默认为0.0.1-SNAPSHOT
  • PROJECT_NAME-工件ID。默认为example
  • REPO_WITH_BINARIES_URL-工件管理器的URL。默认值为http://localhost:8081/artifactory/libs-release-local,这是本地运行Artifactory的默认URL
  • REPO_WITH_BINARIES_USERNAME-伪影管理器受保护时(可选)的用户名
  • REPO_WITH_BINARIES_PASSWORD-安全工件管理器时的密码(可选)
  • PUBLISH_ARTIFACTS-如果设置为true,则会将工件发布到二进制存储。默认为true

当合同位于外部存储库中时,将使用这些环境变量。要启用此功能,必须设置EXTERNAL_CONTRACTS_ARTIFACT_ID环境变量。

  • EXTERNAL_CONTRACTS_GROUP_ID-带有合同的项目的组ID。默认为com.example
  • EXTERNAL_CONTRACTS_ARTIFACT_ID-带有合同的项目的工件ID。
  • EXTERNAL_CONTRACTS_CLASSIFIER-带有合同的项目分类。默认为空
  • EXTERNAL_CONTRACTS_VERSION-带有合同的项目版本。默认值为+,相当于选择最新的
  • EXTERNAL_CONTRACTS_REPO_WITH_BINARIES_URL-工件管理器的URL。默认值为REPO_WITH_BINARIES_URL env var。如果未设置,则默认为http://localhost:8081/artifactory/libs-release-local,这是在本地运行Artifactory的默认URL
  • EXTERNAL_CONTRACTS_PATH-包含合同的项目内给定项目的合同路径。默认为斜线分隔的EXTERNAL_CONTRACTS_GROUP_ID/EXTERNAL_CONTRACTS_ARTIFACT_ID串联在一起。例如,对于组ID foo.bar和工件ID baz,将导致foo/bar/baz合同路径。
  • EXTERNAL_CONTRACTS_WORK_OFFLINE-如果设置为true,则将从容器的.m2中检索带有合同的工件。将本地.m2挂载为容器的/root/.m2路径上可用的卷。您不能同时设置EXTERNAL_CONTRACTS_WORK_OFFLINEEXTERNAL_CONTRACTS_REPO_WITH_BINARIES_URL

执行测试时使用以下环境变量:

  • APPLICATION_BASE_URL-应该对其执行测试的URL。请记住,必须可以从Docker容器访问它(例如localhost将不起作用)
  • APPLICATION_USERNAME-(可选)用于对应用程序进行基本身份验证的用户名
  • APPLICATION_PASSWORD-(可选)用于对应用程序进行基本身份验证的密码
SpringCloud Maven,JAR和二进制存储的简短介绍
SpringCloud 使用示例
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

三、Spring Cloud Netflix

SpringCloud Hystrix超时和Ribbon客户

SpringCloud 重试失败的请求

五、Spring Cloud Stream

六、SpringCloud Binder实现

SpringCloud 重试RabbitMQ Binder

SpringCloud Dead-Letter队列处理

八、Spring Cloud Sleuth

SpringCloud 当前Span

十二、Spring Cloud for Cloud Foundry

十三、Spring Cloud Contract

Spring Cloud Contract验证程序设置

SrpingCloud Gradle项目

十五、Spring Cloud网关

Spring Cloud 配置路由谓词工厂和网关过滤工厂

Spring Cloud TLS / SSL

Spring Cloud网关配置

SpringCloud 故障排除

十八、Spring Cloud GCP

Spring Cloud GCP Spring资源

Spring Cloud Spring JDBC

Spring Cloud Redis的Cloud Memorystore

Spring Cloud 云身份识别代理(IAP)身份验证

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }