Skip to content

tamuc-ironsight/ironsight-api-v2

Repository files navigation

Ironsight API v2

FastAPI backend for managing hypervisor virtual machines, containers, users, networks, etc.

⚠️ Warning ⚠️

This is NOT a finished project, it is highly experimental and unreliable! Do NOT use this in a production environment!

Currently supported hypervisors

Proxmox

Environment Variables

To run this project, you will need to add the following environment variables to your .env file

HYPERVISOR

HYPERVISOR_URL (without the trailing slash /)

HYPERVISOR_AUTH

HYPERVISOR_TOKEN

Hypervisors use different forms of authentication, but for Proxmox HYPERVISOR_AUTH is holds the ticket while HYPERVISOR_TOKEN holds the CSRF Prevention Token More details

Deployment

To deploy this project run

uvicorn main:ironsight_api --reload

Ironsight API Migration Progress

  • getVMList() -> get_vms()
  • getLabList()
  • getTemplateList()
  • getNewsList()
  • getDocCount()
  • getCPUUsage() -> get_nodes()
  • getNetworkUsage() -> get_Nodes()
  • getMemoryUsage() -> get_nodes()
  • getMetrics() -> get_nodes()
  • getDiskUsage() -> get_nodes()
  • getVMCPUUsage() -> get_vm_by_id()/get_vm_by_name()
  • getVMMemoryUsage() -> get_vm_by_id()/get_vm_by_name()
  • getVMNetworkPacketsReceived() -> get_vm_by_id()/get_vm_by_name()
  • getVMNetworkPacketsSent() -> get_vm_by_id()/get_vm_by_name()
  • getNumVMsOn()
  • getNumVMs()
  • getVMsOn()
  • getLabOverview()
  • getCourseList()
  • getTags()
  • getUsersList()
  • getRoles()
  • getPermissions()
  • getHarvesterVMList()
  • getActivityLog()
  • getBashHistory()
  • getRunningProcesses()
  • getFileMonitoring()
  • handleEvent() (Seek alternative)
  • postActivityLog()
  • powerOnVM()
  • authenticate()

API Reference

License

MIT

Contributing

Contributions are always welcome!

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages