5.4. 使用 Maven 插件测试架构和 API 工件


您可能需要验证是否可以注册工件,而无需实际进行任何更改。这在 Service Registry 中配置规则时通常很有用。如果工件内容违反任何配置的规则,测试工件会导致失败。

注意

当使用 Maven 插件测试工件时,即使工件通过测试,也不会将任何内容添加到 Service Registry。

前提条件

  • 在您的环境中必须安装并运行服务 Registry

流程

更新您的 Maven pom.xml 文件,以使用 apicurio-registry-maven-plugin 来测试工件。以下示例显示了测试 Apache Avro 模式:

<plugin>
  <groupId>io.apicurio</groupId>
  <artifactId>apicurio-registry-maven-plugin</artifactId>
  <version>${apicurio.version}</version>
  <executions>
      <execution>
        <phase>generate-sources</phase>
        <goals>
            <goal>test-update</goal>  1
        </goals>
        <configuration>
            <registryUrl>MY-REGISTRY-URL/apis/registry/v2</registryUrl> 2
            <authServerUrl>MY-AUTH-SERVER</authServerUrl>
            <clientId>MY-CLIENT-ID</clientId>
            <clientSecret>MY-CLIENT-SECRET</clientSecret> 3
            <artifacts>
                <artifact>
                    <groupId>TestGroup</groupId> 4
                    <artifactId>FullNameRecord</artifactId>
                    <file>${project.basedir}/src/main/resources/schemas/record.avsc</file> 5
                </artifact>
                <artifact>
                    <groupId>TestGroup</groupId>
                    <artifactId>ExampleAPI</artifactId>
                    <type>GRAPHQL</type>
                    <file>${project.basedir}/src/main/resources/apis/example.graphql</file>
                </artifact>
            </artifacts>
        </configuration>
    </execution>
  </executions>
 </plugin>
  1. 指定 test-update 作为测试 schema 构件的执行目标。
  2. 使用 ./ apis/registry/v2 端点指定 Service Registry URL。
  3. 如果需要身份验证,您可以指定身份验证服务器和客户端凭证。
  4. 指定 Service Registry 工件组 ID。如果您不想使用唯一组,可以指定 default 组。
  5. 您可以使用工件 ID 从指定目录中测试多个工件。
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.