Download the PHP package renoki-co/laravel-steampipe without Composer
On this page you can find all versions of the php package renoki-co/laravel-steampipe. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package laravel-steampipe
Laravel Steampipe
Use Laravel's built-in ORM classes to query cloud resources with Steampipe, an open source CLI to instantly query cloud APIs using SQL.
🤝 Supporting
If you are using one or more Renoki Co. open-source packages in your production apps, in presentation demos, hobby projects, school projects or so, sponsor our work with Github Sponsors. 📦
🚀 Installation
You can install the package via composer:
In your config/database.php
, add a new driver:
You can define the Steampipe binary path with STEAMPIPE_BINARY
.
🙌 Usage
Steampipe is multi-vendor, multi-plugin. This means that you can interact with any cloud APIs just like yo would do with Postgres.
For it to work locally and avoid code pollution, you would want to create a model for the "tables" you would want to access the cloud APIs through.
For example, let's make a AwsRegion
model for the aws_region
table. Make sure you have installed the AWS plugin for Steampipe.
Please observe that the models are created from the table in singular, aws_region
. Usually, in Laravel you would have created the model class name directly. To break even and make the generation command easier, you should pass the table name instead of a class name.
The command will create for you an app/Steampipe/Aws/AwsRegion.php
file where you can access the model:
All SQL-like methods from Laravel ORM are available to be used as explained in the Steampipe documentation.
Models also work with the built-in model features, like hidden fields or appends.
Generation
You may generate as many models as you need. The convention is that when creating a table, it will always follow this pattern:
This way, the models will know how to access the tables. For example, for a DigitalOcean droplet it would look like this:
🐛 Testing
You will need to set up an AWS account and add AWS_ACCESS_KEY_ID
and AWS_SECRET_ACCESS_KEY
to your environment variables.
The user with the access tokens should have the following IAM policy:
To run tests:
🤝 Contributing
Please see CONTRIBUTING for details.
🔒 Security
If you discover any security related issues, please email [email protected] instead of using the issue tracker.
🎉 Credits
- Alex Renoki
- All Contributors
All versions of laravel-steampipe with dependencies
illuminate/database Version ^8.83|^9.0.1
illuminate/support Version ^8.83|^9.0.1
symfony/process Version ^5.4|^6.0