The project is in a healthy, maintained state
Low level Ruby client for Elastic. See the `elasticsearch` or `elastic-enterprise-search` gems for full integration.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
 Dependencies
 Project Readme

Elastic Transport

Run tests

This gem provides a low-level Ruby client for connecting to an Elastic cluster. It powers both the Elasticsearch client and the Elastic Enterprise Search client.

In the simplest form, connect to Elasticsearch running on http://localhost:9200 without any configuration:

require 'elastic/transport'

client = Elastic::Transport::Client.new
response = client.perform_request('GET', '_cluster/health')
# => #<Elastic::Transport::Transport::Response:0x007fc5d506ce38 @status=200, @body={ ... } >

Refer to the official documentation on Elastic Transport.

Refer to Advanced Configuration to read about more configuration options.

Compatibility

This gem is compatible with maintained Ruby versions. See Ruby Maintenance Branches. We don't provide support to versions which have reached their end of life.

Development and Community

For local development, clone the repository and run bundle install. See rake -T for a list of available Rake tasks for running tests, generating documentation, starting a testing cluster, etc.

Bug fixes and features must be covered by unit tests.

A rake task is included to launch an Elasticsearch cluster with Docker. You need to install docker on your system and then run:

$ rake docker:start[VERSION]

E.g.:

$ rake docker:start[8.0.0-alpha1]

You can find the available version in Docker @ Elastic.

To run tests, launch a testing cluster and use the Rake tasks:

time rake test:unit
time rake test:integration

Use COVERAGE=true before running a test task to check coverage with Simplecov.

Github's pull requests and issues are used to communicate, send bug reports and code contributions.

License

This software is licensed under the Apache 2 license.