Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/streamnative/oxia-java
A Java client library for Oxia
https://github.com/streamnative/oxia-java
client oxia testcontainers
Last synced: about 1 month ago
JSON representation
A Java client library for Oxia
- Host: GitHub
- URL: https://github.com/streamnative/oxia-java
- Owner: streamnative
- License: apache-2.0
- Created: 2023-01-11T17:32:48.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-11-28T10:56:51.000Z (about 1 month ago)
- Last Synced: 2024-11-28T11:38:41.605Z (about 1 month ago)
- Topics: client, oxia, testcontainers
- Language: Java
- Homepage:
- Size: 859 KB
- Stars: 18
- Watchers: 11
- Forks: 9
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# Oxia Java
[![Build](https://github.com/streamnative/oxia-client-java/actions/workflows/pr-build-and-test.yml/badge.svg)](https://github.com/streamnative/oxia-client-java/actions/workflows/pr-build-and-test.yml)
## Overview
This project comprises JDK language compatible modules for the [Oxia][oxia] service. It provides
the following capabilities:- [Client](client/) for the Oxia service
- [OpenTelemetry Metrics](client-metrics-opentelemetry/) integration with the client
- [Testcontainer](testcontainers/) for integration testing with a local Oxia service
- [Performance Test Tool](perf/) for performance testing with an Oxia service.## Build
Requirements:
* JDK 17
* Maven 3.8.6+Common build actions:
| Action | Command |
|---------------------------------|------------------------------------------|
| Full build and test | `mvn clean verify` |
| Skip tests | `mvn clean verify -DskipTests` |
| Skip Jacoco test coverage check | `mvn clean verify -Djacoco.skip` |
| Skip Spotless formatting check | `mvn clean verify -Dspotless.check.skip` |
| Format code | `mvn spotless:apply` |
| Generate license headers | `mvn license:format` |## Release
1. Go to the [release workflow][release-workflow]
2. Click the gray Run workflow button on the righthand side
3. Choose:
* **use workflow from**: branch `master`
* **Git repository**: `streamnative/oxia-java`
* **JDK version**: `17`
4. Click the green Run workflow button### Questions
* **Q: _Why do we publish it in `streamnative-ci`?_**
**A:** `streamnative-ci` repo has some secrets and scripts to use streamnative bot account
* **Q: _What can I do if want to put the release `nar` package to `pulsar-cloud` image?_**
**A:** Ask the EE team to add the release version in the [`images/dependencies.json`][dependencies-file] file in the [`streamnative-ci`][ci-repo] repo[oxia]: https://github.com/streamnative/oxia
[release-workflow]: https://github.com/streamnative/streamnative-ci/actions/workflows/maven-tag-deploy.yml
[dependencies-file]: https://github.com/streamnative/streamnative-ci/blob/master/images/dependencies.json
[ci-repo]: https://github.com/streamnative/streamnative-ci