2021-12-21 19:49:47 +00:00
# VMWare Go KCL v2
2021-11-30 15:05:15 +00:00
2021-12-23 04:16:06 +00:00

2022-01-07 02:13:32 +00:00
[](https://goreportcard.com/report/github.com/vmware/vmware-go-kcl-v2)
2021-12-21 19:49:47 +00:00
[](https://opensource.org/licenses/MIT)
2022-01-07 02:24:58 +00:00
[](https://github.com/vmware/vmware-go-kcl-v2/actions/workflows/vmware-go-kcl-v2-ci.yml)
2021-11-12 01:03:10 +00:00
2021-11-30 15:05:15 +00:00
## Overview
2022-01-07 02:13:32 +00:00
VMware-Go-KCL-V2 is a native open-source Go library for Amazon Kinesis Data Stream (KDS) consumption. It allows developers
to program KDS consumers in lightweight Go language and still take advantage of the features presented by the native
2021-12-21 19:49:47 +00:00
KDS Java API libraries.
2021-11-30 15:05:15 +00:00
2022-01-07 02:13:32 +00:00
[vmware-go-kcl-v2 ](https://github.com/vmware/vmware-go-kcl-v2 ) is a VMWare originated open-source project for AWS Kinesis
Client Library in Go. Within VMware, we have seen adoption in vSecureState and Carbon Black. In addition, Carbon Black
has contributed to the vmware-go-kcl codebase and heavily used it in the product. Besides,
[vmware-go-kcl-v2 ](https://github.com/vmware/vmware-go-kcl-v2 ) has got
[recognition ](https://www.linkedin.com/posts/adityakrish_vmware-go-kcl-a-native-open-source-go-programming-activity-6810626798133616640-B6W8/ ),
and [contributions ](https://github.com/vmware/vmware-go-kcl-v2/graphs/contributors ) from the industry.
2021-11-30 15:05:15 +00:00
2021-12-21 19:49:47 +00:00
`vmware-go-kcl-v2` is the v2 version of VMWare KCL for the Go programming language by utilizing [AWS Go SDK V2 ](https://github.com/aws/aws-sdk-go-v2 ).
2021-11-30 15:05:15 +00:00
2021-12-21 19:49:47 +00:00
## Try it out
2021-11-30 15:05:15 +00:00
2021-12-21 19:49:47 +00:00
### Prerequisites
2021-11-30 15:05:15 +00:00
2021-12-21 19:49:47 +00:00
* [aws-sdk-go-v2 ](https://github.com/aws/aws-sdk-go-v2 )
* The v2 SDK requires a minimum version of `Go 1.17` .
* [gosec ](https://github.com/securego/gosec )
2021-11-30 15:05:15 +00:00
2018-09-07 15:44:37 +00:00
### Build & Run
2021-12-21 19:49:47 +00:00
1. Initialize Project
2018-09-07 15:44:37 +00:00
2022-01-07 02:13:32 +00:00
2. Build
> `make build`
2018-09-07 15:44:37 +00:00
2021-12-21 19:49:47 +00:00
3. Test
2022-01-07 02:13:32 +00:00
> `make test`
2018-09-07 15:44:37 +00:00
## Documentation
VMware-Go-KCL matches exactly the same interface and programming model from original Amazon KCL, the best place for getting reference, tutorial is from Amazon itself:
2022-01-07 02:13:32 +00:00
* [Developing Consumers Using the Kinesis Client Library ](https://docs.aws.amazon.com/streams/latest/dev/developing-consumers-with-kcl.html )
* [Troubleshooting ](https://docs.aws.amazon.com/streams/latest/dev/troubleshooting-consumers.html )
* [Advanced Topics ](https://docs.aws.amazon.com/streams/latest/dev/advanced-consumers.html )
2018-09-07 15:44:37 +00:00
## Contributing
2021-12-21 19:49:47 +00:00
The vmware-go-kcl-v2 project team welcomes contributions from the community. Before you start working with vmware-go-kcl-v2, please
read our [Developer Certificate of Origin ](https://cla.vmware.com/dco ). All contributions to this repository must be
signed as described on that page. Your signature certifies that you wrote the patch or have the right to pass it on
as an open-source patch. For more detailed information, refer to [CONTRIBUTING.md ](CONTRIBUTING.md ).
2018-09-07 15:44:37 +00:00
## License
MIT License