[ 
https://issues.apache.org/jira/browse/BEAM-9292?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Alexey Romanenko updated BEAM-9292:
-----------------------------------
    Description: 
To support Confluent Schema Registry, KafkaIO has a dependency on 
{{io.confluent:kafka-avro-serializer}} from 
https://packages.confluent.io/maven/ repository. In this case, it should add 
this repository into published KafkaIO POM file. Otherwise, it will fail with 
the following error during building a user pipeline:
{code}
[ERROR] Failed to execute goal on project kafka-io: Could not resolve 
dependencies for project org.apache.beam.issues:kafka-io:jar:1.0.0-SNAPSHOT: 
Could not find artifact io.confluent:kafka-avro-serializer:jar:5.3.2 in central 
(https://repo.maven.apache.org/maven2) -> [Help 1]
{code}

The repositories for publishing can be added by {{mavenRepositories}} argument 
in build script for Java configuration. 

For example (KafkaIO:
{code}
$ cat sdks/java/io/kafka/build.gradle 

...
applyJavaNature(
  ...
  mavenRepositories: [
    [id: 'io.confluent', url: 'https://packages.confluent.io/maven/']
  ]
)
...
{code}
It will generate the following xml code snippet in pom file of 
{{beam-sdks-java-io-kafka}} artifact after publishing:
{code}
  <repositories>
    <repository>
      <id>io.confluent</id>
      <url>https://packages.confluent.io/maven/</url>
    </repository>
  </repositories>
{code}

  was:
To support Confluent Schema Registry, KafkaIO has a dependency on 
{{io.confluent:kafka-avro-serializer}} from 
https://packages.confluent.io/maven/ repository. In this case, it should add 
this repository into published KafkaIO POM file. Otherwise, it will fail with 
the following error during building a user pipeline:
{code}
[ERROR] Failed to execute goal on project kafka-io: Could not resolve 
dependencies for project org.apache.beam.issues:kafka-io:jar:1.0.0-SNAPSHOT: 
Could not find artifact io.confluent:kafka-avro-serializer:jar:5.3.2 in central 
(https://repo.maven.apache.org/maven2) -> [Help 1]
{code}


> Provide an ability to specify additional maven repositories for published POMs
> ------------------------------------------------------------------------------
>
>                 Key: BEAM-9292
>                 URL: https://issues.apache.org/jira/browse/BEAM-9292
>             Project: Beam
>          Issue Type: Improvement
>          Components: build-system, io-java-kafka
>            Reporter: Alexey Romanenko
>            Assignee: Alexey Romanenko
>            Priority: Major
>             Fix For: 2.20.0
>
>          Time Spent: 1h 20m
>  Remaining Estimate: 0h
>
> To support Confluent Schema Registry, KafkaIO has a dependency on 
> {{io.confluent:kafka-avro-serializer}} from 
> https://packages.confluent.io/maven/ repository. In this case, it should add 
> this repository into published KafkaIO POM file. Otherwise, it will fail with 
> the following error during building a user pipeline:
> {code}
> [ERROR] Failed to execute goal on project kafka-io: Could not resolve 
> dependencies for project org.apache.beam.issues:kafka-io:jar:1.0.0-SNAPSHOT: 
> Could not find artifact io.confluent:kafka-avro-serializer:jar:5.3.2 in 
> central (https://repo.maven.apache.org/maven2) -> [Help 1]
> {code}
> The repositories for publishing can be added by {{mavenRepositories}} 
> argument in build script for Java configuration. 
> For example (KafkaIO:
> {code}
> $ cat sdks/java/io/kafka/build.gradle 
> ...
> applyJavaNature(
>   ...
>   mavenRepositories: [
>     [id: 'io.confluent', url: 'https://packages.confluent.io/maven/']
>   ]
> )
> ...
> {code}
> It will generate the following xml code snippet in pom file of 
> {{beam-sdks-java-io-kafka}} artifact after publishing:
> {code}
>   <repositories>
>     <repository>
>       <id>io.confluent</id>
>       <url>https://packages.confluent.io/maven/</url>
>     </repository>
>   </repositories>
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to