Giter Club home page Giter Club logo

cloudlens's People

Contributors

aanamshaikh avatar abrar-ahmed7 avatar chinmay185 avatar chinmaysomani07 avatar flavioelawi avatar jdk2588 avatar kalpeshdeo avatar pratikjethe avatar ramanareddy0m avatar shubhamrasal avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

cloudlens's Issues

Add support for localstack

To use cloudlens with localstack use the aws sub-command with --localstack or -l flag


go run main.go aws --localstack

[Bug] Doesn't work with IAM roles

Context

I have a IAM user in account1 and to access resources in account2 I have set up access as described here - IAM tutorial: Delegate access across AWS accounts using IAM roles. I was unable to use cloudlens to access resources in account2, when the same shared configuration and credentials file(~/.aws/config and ~/.aws/credentials) works with AWS CLI.

Expected

cloudlens should deal with shared configuration and credentials similar to AWS CLI/AWS API

Actual

cloudlens is not able to work with profiles which assume roles.

Steps to reproduce

  1. Follow the guide - IAM tutorial: Delegate access across AWS accounts using IAM roles to setup the users/roles.
  2. Create the following configuration file - ~/.aws/config
    # Credentials specified
    [profile source]
    region=us-east-1
    
    # No credentials
    [profile sandbox-dev]
    region = us-east-1
    role_arn = arn:aws:iam::123456789123:role/S3Admin
    source_profile = source
    
  3. Create the following credentials file - ~/.aws/credentials
    [source]
    aws_access_key_id=accessKeyID
    aws_secret_access_key=secretAccessKey
    

cloudlens doesn't even detect the sandbox-dev profile.

Add Google Cloud functionality

Need ability to add Google Cloud functionality.

To begin with, we will support

  • VM Intances
  • Disks
  • Google Cloud Storage (GCS)

Error: panic: aws session init failed -- AWS Credentials expired

I installed the tool and launched it,

$ brew install one2nc/cloudlens/cloudlens
$ cloudlens

I didn't have a default profile set in ~/.aws/credentials so I got message

Profile 'default' not found, using profile 'personal'...

I used --profile arg and I got this error

Credentials have expired
panic: aws session init failed -- AWS Credentials expired

goroutine 1 [running]:
github.com/one2nc/cloudlens/cmd.run(0x1020e1d00?, {0x10163a704?, 0x0?, 0x0?})
        github.com/one2nc/cloudlens/cmd/root.go:73 +0x4c8
github.com/spf13/cobra.(*Command).execute(0x1020e1d00, {0x14000190200, 0x0, 0x0})
        github.com/spf13/[email protected]/command.go:920 +0x5b0
github.com/spf13/cobra.(*Command).ExecuteC(0x1020e1d00)
        github.com/spf13/[email protected]/command.go:1044 +0x35c
github.com/spf13/cobra.(*Command).Execute(...)
        github.com/spf13/[email protected]/command.go:968
github.com/one2nc/cloudlens/cmd.Execute()
        github.com/one2nc/cloudlens/cmd/root.go:42 +0x28
main.main()
        github.com/one2nc/cloudlens/main.go:8 +0x1c

Same error when I copied my AWS credentials to default in ~/.aws/credentials.

Machine Info

MaC OSX M1 Ventura 13.0

Filter/search functionality

Hello, It would be a nice thing to have a filter/search functionality.
I'm using K9s on daily basis and one of the key-features a like is ability to filter resources by using "/" shortcut.
This really helps to navigate and find the right resource much faster.

Another thig, is some resources like ec2 instances, VPC and subnets don't have Name displayed. I know that in some cases this Tag is not mandatory, but adding Name helps to identify the resource better.

immediate panic after selecting a provider

Installed with brew, version 0.1.4
First time run, select either provider from the text menu. Immediate go panic and crash. Running on Mac M1, Monterey.
A colleague has the same issue on an Ubuntu VM running on Windows.

14:36:19 ❯ cloudlens
panic: runtime error: index out of range [0] with length 0 [recovered]
	panic: runtime error: index out of range [0] with length 0

goroutine 1 [running]:
github.com/derailed/tview.(*Application).Run.func1()
	github.com/derailed/[email protected]/application.go:243 +0x50
panic({0x101dc8c20, 0x14000198390})
	runtime/panic.go:884 +0x204
github.com/one2nc/cloudlens/internal/view.(*App).handleGCP(0x14000c099a0)
	github.com/one2nc/cloudlens/internal/view/app.go:187 +0x648
github.com/one2nc/cloudlens/internal/view.(*App).handleCloudSelection(0x14000c099a0, {0x101518676?, 0x0?})
	github.com/one2nc/cloudlens/internal/view/app.go:227 +0x9c
github.com/one2nc/cloudlens/internal/view.(*App).showCloudSelectionScreen.func2()
	github.com/one2nc/cloudlens/internal/view/app.go:213 +0x2c
github.com/derailed/tview.(*List).InputHandler.func1(0x14000c7a400?, 0x14000794050?)
	github.com/derailed/[email protected]/list.go:582 +0xa8
github.com/derailed/tview.(*Box).WrapInputHandler.func1(0x140005e8480?, 0xd4ee60?)
	github.com/derailed/[email protected]/box.go:182 +0x54
github.com/derailed/tview.(*Flex).InputHandler.func1(0x14000c7a200?, 0x14000794040?)
	github.com/derailed/[email protected]/flex.go:261 +0xd4
github.com/derailed/tview.(*Box).WrapInputHandler.func1(0x14000c2aae0?, 0x1008ca2ec?)
	github.com/derailed/[email protected]/box.go:182 +0x54
github.com/derailed/tview.(*Flex).InputHandler.func1(0x140001c1f00?, 0x14000794030?)
	github.com/derailed/[email protected]/flex.go:261 +0xd4
github.com/derailed/tview.(*Box).WrapInputHandler.func1(0x14000c2a990?, 0x10ac87cc8?)
	github.com/derailed/[email protected]/box.go:182 +0x54
github.com/derailed/tview.(*Pages).InputHandler.func1(0x10?, 0x101c9a6c0?)
	github.com/derailed/[email protected]/pages.go:332 +0xa8
github.com/derailed/tview.(*Box).WrapInputHandler.func1(0x14000c2a330?, 0x14000d7fb60?)
	github.com/derailed/[email protected]/box.go:182 +0x54
github.com/derailed/tview.(*Application).Run(0x140000341c0)
	github.com/derailed/[email protected]/application.go:334 +0x70c
github.com/one2nc/cloudlens/internal/view.(*App).Run(0x14000c099a0)
	github.com/one2nc/cloudlens/internal/view/app.go:296 +0x80
github.com/one2nc/cloudlens/cmd.initView()
	github.com/one2nc/cloudlens/cmd/root.go:57 +0xd0
github.com/one2nc/cloudlens/cmd.run(0x102d9bbe0?, {0x10151bcb2?, 0x0?, 0x0?})
	github.com/one2nc/cloudlens/cmd/root.go:51 +0x1c
github.com/spf13/cobra.(*Command).execute(0x102d9bbe0, {0x140001901d0, 0x0, 0x0})
	github.com/spf13/[email protected]/command.go:920 +0x5b0
github.com/spf13/cobra.(*Command).ExecuteC(0x102d9bbe0)
	github.com/spf13/[email protected]/command.go:1044 +0x35c
github.com/spf13/cobra.(*Command).Execute(...)
	github.com/spf13/[email protected]/command.go:968
github.com/one2nc/cloudlens/cmd.Execute()
	github.com/one2nc/cloudlens/cmd/root.go:44 +0x58
main.main()
	github.com/one2nc/cloudlens/main.go:8 +0x1c

not reading AWS SSO credentials

I am not using IAM access key and secret for AWS, but AWS SSO. This means that there is no ~/.aws/credentials file.

I see the following error

❯ cloudlens
panic: failed to read profiles -- open /Users/athiqur.rahman/.aws/credentials: no such file or directory

goroutine 1 [running]:
github.com/one2nc/cloudlens/cmd.readAndValidateProfile()
        github.com/one2nc/cloudlens/cmd/root.go:90 +0x2c5
github.com/one2nc/cloudlens/cmd.run(0x22f4ce0?, {0x1a280ec?, 0x0?, 0x0?})
        github.com/one2nc/cloudlens/cmd/root.go:63 +0x375
github.com/spf13/cobra.(*Command).execute(0x22f4ce0, {0xc000034240, 0x0, 0x0})
        github.com/spf13/[email protected]/command.go:920 +0x847
github.com/spf13/cobra.(*Command).ExecuteC(0x22f4ce0)
        github.com/spf13/[email protected]/command.go:1044 +0x3bd
github.com/spf13/cobra.(*Command).Execute(...)
        github.com/spf13/[email protected]/command.go:968
github.com/one2nc/cloudlens/cmd.Execute()
        github.com/one2nc/cloudlens/cmd/root.go:41 +0x25
main.main()
        github.com/one2nc/cloudlens/main.go:8 +0x17

Let me know if you require further information

wrong contents in help page

There are wrong contents in help page.

image

Some services and aliases are wrong

ec2:s should be EC2 snapshot
ec2:i should be EC2 Image

panic: failed to read profiles -- NO PROFILES FOUND

I am using AWS SSO with profiles, but I am getting following errors:

cloudlens --profile master                                                                                        
panic: failed to read profiles -- NO PROFILES FOUND

goroutine 1 [running]:
github.com/one2nc/cloudlens/cmd.readAndValidateProfile()
	github.com/one2nc/cloudlens/cmd/root.go:90 +0x228
github.com/one2nc/cloudlens/cmd.run(0x105ad1d00?, {0x10502a704?, 0x2?, 0x2?})
	github.com/one2nc/cloudlens/cmd/root.go:62 +0x1f4
github.com/spf13/cobra.(*Command).execute(0x105ad1d00, {0x14000194190, 0x2, 0x2})
	github.com/spf13/[email protected]/command.go:920 +0x5b0
github.com/spf13/cobra.(*Command).ExecuteC(0x105ad1d00)
	github.com/spf13/[email protected]/command.go:1044 +0x35c
github.com/spf13/cobra.(*Command).Execute(...)
	github.com/spf13/[email protected]/command.go:968
github.com/one2nc/cloudlens/cmd.Execute()
	github.com/one2nc/cloudlens/cmd/root.go:42 +0x28
main.main()
	github.com/one2nc/cloudlens/main.go:8 +0x1c

aws sts get-caller-identity

Output:

image

Use profile based on assume

Hello,
I have in ~/.aws/config

[profile qqq]
region = eu-west-1
output = json

[profile env_prd]
source_profile = qqq
role_arn = ...

But cloudlens doesn't find profile env_prd - any way to make it work? Or any suggestions?
aws-cli works.

New versions question.

Hey!
I noticed the self update works only until the most recent version tag - meaning it's back in time with code from April.
Is it intentional, and you plan a release or an oversight and just needs a bump ?

Thanks in advance! Amazing tool. :)

Connect to instance using SSM

It would be great if you could choose an EC2 instance and connect using SSM using cloudlens (the same logic as kubectl exec in k9s)

When is the next release planned?

I am looking forward to use cloudlens along with localstack.
I can see a PR #30 being merged that takes care of that feature.

I can pull the main branch and give this a run myself.
But I also need to introduce this tool to my team, they should be able to run a brew upgrade/install command and latest release version should be available to use.

I request you to plan for a release ASAP.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.