https://github.com/lrz-badw/lrzcc-py

Command line client for LRZ specific features of the Compute Cloud (cc.lrz.de).

https://github.com/lrz-badw/lrzcc-py

Science Score: 13.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.4%) to scientific vocabulary
Last synced: 4 months ago · JSON representation

Repository

Command line client for LRZ specific features of the Compute Cloud (cc.lrz.de).

Basic Info
  • Host: GitHub
  • Owner: LRZ-BADW
  • License: mit
  • Language: Python
  • Default Branch: master
  • Size: 135 KB
Statistics
  • Stars: 0
  • Watchers: 3
  • Forks: 0
  • Open Issues: 6
  • Releases: 0
Archived
Created almost 2 years ago · Last pushed over 1 year ago
Metadata Files
Readme License

README.md

lrzcc-py [deprecated - new: lrzcc]

WARNING: This Python-based CLI client has been deprecated in favor of the new Rust-based CLI client lrzcc.

Command line tool for LRZ-specific features of the LRZ Compute Cloud https://cc.lrz.de, first and foremost the budgeting system.

Installation

Install the tool via pip: bash pip install lrzcc

Usage

As a general note, use the -h/--help to find out more about the specific commands of the tool.

API Access

As with the normal Openstack CLI client you need to source your Openstack RC file to access the API. You can download it when clicking on you username in the top-right corner in the webui and then "OpenStack RC File v3".

Source it via: bash . di12abc-openrc.sh replacing di12abc with you own username, and then enter your password. Note: this stores you credentials in environment variables starting with OS_ for OpenStack.

User Workflows

Get Own User

bash lrzcc user me Note: role 1 indicates that you are a normal user, role 2 means you are a master user.

Display Cloud Usage

bash lrzcc -f json usage Note: the -f json tells the tool to simply output the JSON response from the API.

List Flavor Prices

bash lrzcc flavor-price list

Calculate Own Consumption and Cost

bash lrzcc server-consumption lrzcc server-cost

View User and Project Budget

bash lrzcc user-budget list lrzcc project-budget list

Check of Budget is Over

bash lrzcc user-budget over -dc

Show Budget Over Tree

This hierarchical view also shows a breakdown of the cost down to the individual servers and is what the webui uses: bash lrzcc -f json budget-over-tree Note: the -f json tells the tool to simply output the JSON response from the API.

Master User Workflows

List Own Project and Users

bash lrzcc project list lrzcc user list -p <project_id/name>

List Budgets of Own Project

bash lrzcc user-budget list -p <project_id/name>

List Budget Over Status of Project's Users

bash lrzcc user-budget over -p <project_id/name> -dc

Show Budget Over Tree of Project's Users

This hierarchical view also shows a breakdown of the cost down to the individual users and servers and is what the webui uses: bash lrzcc -f json budget-over-tree -p <project_id/name> Note: the -f json tells the tool to simply output the JSON response from the API.

Modify Budgets

bash lrzcc user-budget modify <user_budget_id> -a <amount> lrzcc project-budget modify <project_budget_id> -a <amount> Note: you cannot set a budget below the already acrued costs or modify the budget of a past year.

Warning

Don't rely on the fact that this is written in Python at the moment, this is going to be replaced by a corresponding Rust library + CLI application in the not so distant future.

Owner

  • Name: Leibniz Supercomputing Centre
  • Login: LRZ-BADW
  • Kind: organization
  • Location: Germany

IT Services for Science since 1962

GitHub Events

Total
Last Year

Dependencies

pyproject.toml pypi
  • argcomplete ==3.1.1
  • certifi ==2023.5.7
  • charset-normalizer ==3.2.0
  • idna ==3.4
  • requests ==2.31.0
  • tabulate ==0.9.0
  • urllib3 ==2.0.3