Skip to main content

Useful tools to interact with Resource Locker Project

Project description

Useful tools to work with Rlocker project API

Quick Start

Normal installation

pip install rlockertools

Setup

git clone https://github.com/red-hat-storage/rlockertools.git
cd rlockertools
python -m venv venv
source venv/bin/activate
pip install ./
rlock --help

usage: rlock [-h] --server-url SERVER_URL --token TOKEN [--release] [--lock] [--resume-on-connection-error] [--signoff SIGNOFF] [--priority PRIORITY] [--search-string SEARCH_STRING] [--link LINK] [--interval INTERVAL] [--attempts ATTEMPTS]

optional arguments: -h, --help show this help message and exit --server-url SERVER_URL The URL of the Resource Locker Server --token TOKEN Token of the user that creates API calls --release Use this argument to release a resource --lock Use this argument to lock a resource --resume-on-connection-error Use this argument in case you don't want to break queue execution in the middle of waiting for queue status being FINISHED --signoff SIGNOFF Use this when lock=True, locking a resource requires signoff --priority PRIORITY Use this when lock=True, specify the level of priority the resource should be locked --search-string SEARCH_STRING Use this when lock=True, specify the lable or the name of the lockable resource --link LINK Use this when lock=True, specify the link of the CI/CD pipeline that locks the resource --interval INTERVAL Use this when lock=True, how many seconds to wait between each call while checking for a free resource --attempts ATTEMPTS Use this when lock=True, how many times to create an API call that will check for a free resource


## Usage Examples

### To add a queue for locking a resource

```bash
rlock --lock --server-url=your.rlocker.instance.com --token=YOURTOKEN --search-string=nameorlabel --signoff=YOURUNIQUESIGNOFF --priority=3 --interval=15 --attempts=15

To release a locked resource (filtration by signoff only)

rlock --release --server-url=your.rlocker.instance.com --token=YOURTOKEN --signoff=YOURUNIQUESIGNOFF

Change log

[0.3.8] - 2021-03-15

Initial build

[0.3.9] - 2021-07-15

Move to new repo + bug fix

[0.3.10] - 2021-07-15

Fix build issue

[0.3.11] - 2021-07-19

Suppress the logs Show safe errors when beating a queue returns !=200 status code

[0.4] - 2022-04-12

Allow **datakwargs in the change queue method. This is necessary to allow modification of the data section once a queue is changing

[0.4.1] - 2022-04-13

Show more output in get_queue method in case of non 200 status code

[0.4.2] - 2022-04-17

Address item assignment for str, should be fixed to a dictionary in change queue method

[0.4.3] - 2022-04-28

Adding log file in order to track after the queue id number once executing from the rlock entrypoint. Reason: In order to to API calls about the queue, we need to save it in some readable location

[0.4.4] - 2022-06-09

Adding support for --check argument which will return if the given --search-string has available resources by label or a name. Commit number: #15

Usage example: rlock --check --search-string=aws-east-2 --token=$token --server-url=$SERVER_URL

[0.4.5] - 2022-07-26

Fixing JSON parsing for the data section in a queue, which was not fixed totally in 0.4.2

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rlockertools-0.4.5.tar.gz (10.7 kB view details)

Uploaded Source

Built Distribution

rlockertools-0.4.5-py3-none-any.whl (10.9 kB view details)

Uploaded Python 3

File details

Details for the file rlockertools-0.4.5.tar.gz.

File metadata

  • Download URL: rlockertools-0.4.5.tar.gz
  • Upload date:
  • Size: 10.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.25.1 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.4

File hashes

Hashes for rlockertools-0.4.5.tar.gz
Algorithm Hash digest
SHA256 21514a0dceb0b4742481d174f8e91d00e63abed89c080d3de44ae48441322053
MD5 f7be917a205296e8b8951b7f213cc6f8
BLAKE2b-256 df419f81e84baa7775452bdc5068f5aad834de319dd6a83cd934f510b5d71615

See more details on using hashes here.

File details

Details for the file rlockertools-0.4.5-py3-none-any.whl.

File metadata

  • Download URL: rlockertools-0.4.5-py3-none-any.whl
  • Upload date:
  • Size: 10.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 colorama/0.4.4 importlib-metadata/4.6.4 keyring/23.5.0 pkginfo/1.8.2 readme-renderer/34.0 requests-toolbelt/0.9.1 requests/2.25.1 rfc3986/1.5.0 tqdm/4.57.0 urllib3/1.26.5 CPython/3.10.4

File hashes

Hashes for rlockertools-0.4.5-py3-none-any.whl
Algorithm Hash digest
SHA256 dfbff55fedb3bd39a0f528d7223edeca57ae1b20821b561ce2e397837ae8bdef
MD5 4815f9a087a45fb2a1222204e25aea3e
BLAKE2b-256 e98bb3726e274b35560d1b914f7a66bfe1f42700b1d459443df46fa03a44142f

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page