lensapp / lens

Lens - The way the world runs Kubernetes
https://k8slens.dev/
MIT License
22.49k stars 1.46k forks source link

Unable to skip login page #5444

Closed kallisti5 closed 4 months ago

kallisti5 commented 2 years ago

Describe the bug Suddenly unable to skip the login page.

To Reproduce Steps to reproduce the behavior:

  1. Open application

Expected behavior Able to skip. I can't even close the window given the lack of a close button :-1:

Workaround Use OpenLens found here: https://github.com/MuhammedKalkan/OpenLens

Screenshots no-skip

Environment (please complete the following information):

alex-berger commented 2 years ago

Same problem here.

kallisti5 commented 2 years ago

Here's a workaround. Add the following to your /etc/hosts file:

127.0.0.1       app.k8slens.dev

That will break the login page, and let you click the skip button in Lens 5.4.x

Lens 5.4, last known version to allow skipping login page with hack above: https://gateway.pinata.cloud/ipfs/QmVVpMtbecfsyofgKZ2buHM7Xd6Shcr6HFJWNciRLeMPVx

davidspek commented 2 years ago

@kallisti5 Thanks for the workaround. After getting past the login page with your workaround and then configuring lens to not show the login page, I could remove the entry in my /etc/hosts file and no login screen is showed.

Guess it will only be a matter of time before the option to disable the login page is removed as well.

PeteH-SeriouslyRAD commented 2 years ago

Here's a workaround. Add the following to your /etc/hosts file:

127.0.0.1       app.k8slens.dev

That will break the login page, and let you click the skip button.

I'm afraid this doesn't work, you get this error screen with no way to skip or close, only retry:

image

kallisti5 commented 2 years ago

Oof. Maybe it only works for the older 5.4 version.

Lens developers, hear me. You are accepting pull requests for your project.

The community is helping develop the application... going anti-user like this is a huge mistake if it's on purpose.

EDIT. It's on purpose, confirmed via Tweet. Take a look at k9s, kubenav, or octant for alternatives.

npasken commented 2 years ago

As someone who tested the latest beta, this was not present and I don't see any issue referenced that should have caused this. Maybe we give them a chance to respond before assuming? I too am disappointed the release version seems to force me to be stuck at this screen, but I have to believe this was not their intent.

kallisti5 commented 2 years ago

@npasken that's fair, I updated my comment to include "if it's on purpose" :-)

npasken commented 2 years ago

We do need a better way to fall back to the prior version we were using when things like this happen. @nevalla @Nokel81 @jim-docker - users who updated today with prompt are unable to use Lens. I found the last beta I was using: https://api.k8slens.dev/binaries/Lens%20Setup%205.5.0-beta.2.20220520.2.exe and without any modification to hosts file, am back up and running.

PeteH-SeriouslyRAD commented 2 years ago

Oof. Maybe it only works for the older 5.4 version.

Lens developers, hear me. You are accepting pull requests for your project.

The community is helping develop the application... going anti-user like this is a huge mistake if it's on purpose.

Ok I found an old 5.4 windows installer still available (grab it while it's there! https://api.k8slens.dev/binaries/Lens%20Setup%205.4.6-latest.20220421.1.exe). I've installed this version with the hosts file modification in place, and been able get past the login.

bpd1069 commented 2 years ago

Can I skip the Lens Spaces login dialog on the application start-up? Yes, you can. Click the Skip button in the lower-right corner of the dialog. You can also disable the login dialog. See Preferences for details.

Where is the skip button?

b2un0 commented 2 years ago

macOS: M1: https://api.k8slens.dev/binaries/Lens-5.4.6-latest.20220428.1-arm64.dmg Intel: https://api.k8slens.dev/binaries/Lens-5.4.6-latest.20220428.1.dmg

source: https://github.com/Homebrew/homebrew-cask/blob/HEAD/Casks/lens.rb

harryjms commented 2 years ago

Seems it is intentional https://twitter.com/k8slens/status/1529470612380344321?s=21&t=yvydstNYJkrBPcKI_PTrwQ

rlex commented 2 years ago

I had login page disabled in settings and looks like it was forcefully disabled after update. Now i'm getting kicked to login page with no ability to skip it.

jhoelzel commented 2 years ago

I believe, that the twitter post and the "you are not online, you cant use lens" screen confirm that, with the new version, a lens ID is in fact required.

zerowebcorp commented 2 years ago

Next twitter announcement would say we are taking lens out of github and starting to charge users $$ for license fee.

kallisti5 commented 2 years ago

Yeah.. it feels like it's time to fork Lens. Any nodejs developers interested?

npasken commented 2 years ago

Kinda sad - the login screen doesn't even work for me. It just spins and spins...

kallisti5 commented 2 years ago

https://www.boatsafe.com/boating-glossary-terms/ Fun nautical terms for a fork rebrand :laughing:

opsydev commented 2 years ago

Just adding to the voices, this is leading to an immediate removal of lens from my system.

taz77 commented 2 years ago

Yup bad move. The reasons are not justified IMHO what does me making an account have anything to do with collaboration, I work alone.

d3clan commented 2 years ago

Rendered completely useless. Tried logging in with Github, I get a "Invalid credentials" against the cluster. Registered a new account, same "Invalid credentials" error. What a shame. I use Lens to do my work. I guess it's back to kubectl for me.

lenalebt commented 2 years ago

Having a look for alternatives, I found https://github.com/vmware-tanzu/octant (through https://twitter.com/disconn3ct/status/1529487362828509184) - not yet into the details and unsure whether it's a good replacement, but I think it should be somewhere here that anyone can find it to try.

rlex commented 2 years ago

k9s is another good option, if you're OK with cli interface https://github.com/derailed/k9s

HighWatersDev commented 2 years ago

Here's another option which is pretty good: https://kubenav.io/

PhilippKuntschik commented 2 years ago

why can't we just fork the Lens repository?

0dragosh commented 2 years ago

It's getting SaaSified, the writing's been on the wall a while now.

I recommend the k9s alternative for anyone looking for a similar product.

kallisti5 commented 2 years ago

why can't we just fork the Lens repository?

We definitely can.. however we need someone well versed in nodejs to step up to maintaining it. It's probably a moderate project to maintain, but whomever did would have a lot of support via pull requests and community contribution.

I jokingly forked it, but pretty quickly realized there are a bunch of weird node requirements (really old nodejs 14.x, etc) to even build it. You would think the developers would be more focused on maintaining the app instead of just trying to turn it into a profit center... but here we are.

Hell, if someone steps up and maintains it without a login page and the SaaS crap, i'd gladly donate $5 - $10 a month.

Here's another option which is pretty good: https://kubenav.io/

I just installed it and gave it a try. Definitely a solid competitor (and it's written in go which is nice). The UI definitely needs some work though, and the "open a quick shell in a pod" feature is missing.

respectTheCode commented 2 years ago

Based on this I have uninstalled and looks like Octant is a better fit for me anyways.

asmith-v commented 2 years ago

Mandatory accounts are a dealbreaker for me. If this is the way Lens is taking things, I'll be ditching Lens.

JoelBirlingmairBeastCode commented 2 years ago

Mandatory accounts are a dealbreaker for me. If this is the way Lens is taking things, I'll be ditching Lens.

I agree

JoelBirlingmairBeastCode commented 2 years ago

in the latest version you can press CTRL + Shift + I to open the chromium dev tools since this is an electron app.

From there you can open the elements tab and find the body->div element with the role presentation and right click it and choose hide element to bypass the login page.

I still need to verify a way to make it not auto-update again

image

matslarson commented 2 years ago

Just wanted to add my voice to the list of users calling foul here. I have downgraded back to the previous version while I check out alternatives and will not continue using Lens if this requirement is not removed promptly.

kaiwetlesen commented 2 years ago

I too want to add my name to the list of dissatisfied users. I do not want to be forced to create yet another account. Period! Good bye Lens.

JoelBirlingmairBeastCode commented 2 years ago

from what I have found this Lens ID login page is not actually part of this repository, but rather part of an extension that is part of the official builds.

The login page is a webview iframe that opens up https://app.k8slens.dev/signin/realms/lensCloud/protocol/openid-connect/auth?client_id=lens-extension&redirect_uri=http%3A%2F%2Flocalhost...&inApp=true and I cannot find the code to change anywhere in this repo. image

JoelBirlingmairBeastCode commented 2 years ago

the good news is that once you delete or hide the div role=presentation element and bypass the page, then you can go into the application preferences and disable this

removed the setting in the latest version

image

https://docs.k8slens.dev/main/getting-started/preferences/#disable-the-lens-spaces-login-screen

JoelBirlingmairBeastCode commented 2 years ago

ah ha! I found another maybe better workaround.

Update 6-29-2022: no longer works in latest version

the lenscloud extension preferences on my windows machine are stored here

"%appdata%\Lens\extension-store\lenscloud-lens-extension\startup-store.json"

change the line to

{"skipSignup":true}
msnelling commented 2 years ago

ah ha! I found another maybe better workaround.

the lenscloud extension preferences on my windows machine are stored here

"%appdata%\Lens\extension-store\lenscloud-lens-extension\startup-store.json"

change the line to

{"skipSignup":true}

I just tried this on macOS and it works well. The file location is ~/Library/Application\ Support/Lens/extension-store/lenscloud-lens-extension/startup-store.json

msnelling commented 2 years ago

I take it back, I forgot I was still signed in. If I sign out and, even with this flag set to true, I'm still prompted.

JoelBirlingmairBeastCode commented 2 years ago

try closing out of lens before setting it to true, just in case the preference gets overwritten on close.

nicohouillon commented 2 years ago

Having a look for alternatives, I found https://github.com/vmware-tanzu/octant (through https://twitter.com/disconn3ct/status/1529487362828509184) - not yet into the details and unsure whether it's a good replacement, but I think it should be somewhere here that anyone can find it to try.

Lens was my replacement to Octant already 😥 , I dont want to go back to Octant really , It s not bad but Lens is far better , too sad .

JoelBirlingmairBeastCode commented 2 years ago

Can anyone explain why these additional extensions come pre-bundled with lens?

lenscloud-lens-extension
license-menu-item
survey
telemetry

image

Since they are not part of this file, how do they get added to the build? https://github.com/lensapp/lens/blob/master/.bundled-extensions.json#L3

.bundled-extensions.json

nicohouillon commented 2 years ago

the good news is that once you delete or hide the div role=presentation element and bypass the page, then you can go into the application preferences and disable this image

https://docs.k8slens.dev/main/getting-started/preferences/#disable-the-lens-spaces-login-screen

no such option on 5.5.0 as well as "%appdata%\Lens\extension-store\lenscloud-lens-extension\startup-store.json" is not present ... they lock us down hard !

JoelBirlingmairBeastCode commented 2 years ago

no such option on 5.5.0 as well as "%appdata%\Lens\extension-store\lenscloud-lens-extension\startup-store.json" is not present ... they lock us down hard !

uh oh, is there a way to stop it from updating? maybe putting in a bad proxy address in the proxy setting?

Update: it seems that installing with the CLI includes a way to block updates. https://docs.k8slens.dev/main/getting-started/#installing-with-cli command line switch /disableAutoUpdates on windows according to the documentation.

nitinsh99 commented 2 years ago

Legit thought this was an unintentional bug.. I was okay having an optional login/signup page but this change has clearly gone too far and I am considering switching to alternatives at this point.

bvujnovac commented 2 years ago

I've tried building Lens straight from git and got OpenLens without login page etc.

Here's an .AppImage I'll continue using if anybody wants to try it

https://file.io/MLJo7cM3vntW

btw. linux x86_64 only

ps. if you don't trust this file I recommend you build it yourself, it's safer anyway..

rlewkowicz commented 2 years ago

We all understand the need to get the value for our labor. I don't bemoan that, but as many others have pointed out the community has improved this product. I think it's disrespectful to force an account creation. I actually have an account. Having to skip login every-time was enough soft pressure. I've just downloaded this on my work laptop and am immediately uninstalling. I now cant suggest this to anyone in our organization.

This was a bad move

JoelBirlingmairBeastCode commented 2 years ago

At our company, we have been encouraging everyone to install Lens as a way to view information about development and testing pods on our development cluster. We were hoping that this could be a teaching mechanism for introducing our workforce to the concepts of Kubernetes.

For people that are intimidated or hesitant to adopt Kubernetes and learn how it works, having this extra hurdle to make an account (and have internet access?) raises the minimum barrier to entry unnecessarily.

We are now scrambling to make a custom version where updates are disabled as well as the login screen, so that everyone brave enough to take the plunge into Kubernetes with Lens does not immediately say, "Oh what am I supposed to do here? Do I have to make an account just to check my pod's logs? I didn't realize I would have to do all that. So how do I cancel this? Where is the X in the corner to even close this screen?"

eric-engberg commented 2 years ago

I've been using lens for quite a few years now and been loving it. I'm going to be downgrading to a previous version and looking at alternatives (probably k9s). I used to suggest lens to tons of people but not anymore.

The new version doesn't even work.. Kept freezing up on me

rlex commented 2 years ago

i use asdf (https://github.com/asdf-vm/asdf) to manage local version of node, python and etc, so my guide will be using it. With asdf you don't need to install nodejs globally - it goes to your homedir and you can have as many versions as you want. I assume everyone working with k8s have enough knowledge of CLI, but just in case i will provide step-by-step instruction. This instruction should work on both osx and linux. Install asdf using their instruction (http://asdf-vm.com/guide/getting-started.html#_1-install-dependencies - steps 1,2,3), then build lens:

#install nodejs plugin for asdf
asdf plugin add nodejs
#latest version of 16.x nodejs which is required by lens
asdf install nodejs 16.16.0
#checkout lens 
git clone https://github.com/lensapp/lens.git
#go to lens dir
cd lens
#checkout tag
git checkout v6.0.0
#instruct asdf to use nodejs 16.16.0 for this directory, in case you have other versions of node installed
asdf local nodejs 16.16.0
#finally, launch build
make build

Go brew some coffee, that will take some time. Then look in dist/ directory for your crap-free build! In case of OSX, it will be both .zip and .dmg - use what you want.

❯ ls -la dist                                                                                                                                                                                                                  
total 691464
drwxr-xr-x  12 lex  staff        384 May 26 00:54 ./
drwxr-xr-x  45 lex  staff       1440 May 26 00:50 ../
drwxr-xr-x   3 lex  staff         96 May 26 00:50 .icon-icns/
-rw-r--r--   1 lex  staff  168309415 May 26 00:51 OpenLens-5.5.0-latest.1653515314271-arm64-mac.zip
-rw-r--r--   1 lex  staff     175040 May 26 00:51 OpenLens-5.5.0-latest.1653515314271-arm64-mac.zip.blockmap
-rw-r--r--@  1 lex  staff  174862239 May 26 00:51 OpenLens-5.5.0-latest.1653515314271-arm64.dmg
-rw-r--r--   1 lex  staff     182721 May 26 00:51 OpenLens-5.5.0-latest.1653515314271-arm64.dmg.blockmap
drwxr-xr-x   3 lex  staff         96 May 26 00:50 OpenLens.app/
-rw-r--r--   1 lex  staff        750 May 26 00:51 builder-debug.yml
-rw-r--r--   1 lex  staff       2066 May 26 00:50 builder-effective-config.yaml
-rw-r--r--   1 lex  staff        592 May 26 00:51 latest-mac.yml
drwxr-xr-x   3 lex  staff         96 May 26 00:50 mac-arm64/

Obviously, it won't support autoupdates, so you will need to subscribe for releases and build every version yourself. As for features, i hasn't noticed any differences between openlens and lens.

nitinsh99 commented 2 years ago

I would really like to know whose genius idea was this at Mirantis?