Open cbruno10 opened 1 month ago
Hi @cody / @timoguin ,
I have pushed some rough changes to the issue-29
branch based on the design discussed above.
It would be great if you could test it out in this branch and share your feedback with us. Once the table design is finalized, I will push the cleanup code changes and documentation updates before raising the PR.
service_id
is no longer supported in the connection config.fastly_service
table has been updated to list all services accessible with the api_key
.service_id
and service_version
to populate the column values.fastly_service
as a parent hydrate, the fastly_service_version
table is used because we need both the Service ID and Service Version to make API calls.service_id
and service_version
as required qualifiers, since they were previously obtained from the connection config.fastly_acl
table, we cannot use fastly_service_version
as a parent hydrate because:
fastly_acl_entry
table uses fastly_acl
as a parent hydrate.fastly_acl
table.The overall functionality will remain the same. Previously, results were obtained per connection per service ID. Now, results will be obtained per connection per api_key
.
The Engineer role is required to list services.
I have invited a user with the "Access to billing, stats & analytics" role but am still able to list services with that user's API Key.
Steps to test the changes in the issue-29
branch:
issue-29
branch: git checkout issue-29@cody, please review the table design and let me know if it looks good. Any suggestions would be highly appreciated.
Thanks!
Hi @cbruno10, @timoguin,
I wanted to provide an update: I've pushed additional changes to the same branch, issue-29
, to support backward compatibility. Since we aren't sure how users are utilizing this plugin, removing support for the service_id
from the connection config might cause issues in their environments. The changes are currently in this PR.
Changes overview:
service_id
and service_version
are now OPTIONAL, meaning users can choose to specify them in the connection config or not.service_version
is specified, an error will indicate that 'service_id' must be set in the connection configuration if 'service_version' is specified. Edit your connection configuration file and then restart steampipe
.service_id
is specified, we'll retrieve the row for the active version only (as per existing functionality).Please let me know if these changes look good or if any adjustments are needed. I'm open to making changes based on your suggestions.
Thanks!
Is your feature request related to a problem? Please describe. Currently, each connection requires a service ID, which makes it difficult to get all service info (which can be done with an aggregator, but feels a bit cumbersome). Also, for resources that don't require service information, a user shouldn't need to pass service info into the connection.
Describe the solution you'd like
service_id
in the connection configfastly_service
, that lists services and gets info for services (possibly no change to the existing table)listServices
function in thefastly_service
table could be used as a parent hydrate for any other table that requires a service ID, so it’d list all resources of that table type for each service returned fromlistServices
fastly_service
tableHowever, some possible limitations:
Describe alternatives you've considered Creating an aggregator and a connection for each service
Additional context Add any other context or screenshots about the feature request here.