Export from GitLab to Kafka
CloudQuery is an open-source data integration platform that allows you to export data from any source to any destination.
The CloudQuery GitLab plugin allows you to sync data from GitLab to any destination, including Kafka. It takes only minutes to get started.
GitLab
The CloudQuery GitLab plugin pulls configuration out of GitLab resources and loads it into any supported CloudQuery destination
Kafka
This plugin is in preview.
This destination plugin lets you sync data from a CloudQuery source to Kafka in various formats such as CSV, JSON. Each table will be pushed to a separate topic
Table of Contents
MacOS Setup
Step 1. Install CloudQuery
brew install cloudquery/tap/cloudquery
Step 2. Log in to CloudQuery CLI
Logging in is required to use premium plugins and premium tables in open-core plugins.
cloudquery login
Step 3. Configure GitLab source plugin
You can find more information about the configuration in the plugin documentation
kind: source
# Common source-plugin configuration
spec:
name: gitlab
path: cloudquery/gitlab
registry: cloudquery
version: "v5.0.0"
tables: ["gitlab_users"]
destinations: ["kafka"]
# Gitlab specific configuration
spec:
# required
access_token: "${GITLAB_ACCESS_TOKEN}"
# optional, leave empty for GitLab SaaS
# base_url: "<INSTANCE_URL>"
Step 4. Configure Kafka destination plugin
You can find more information about the configuration in the plugin documentation
kind: destination
spec:
name: "kafka"
path: "cloudquery/kafka"
registry: "cloudquery"
version: "v3.3.9"
write_mode: "append"
spec:
# required - list of brokers to connect to
brokers: ["<broker-host>:<broker-port>"]
# optional - if connecting via SASL/PLAIN, the username and password to use. If not set, no authentication will be used.
sasl_username: "${KAFKA_SASL_USERNAME}"
sasl_password: "${KAFKA_SASL_PASSWORD}"
format: "json" # options: parquet, json, csv
format_spec:
# CSV-specific parameters:
# delimiter: ","
# skip_header: false
# Optional parameters
# compression: "" # options: gzip
# client_id: cq-destination-kafka
# verbose: false
# batch_size: 1000
Step 5. Run Sync
cloudquery sync gitlab.yml kafka.yml