#server-api #cloud #compute #lrz-specific #openstack-based #budgeting

bin+lib avina-api

Rust API server for the LRZ-specific features of the Openstack-based LRZ Compute Cloud

2 unstable releases

0.8.0 Jun 5, 2025
0.1.0 Jun 5, 2025

#912 in HTTP server

MIT license

400KB
12K SLoC

avina-api

API server application for the Openstack-based LRZ Compute Cloud, https://cc.lrz.de, first and foremost the budgeting system.

Development

Requirements

To work with the API locally you need Docker as well as the MariaDB client. The init.sh script is then used to setup and migrate a database for you.

scripts/init.sh

This is required prior to both cargo test and running the API locally.

Running the API server locally

source admin-openrc.sh
source scripts/config_env.sh

# optional: insert database dump
scripts/enter_db.sh
source lrz_budgeting.sql
quit

RUST_LOG=info cargo run --bin avina-api | bunyan

Calling the local API server

source admin-openrc.sh
cargo run --bin avina -- -u http://localhost:8000/api -r http://localhost:8000/api user me

Dependencies

~69MB
~1.5M SLoC