ydbops
utility is used to perform various ad-hoc and maintenance operations on YDB clusters.
For comprehensive documentation, refer to ydb.tech
Please browse the ydbops --help
first. Then read along for examples (substitute your own values).
ydbops restart --storage \
--endpoint grpc://<cluster-fqdn> \
--ssh-args=pssh,-A,-J,<bastion-fqdn>,--ycp-profile,prod,--no-yubikey \
--verbose --hosts=<node1-fqdn>,<node2-fqdn>,<node3-fqdn>
ydbops restart --storage \
--endpoint grpc://<cluster-fqdn> \
--ssh-args=pssh,-A,-J,<bastion-fqdn>,--ycp-profile,prod,--no-yubikey \
--verbose
ydbops run \
--endpoint grpc://<cluster-fqdn> \
--availability-mode strong --verbose --hosts=7,8 \
--payload ./tests/payloads/payload-echo-helloworld.sh
ydbops run \
--endpoint grpc://<cluster-fqdn> \
--availability-mode strong --verbose --hosts=5,6 \
--payload ./tests/payloads/payload-restart-ydbd.sh
An example of authenticating with static credentials:
export YDB_PASSWORD=password_123
ydbops restart --storage \
--endpoint grpc://<cluster-fqdn> \
--availability-mode strong --verbose --hosts=7,8 \
--user jorres --kubeconfig ~/.kube/config
- Go 1.21
changie
tool for keeping a changelog
Execute make build-in-docker
, you will get binaries for Linux and MacOS, both amd and arm.
Ginkgo testing library is used. Do:
ginkgo test -vvv ./tests
- develop a feature
- invoke
changie new
and complete a small interactive form. (Get changie from https://changie.dev ) - don't forget to changie-generated file to your PR into master branch
- Invoke Github action
create-release-pr
job, it will create a PR withCHANGELOG.md
containing all diffs - After making sure that
CHANGELOG.md
looks nice, just merge the PR from step 1, and the commit into master will be automatically tagged, and a new release with new binaries will be automatically published!