npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@csermet/multiprovider

v0.98.0

Published

cloud-graph provider plugin for AWS used to fetch AWS cloud data.

Downloads

1,397

Readme

CloudGraph AWS Provider

Use the CloudGraph AWS Provider to scan and normalize cloud infrastructure using the AWS SDK

Docs

CloudGraph Readme

💻 Full CloudGraph Documentation Including AWS Examples

Install

Install the aws provider in CloudGraph

cg init aws

Authentication

Authenticate the CloudGraph AWS Provider any of the following ways:

  • Credentials from env variables: AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, AWS_SESSION_TOKEN
  • Credentials found in the credentials under ~/.aws (any profile, defaults to default)

CloudGraph needs read permissions in order to ingest your data. To keep things easy you can use the same permissions that we use internally when we run CloudGraph to power AutoCloud. Here are the AWS Docs for generating the correct Role (feel free to leave out AutoCloud specific configuration).

Multi Account

CloudGraph is able to scan multiple AWS accounts at once. This is done by setting up multiple profiles in your ~/.aws/credentials file and then selecting all the profiles you want to crawl when running cg init. All resources will be tagged with an accountId so you can query resources specific to an account or query resources across accounts!

Configuration

CloudGraph creates a configuration file at:

  • UNIX: ~/.config/cloudgraph/.cloud-graphrc.json
  • Windows: %LOCALAPPDATA%\cloudgraph/.cloud-graphrc.json

NOTE: CloudGraph will output where it stores the configuration file and provider data as part of the cg init command

CloudGraph will generate this configuration file when you run cg init aws. You may update it manually or by running cg init aws again.

"aws": {
  "profileApprovedList": [
      "default",
      "master",
      "sandbox"
    ], // Optional, defaults to the default profile
    "regions": "us-east-1,us-east-2,us-west-2",
    "resources": "alb,apiGatewayResource,apiGatewayRestApi,apiGatewayStage,appSync,asg,billing,cognitoIdentityPool,cognitoUserPool,cloudFormationStack,cloudFormationStackSet,cloudfront,cloudwatch,ebs,ec2Instance,eip,elb,igw,kinesisFirehose,kinesisStream,kms,lambda,nat,networkInterface,route53HostedZone,route53Record,routeTable,sg,vpc,sqs,s3"
  }
}

CloudGraph AWS Provider will ask you what regions you would like to crawl and will by default crawl for all supported resources in selected regions in the default account. You can update the regions, resources, or profile fields in the cloud-graphrc.json file to change this behavior. You can also select which resources to crawl in the cg init aws command by passing the the -r flag: cg init aws -r

Supported Services

| Service | Relations | | --------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | | acm | | | alb | ec2, elasticBeanstalkEnv, route53Record, securityGroup, subnet, vpc, wafV2WebAcl | | apiGatewayDomainName | apiGatewayHttpApi, apiGatewayRestApi | | apiGatewayHttpApi | apiGatewayDomainName | | apiGatewayRestApi | apiGatewayDomainName, apiGatewayResource, apiGatewayStage, route53Record | | apiGatewayStage | apiGatewayRestApi, wafV2WebAcl | | apiGatewayResource | apiGatewayRestApi | | appSync | cognitoUserPool, dynamodb, iamRole, lambda, rdsCluster, wafV2WebAcl | | asg | ebs, ec2, elasticBeanstalkEnv, iamRole, securityGroup, subnet | | athenaDataCatalog | | | clientVpnEndpoint | securityGroup | | cloud9 | | | cloudformationStack | cloudformationStack, iamRole, sns | | cloudformationStackSet | iamRole | | cloudfront | cloudwatch, elb, s3 | | cloudtrail | cloudwatch, cloudwatchLog, kms, s3, sns | | cloudwatch | cloudfront, cloudtrail, cloudwatchLog, sns | | cloudwatchLog | cloudtrail, cloudwatch, ecsCluster, elasticSearchDomain, kms, managedAirflow, rdsDbInstance | | codebuild | iamRole, kms, vpc, securityGroup, subnet | | cognitoIdentityPool | iamRole, iamOpenIdConnectProvider, iamSamlProvider, elasticSearchDomain | | cognitoUserPool | appSync, elasticSearchDomain, lambda | | configurationRecorder | iamRole | | customerGateway | vpnConnection | | dynamodb | appSync, iamRole, kms | | dmsReplicationInstance | securityGroup, subnet, vpc, kms | | ebs | asg, ec2, emrInstance, ebsSnapshot | | ebsSnapshot | ebs, kms | | ec2 | alb, asg, ebs, eip, emrInstance, eksCluster, elasticBeanstalkEnv, iamInstanceProfile, iamRole, networkInterface, securityGroup, subnet, systemsManagerInstance, vpc, ecsContainer | | ecr | | | ecsCluster | cloudwatchLog, ecsService, ecsTask, ecsTaskSet, kms, s3 | | ecsContainer | ecsTask, ec2 | | ecsService | ecsCluster, ecsTaskDefinition, ecsTaskSet, elb, iamRole, securityGroup, subnet, vpc | | ecsTask | ecsContainer, ecsCluster, ecsTaskDefinition, iamRole | | ecsTaskDefinition | ecsService, ecsTask, ecsTaskSet, iamRole | | ecsTaskSet | ecsCluster, ecsService, ecsTaskDefinition | | efs | kms | | efsMountTarget | networkInterface, subnet, vpc | | eip | ec2, networkInterface, vpc | | eksCluster | ec2, iamRole, kms, securityGroup, subnet, vpc | | elastiCacheCluster | securityGroup, subnet, vpc | | elastiCacheReplicationGroup | kms | | elasticBeanstalkApp | elasticBeanstalkEnv, iamRole | | elasticBeanstalkEnv | alb, asg, ec2, elb, elasticBeanstalkApp, iamRole, sqs | | elasticSearchDomain | cloudwatchLog, cognitoIdentityPool, cognitoUserPool, iamRole, kms, securityGroup, subnet, vpc | | elb | cloudfront, ecsService, elasticBeanstalkEnv, securityGroup, subnet, vpc | | emrCluster | iamRole, kms, subnet | | emrInstance | ebs, ec2 | | emrStep | | | flowLog | vpc, iamRole, subnet, networkInterface | | glueJob | iamRole | | glueRegistry | | | guardDutyDetector | iamRole | | iamAccessAnalyzer | | | iamInstanceProfile | ec2, iamRole | | iamPasswordPolicy | | | iamSamlProvider | cognitoIdentityPool | | iamOpenIdConnectProvider | cognitoIdentityPool | | iamServerCertificate | | | iamUser | iamGroup | | iamPolicy | iamRole, iamGroup | | iamRole | appSync, asg, cloudformationStackSet, codebuild, cognitoIdentityPool, configurationRecorder, ec2, ecsTask, ecsTaskDefinition,iamInstanceProfile, iamPolicy, eksCluster, ecsService, emrCluster, flowLog, glueJob, managedAirflow, s3, sageMakerNotebookInstance, systemsManagerInstance, guardDutyDetector, lambda, kinesisFirehose, rdsCluster, rdsDbInstance, elasticBeanstalkApp, elasticBeanstalkEnv, elasticSearchDomain | | iamGroup | iamUser, iamPolicy | | igw | vpc | | iot | | | kinesisFirehose | kinesisStream, s3, iamRole | | kinesisStream | kinesisFirehose | | kms | cloudtrail, cloudwatchLog, codebuild, ecsCluster, efs, eksCluster, elastiCacheReplicationGroup, elasticSearchDomain, emrCluster, managedAirflow, lambda, rdsCluster, rdsClusterSnapshot, rdsDbInstance, sns, sageMakerNotebookInstance, secretsManager, dmsReplicationInstance, redshiftCluster, s3, ebsSnapshot | | lambda | appSync, cognitoUserPool, kms, s3, secretsManager, securityGroup, subnet, vpc, iamRole | | managedAirflow | cloudwatchLog, iamRole, kms, securityGroups, subnet, s3 | | managedPrefixList | | | mskCluster | securityGroup, subnet | | nacl | vpc | | natGateway | networkInterface, subnet, vpc | | networkInterface | ec2, eip, efsMountTarget, natGateway, sageMakerNotebookInstance, subnet, vpc, vpcEndpoint, flowLog, securityGroup | | organization | | rdsCluster | appSync, rdsClusterSnapshot, rdsDbInstance, route53HostedZone, securityGroup, subnet, iamRole, kms | | rdsClusterSnapshot | kms, rdsCluster, vpc | | rdsDbInstance | kms, iamRole, rdsCluster, securityGroup, vpc, subnet, cloudwatchLog | | redshiftCluster | kms, vpc | | route53Record | alb, apiGatewayRestApi, elb, route53HostedZone | | route53HostedZone | rdsCluster, route53Record, vpc | | routeTable | subnet, vpc, vpcEndpoint | | sageMakerExperiment | | | sageMakerNotebookInstance | iamRole, kms, networkInterface, subnet, securityGroup | | sageMakerProject | | | s3 | cloudfront, cloudtrail, ecsCluster, iamRole, kinesisFirehose, kms, lambda, managedAirflow, sns, sqs | | secretsManager | kms, lambda | | securityGroup | alb, asg, clientVpnEndpoint, codebuild, dmsReplicationInstance, ecsService, lambda, ec2, elasticSearchDomain, elb, rdsCluster, rdsDbInstance, eksCluster, elastiCacheCluster, managedAirflow, sageMakerNotebookInstance, networkInterface, vpcEndpoint, mskCluster | | securityHub | | | ses | | | sns | kms, cloudtrail, cloudwatch, s3 | | sqs | elasticBeanstalkEnv, s3 | | subnet | alb, asg, codebuild, dmsReplicationInstance, ec2, ecsService, efsMountTarget, elastiCacheCluster, elasticSearchDomain, elb, lambda, managedAirflow, natGateway, networkInterface, rdsCluster, sageMakerNotebookInstance, routeTable, vpc, vpcEndpoint, eksCluster, emrCluster, flowLog, mskCluster | | systemsManagerInstance | ec2, iamRole | | systemsManagerDocument | | | transitGateway | transitGatewayAttachment, transitGatewayRouteTable, vpnConnection | | transitGatewayAttachment | transitGateway, transitGatewayRouteTable, vpc, vpnConnection | | transitGatewayRouteTable | transitGateway, transitGatewayAttachment | | vpc | alb, codebuild, dmsReplicationInstance, ec2, eip, elb, ecsService, efsMountTarget, eksCluster igw, elastiCacheCluster, elasticSearchDomain, lambda, nacl, natGateway, networkInterface, rdsClusterSnapshot, rdsDbInstance, redshiftCluster, route53HostedZone, routeTable, subnet, flowLog, vpnGateway, transitGatewayAttachment, vpcEndpoint, vpcPeeringConnection | | vpcEndpoint | networkInterface, routeTable, securityGroup, subnet, vpc | | vpcPeeringConnection | vpc | | vpnConnection | customerGateway, transitGateway, transitGatewayAttachment, vpnGateway | | vpnGateway | vpc, vpnConnection | | wafV2WebAcl | appSync, apiGatewayStage, alb |

cloudgraph-provider-multiprovider