Metadata-Version: 2.1
Name: strimzi-kafka-cli
Version: 0.1.0a56
Summary: Command Line Interface for Strimzi Kafka Operator
Home-page: https://github.com/systemcraftsman/strimzi-kafka-cli
Author: Aykut Bulgu
Author-email: aykut@systemcraftsman.com
Maintainer: Aykut Bulgu
Maintainer-email: aykut@systemcraftsman.com
License: UNKNOWN
Project-URL: Source, https://github.com/systemcraftsman/strimzi-kafka-cli
Project-URL: Tracker, https://github.com/systemcraftsman/strimzi-kafka-cli/issues
Description: ![Build](https://github.com/systemcraftsman/strimzi-kafka-cli/workflows/Build/badge.svg) ![Deploy](https://github.com/systemcraftsman/strimzi-kafka-cli/workflows/Deploy/badge.svg) [![PyPI](https://img.shields.io/pypi/v/strimzi-kafka-cli)](https://pypi.org/project/strimzi-kafka-cli/) [![Downloads](https://pepy.tech/badge/strimzi-kafka-cli)](https://pepy.tech/project/strimzi-kafka-cli) [![License](https://img.shields.io/badge/license-Apache--2.0-blue.svg)](http://www.apache.org/licenses/LICENSE-2.0) 
        
        ![strimzi cli](https://raw.githubusercontent.com/systemcraftsman/strimzi-kafka-cli/master/logo/strimzi_cli.png)
        
        # Strimzi Kafka CLI
        
        Strimzi Kafka CLI is a CLI that helps traditional Apache Kafka users
        -both developers and administrators- to easily adapt [Strimzi](https://strimzi.io/),
        a [Kubernetes
        operator](https://operatorhub.io/operator/strimzi-kafka-operator) for
        [Apache Kafka](https://kafka.apache.org/).
        
        Intention here is to ramp up Strimzi usage by creating a similar CLI
        experience with traditional Apache Kafka binaries.
        
        **kfk** command stands for the usual **kafka-**\* prefix of the
        Apache Kafka runnable files which are located in *bin* directory. There
        are options provided like *topics*, *console-consumer*, etc. which also
        mostly stand for the rest of the runnable file names like
        *kafka-topic.sh*.
        
        However, because of the nature of Strimzi and its capabilities, there
        are also unusual options like *clusters* which is used for
        cluster configuration or *users* which is used for user management and
        configuration.
        
        Following is the high-level output of the Strimzi Kafka CLI:
        
        ``` bash
        Usage: kfk [OPTIONS] COMMAND [ARGS]...
        
          Strimzi Kafka CLI
        
        Options:
          --help  Show this message and exit.
        
        Commands:
          acls              Manages ACLs on Kafka.
          clusters          Creates, alters, deletes, describes Kafka cluster(s).
          configs           Adds/Removes entity config for a topic, client, user or...
          connect           Creates, alters, deletes, describes Kafka connect...
          console-consumer  Reads data from Kafka topics and outputs it to standard...
          console-producer  Reads data from standard input and publish it to Kafka.
          env               Prints the environment variable values for Strimzi Kafka CLI
          operator          Installs/Uninstalls Strimzi Kafka Operator
          topics            Creates, alters, deletes, describes Kafka topic(s).
          users             Creates, alters, deletes, describes Kafka users(s).
          version           Prints the version of Strimzi Kafka CLI
        ```
        
        Please take a look at the relevant article [Strimzi Kafka CLI: Managing Strimzi in a Kafka Native Way](https://www.systemcraftsman.com/2020/08/25/strimzi-kafka-cli-managing-strimzi-in-a-kafka-native-way/) for more details.
        
        ## Installation
        
        Strimzi Kafka CLI can be installed via pip (python package installer).
        
        ``` bash
        sudo pip install strimzi-kafka-cli
        ```
        
        Project requires: Python >=3.6
        
        ## Examples
        
        * [TLS Authentication](https://github.com/systemcraftsman/strimzi-kafka-cli/tree/master/examples/2_tls_authentication)
        * [Simple ACL Authorization](https://github.com/systemcraftsman/strimzi-kafka-cli/tree/master/examples/3_simple_acl_authorization)
        * [Topic, User and Broker Configuration](https://github.com/systemcraftsman/strimzi-kafka-cli/tree/master/examples/4_configuration)
        * [Kafka Connect](https://github.com/systemcraftsman/strimzi-kafka-cli/tree/master/examples/5_connect)
        
        ## Dependencies
        ### Python Dependencies
        Please see [requirements.txt](https://github.com/systemcraftsman/strimzi-kafka-cli/blob/master/requirements.txt) file.
        ### External Dependencies
        `kubectl` and `Strimzi resources` are the tools that Strimzi Kafka CLI uses. These dependencies are automatically downloaded when the first `kfk` command is run. You can always check the dependency versions of your CLI with the following command:
        
        ``` bash
        kfk version
        ```
        
        If you want to change the `kubectl` and `Strimzi resources` folder, you can simply change their version with the help of some environment veriables in order to let Strimzi Kafka CLI download the version you want, or change the PATH of any if you want to use a custom kubectl or Strimzi binary folder. Current versions are recommended, so use these environment variables at your own risk.
        
        **STRIMZI_KAFKA_CLI_BASE_PATH:** Set this if you want to have a custom Strimzi Kafka CLI folder. It is set in `~/.strimzi-kafka-cli` as default.
        
        **STRIMZI_KAFKA_CLI_STRIMZI_VERSION:** Set this if you want to use a different Strimzi version.
        
        **STRIMZI_KAFKA_CLI_STRIMZI_PATH:** Set this if you want to use a custom Strimzi/AMQ Streams.
        
        **STRIMZI_KAFKA_CLI_KUBECTL_VERSION** Set this if you want to use a different kubectl version.
        
        **STRIMZI_KAFKA_CLI_KUBECTL_PATH:** Set this if you want to use a custom kubectl.
        
Keywords: cli,command-line-interface,strimzi,kafka,kubernetes,openshift,apache-kafka
Platform: any
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: System Administrators
Classifier: Operating System :: MacOS :: MacOS X
Classifier: Operating System :: Microsoft :: Windows
Classifier: Operating System :: POSIX
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Topic :: Software Development
Requires-Python: >=3.6
Description-Content-Type: text/markdown
