Skip to content

zhujian0805/steampipe-plugin-openstack

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

43 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

steampipe-plugin-openstack

A Steampipe plugin to query OpenStack data as you would a relational database.

At the moment you can run queries such as:

select 
    port.id, 
    port.device_id, 
    port.device_owner, 
    proj.id, 
    proj.name, 
    vm.id, 
    vm.name 
from 
    openstack_port port 
join 
    openstack_project proj 
on 
    proj.id = port.project_id 
left outer join 
    openstack_instance vm 
on 
    port.device_id = vm.id;

Runninga query is as simple as:

$> steampipe query "select * from openstack_instance where id = 'foo';"

$> steampipe query "select vm.id, vm.name, vm.host_id, vm.flavor_sockets, vm.flavor_disk, prj.name, prj.enabled, prj.id from openstack_instance vm, openstack_project prj where vm.id = '12345678-90ab-cdef-1234-567890abcdef' and vm.project_id = prj.id;"

TODO

This plugin is still in the very early stages.

  • General understanding
    • Understand how to expunge into own table embedded entities (e.g. []SecurityGroups from port)
    • Understand how to work with JSONb data
    • Understand how to use different operators in list filter (e.g. "description match regexp")
  • Implementation
    • Skeleton
    • Configuration schema
      • Make OpenStack API micro-versions configurable
    • Create connection
      • OpenStack APIs
      • Identity APIs
      • Compute APIs
      • Network APIs
      • Block Storage APIs
    • Virtual machines instances
      • Get
      • List
        • Filter
      • Embed original flavor
      • TODO
        • Add more fields
        • Embed image info
        • Manage tags
    • Network ports
      • Get
      • List
        • Filter
      • TODO
        • Manage tags
    • Network security groups
      • Get
      • List
        • Filter
      • TODO
        • Manage tags
    • Projects
      • Get
      • List
        • Filter
      • TODO
        • Manage tags
    • Users
      • Get
      • List
        • Filter
      • TODO
        • Test
    • Block storage volumes
      • Get
      • List
        • Filter
      • TODO
        • Test
        • Manage metadata
    • Check that joins between entities work

About

A Steampipe plugin to query OpenStack data.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 99.4%
  • Other 0.6%