kafka-connect:kafka-connect

Full name:

io.confluent:kafka-connect-maven-plugin:0.12.0:kafka-connect

Description:

Packages a project into an archive file for use on Confluent Hub. Allows user-specifiable metadata to be provided via configuration.

The archive will be a ZIP file generated in the target/components/packages directory.

For more details on the kinds of metadata that can be specified for a component, visit our documentation on the component archive format.

Any logo files submitted to Confluent Hub must contain a valid extension for their format, must be at least 400 pixels wide and 200 pixels tall, and be no larger than 45 MB in size.

String parameters with default values (such as source URL) can be manually nullified by specifying a value of "none".

Attributes:

  • Requires a Maven project to be executed.
  • Binds by default to the lifecycle phase: package.

Required Parameters

Name Type Since Description
componentTypes Set - A list of types that apply to this component. The four allowed types are "sink", "source", "transform", and "converter".
User property is: connect.component.componentTypes.
description String - The description of the component. Should include a summary of the component's functionality, as well as any information that can't be specified in any other part of the manifest.
We recommend the first short paragraph provide a good overview, and that subsequent paragraphs list features, capabilities, limitations, and external requirements in detailed, human-readable sentences.
Default value is: ${project.description}.
User property is: connect.component.description.
name String - The name of the component.
Default value is: ${project.artifactId}.
User property is: connect.component.name.
ownerUsername String - The username for the owner of the component. Must adhere to the regex [a-zA-Z0-9][a-zA-Z0-9_-]*.
User property is: connect.component.owner.username.
version String - The version of the component.
Default value is: ${project.version}.
User property is: connect.component.version.

Optional Parameters

Name Type Since Description
confluentControlCenterIntegration Boolean - Whether or not the component supports integration with Confluent Control Center.
Default value is: false.
User property is: connect.component.features.confluentControlCenterIntegration.
deliveryGuarantee Set - What sort of delivery guarantees the component provides. Can be empty, or contain one or both of "atLeastOnce" and "exactlyOnce".
User property is: connect.component.features.deliveryGuarantee.
dockerLabel String - Deprecated. No longer used. Will be removed in a future release.
User property is: connect.component.docker.label.
dockerName String - The name for the component's Docker image.
User property is: connect.component.docker.name.
dockerNamespace String - The namespace that the component's Docker image occupies.
User property is: connect.component.docker.namespace.
dockerRegistries List - A list of Docker registries where the component's Docker image can be found.
User property is: connect.component.docker.registries.
dockerTag String - The tag for the component's Docker image.
User property is: connect.component.docker.tag.
documentationUrl String - A link to documentation for the component.
Default value is: ${project.url}.
User property is: connect.component.documentation.url.
kafkaConnectApi Boolean - Whether or not the component is a Kafka Connect connector.
Default value is: true.
User property is: connect.component.features.kafkaConnectApi.
licenses List - A list of licenses associated with the component. Each license is comprised of a name, a url, and a logo. If no licenses are specified here, the list of licenses found at the top level of the project's POM is used. If you would like to ensure that no licenses are included, configure this explicitly as an empty list.
logo String - A logo to use for the component. Should consist of a project-local path to an image file; external URLs are not allowed.
User property is: connect.component.logo.
ownerLogo String - A logo to use for the owner of the component. Should consist of a project-local path to an image file; external URLs are not allowed.
User property is: connect.component.owner.logo.
ownerName String - The name of the owner of the component (akin to a friendlier, more-human-readable version of the ownerUsername field.
User property is: connect.component.owner.name.
ownerType String - The type of owner for the component. Either "organization" or "user".
User property is: connect.component.owner.type.
ownerUrl String - A link to a website for the owner of the component.
User property is: connect.component.owner.url.
releaseDate String - The release date for the component. Must be in the format "yyyy-MM-dd".
User property is: connect.component.releaseDate.
requirements Set - A list of requirements for the component.
User property is: connect.component.requirements.
singleMessageTransforms Boolean - Whether or not the component supports single message transforms.
Default value is: true.
User property is: connect.component.features.singleMessageTransforms.
sourceUrl String - A link to source code for the component.
Default value is: ${project.scm.url}.
User property is: connect.component.source.url.
supportLogo String - A logo to use for the component supporter. Should consist of a project-local path to an image file; external URLs are not allowed.
User property is: connect.component.support.logo.
supportProviderName String - The name of the support provider for the component.
User property is: connect.component.support.providerName.
supportSummary String - The kind of support provided for the component.
User property is: connect.component.support.summary.
supportUrl String - A link to a website for support for the component.
User property is: connect.component.support.url.
supportedEncodings Set - A list of encodings supported by the component (if the component is a Kafka Connect connector, it is assumed to be able to support any encoding, in which case this should be set to ["any"]). Defaults to "any"; if you would like to specify that no encodings are supported or if the packaged component is not a Kafka connector (e.g., it is instead a converter or transform), configure this explicitly as an empty list.
tags Set - A list of search tags to associate with the component.
User property is: connect.component.tags.
title String - The title of the component (akin to a friendlier, more-human-readable version of the name field).
Default value is: ${project.name}.
User property is: connect.component.title.

Parameter Details

componentTypes:

A list of types that apply to this component. The four allowed types are "sink", "source", "transform", and "converter".
  • Type: java.util.Set
  • Required: Yes
  • User Property: connect.component.componentTypes

confluentControlCenterIntegration:

Whether or not the component supports integration with Confluent Control Center.
  • Type: java.lang.Boolean
  • Required: No
  • User Property: connect.component.features.confluentControlCenterIntegration
  • Default: false

deliveryGuarantee:

What sort of delivery guarantees the component provides. Can be empty, or contain one or both of "atLeastOnce" and "exactlyOnce".
  • Type: java.util.Set
  • Required: No
  • User Property: connect.component.features.deliveryGuarantee

description:

The description of the component. Should include a summary of the component's functionality, as well as any information that can't be specified in any other part of the manifest.
We recommend the first short paragraph provide a good overview, and that subsequent paragraphs list features, capabilities, limitations, and external requirements in detailed, human-readable sentences.
  • Type: java.lang.String
  • Required: Yes
  • User Property: connect.component.description
  • Default: ${project.description}

dockerLabel:

Deprecated. No longer used. Will be removed in a future release.
(no description)
  • Type: java.lang.String
  • Required: No
  • User Property: connect.component.docker.label

dockerName:

The name for the component's Docker image.
  • Type: java.lang.String
  • Required: No
  • User Property: connect.component.docker.name

dockerNamespace:

The namespace that the component's Docker image occupies.
  • Type: java.lang.String
  • Required: No
  • User Property: connect.component.docker.namespace

dockerRegistries:

A list of Docker registries where the component's Docker image can be found.
  • Type: java.util.List
  • Required: No
  • User Property: connect.component.docker.registries

dockerTag:

The tag for the component's Docker image.
  • Type: java.lang.String
  • Required: No
  • User Property: connect.component.docker.tag

documentationUrl:

A link to documentation for the component.
  • Type: java.lang.String
  • Required: No
  • User Property: connect.component.documentation.url
  • Default: ${project.url}

kafkaConnectApi:

Whether or not the component is a Kafka Connect connector.
  • Type: java.lang.Boolean
  • Required: No
  • User Property: connect.component.features.kafkaConnectApi
  • Default: true

licenses:

A list of licenses associated with the component. Each license is comprised of a name, a url, and a logo. If no licenses are specified here, the list of licenses found at the top level of the project's POM is used. If you would like to ensure that no licenses are included, configure this explicitly as an empty list.
  • Type: java.util.List
  • Required: No

logo:

A logo to use for the component. Should consist of a project-local path to an image file; external URLs are not allowed.
  • Type: java.lang.String
  • Required: No
  • User Property: connect.component.logo

name:

The name of the component.
  • Type: java.lang.String
  • Required: Yes
  • User Property: connect.component.name
  • Default: ${project.artifactId}

ownerLogo:

A logo to use for the owner of the component. Should consist of a project-local path to an image file; external URLs are not allowed.
  • Type: java.lang.String
  • Required: No
  • User Property: connect.component.owner.logo

ownerName:

The name of the owner of the component (akin to a friendlier, more-human-readable version of the ownerUsername field.
  • Type: java.lang.String
  • Required: No
  • User Property: connect.component.owner.name

ownerType:

The type of owner for the component. Either "organization" or "user".
  • Type: java.lang.String
  • Required: No
  • User Property: connect.component.owner.type

ownerUrl:

A link to a website for the owner of the component.
  • Type: java.lang.String
  • Required: No
  • User Property: connect.component.owner.url

ownerUsername:

The username for the owner of the component. Must adhere to the regex [a-zA-Z0-9][a-zA-Z0-9_-]*.
  • Type: java.lang.String
  • Required: Yes
  • User Property: connect.component.owner.username

releaseDate:

The release date for the component. Must be in the format "yyyy-MM-dd".
  • Type: java.lang.String
  • Required: No
  • User Property: connect.component.releaseDate

requirements:

A list of requirements for the component.
  • Type: java.util.Set
  • Required: No
  • User Property: connect.component.requirements

singleMessageTransforms:

Whether or not the component supports single message transforms.
  • Type: java.lang.Boolean
  • Required: No
  • User Property: connect.component.features.singleMessageTransforms
  • Default: true

sourceUrl:

A link to source code for the component.
  • Type: java.lang.String
  • Required: No
  • User Property: connect.component.source.url
  • Default: ${project.scm.url}

supportLogo:

A logo to use for the component supporter. Should consist of a project-local path to an image file; external URLs are not allowed.
  • Type: java.lang.String
  • Required: No
  • User Property: connect.component.support.logo

supportProviderName:

The name of the support provider for the component.
  • Type: java.lang.String
  • Required: No
  • User Property: connect.component.support.providerName

supportSummary:

The kind of support provided for the component.
  • Type: java.lang.String
  • Required: No
  • User Property: connect.component.support.summary

supportUrl:

A link to a website for support for the component.
  • Type: java.lang.String
  • Required: No
  • User Property: connect.component.support.url

supportedEncodings:

A list of encodings supported by the component (if the component is a Kafka Connect connector, it is assumed to be able to support any encoding, in which case this should be set to ["any"]). Defaults to "any"; if you would like to specify that no encodings are supported or if the packaged component is not a Kafka connector (e.g., it is instead a converter or transform), configure this explicitly as an empty list.
  • Type: java.util.Set
  • Required: No

tags:

A list of search tags to associate with the component.
  • Type: java.util.Set
  • Required: No
  • User Property: connect.component.tags

title:

The title of the component (akin to a friendlier, more-human-readable version of the name field).
  • Type: java.lang.String
  • Required: No
  • User Property: connect.component.title
  • Default: ${project.name}

version:

The version of the component.
  • Type: java.lang.String
  • Required: Yes
  • User Property: connect.component.version
  • Default: ${project.version}