/scylla-cqlsh

A fork of the cqlsh code

Primary LanguagePythonApache License 2.0Apache-2.0

scylla-cqlsh

Command line tool to connect to scylladb (or Apache Cassandra)

A fork of the cqlsh tool from https://github.com/apache/cassandra

Libraries.io dependency status for latest release GitHub branch checks state PyPI

Quickstart

pip install scylla-cqlsh

cqlsh ${SCYLLA_HOST} -e 'SELECT * FROM system.local'

# or just using it interactively
cqlsh ${SCYLLA_HOST} 

# or using it with scylla-cloud
cqlsh --cloudconf [path to connection bundle downloaded]

# running with docker image interactively
docker run -it scylladb/scylla-cqlsh ${SCYLLA_HOST}

Contributing

Feel free to open a PR/issues with suggestion and improvement Try covering you suggested change with a test, and the instruction for running tests are below

Testing

Dependent

  • python 2.7/3.x (recommend virtualenv)
  • minimum java8
pip install -e .
pip install -r pylib/requirements.txt

# run scylla with docker
docker run  -d scylladb/scylla:latest --cluster-name test

export DOCKER_ID=$(docker run -d scylladb/scylla:latest --cluster-name test)
export CQL_TEST_HOST=$(docker inspect --format='{{ .NetworkSettings.IPAddress }}' ${DOCKER_ID})
while ! nc -z ${CQL_TEST_HOST} 9042; do   
  sleep 0.1 # wait for 1/10 of the second before check again
done
          
 
# run scylla with CCM
ccm create cqlsh_cluster -n 1 --scylla --version unstable/master:latest
ccm start

pytest

Creation of the repo

A reference on how this we forked out of cassandra repo So we can repeat the process if we want to bring change back it

git clone  -b trunk --single-branch git@github.com:apache/cassandra.git
sudo apt-get install git-filter-repo
cd cassandra

git filter-repo --path bin/cqlsh --path bin/cqlsh.py --path pylib/