Open taiseiyo opened 1 year ago
+1 also having this issue
+1 I have also faced issue after the latest version upgrade
Me too
me too. For me even clasp login
not working. Is there any other way to login?
please check https://stackoverflow.com/questions/75347604/google-app-script-clasp-login-has-stopped-working
+1
The --no-localhost
option will no longer work due to Google disabling Out-Of-Band OAuth - the "copy and paste" method is dead.
I had this issue with wanting to run things in docker and ended up hacking myself a little workaround -> https://github.com/H3rby7/clasp-docker
Since it's just the --no-localhost option that's blocked, I ran clasp login locally on my mac terminal, and then copied the contents of my local "~/.clasprc.json" into the other remote environment I needed auth in.
Since it's just the --no-localhost option that's blocked, I ran clasp login locally on my mac terminal, and then copied the contents of my local "~/.clasprc.json" into the other remote environment I needed auth in.
This kind of workaround beats the entire purpose of running virtual development environments. Clasp should do better than that. It's an important tool in the AppsScript developer's toolbox. What are they going to do when Google's IDX is officially shipped and developers try to develop AppsScript from there?
I found a working clasp login solution for containers on StackOverflow:
Original post from StackOverlow by Paul:
When using cloud SaaS such as gitpod, the disablement of out of band (OOB) OAuth also causes problems. The workaround here is to use clasp login and copy the URL in the localhost page that fails at the end. Start a new bash terminal on the cloud service and then run curl '
I tested it on Gitpod and it works like a charm. Here's what I did to login from within the Gitpod cotainerized environment:
I hope this helps someone
Kind regards, Tailor VJ
@tailorvj I tried that, and after running curl ...
inside the container I get this output:
Logged in! You may close this page
And in the other terminal I had issued clasp login --creds creds.json
from I see this:
Authorization successful.
Local credentials saved to: /var/www/html/.clasprc.json.
*Be sure to never commit this file!* It's basically a password.
No access, refresh token, API key or refresh handler callback is set.
But afterwards clasp login --status
comes back with:
You are not logged in.
It seems that Clasp is completely broken. Really sad state of affairs.
@tailorvj I tried that, and after running
curl ...
inside the container I get this output:Logged in! You may close this page
And in the other terminal I had issued
clasp login --creds creds.json
from I see this:Authorization successful. Local credentials saved to: /var/www/html/.clasprc.json. *Be sure to never commit this file!* It's basically a password. No access, refresh token, API key or refresh handler callback is set.
But afterwards
clasp login --status
comes back with:You are not logged in.
It seems that Clasp is completely broken. Really sad state of affairs.
I have just tested clasp login on Gitpod with the following repo, and it seems to be working just fine by using the curl hack on a second terminal. https://github.com/tailorvj/hello-clasp
Try to fork it, deploy it to gitpod.io (Instructions in the README), and let me know whether it's worked for you.
Here is a video where I demo from Google's C2C online meetup where I demo this login technique: https://www.youtube.com/watch?v=RaMt5yZdzqI
I hope this helps. Kind regards, Tailor
@tailorvj something I had to do was move the .clasprc.json file that gets generated to the home directory of the user in the Docker container. Once I did that this worked fine. So, it would appear that this specific file needs to live in the home directory.
@tailorvj something I had to do was move the .clasprc.json file that gets generated to the home directory of the user in the Docker container. Once I did that this worked fine. So, it would appear that this specific file needs to live in the home directory.
I think that is correct. I found this file on my local system as well, at the same location. I guess on Gitpod this is enabled by default. I'm not a huge ecpert on Docker though, so can't tell for sure. Glad you managed to get it working
Cheers, Tailor
I found a working clasp login solution for containers on StackOverflow:
Original post from StackOverlow by Paul: When using cloud SaaS such as gitpod, the disablement of out of band (OOB) OAuth also causes problems. The workaround here is to use clasp login and copy the URL in the localhost page that fails at the end. Start a new bash terminal on the cloud service and then run curl '' – Paul Mar
I tested it on Gitpod and it works like a charm. Here's what I did to login from within the Gitpod cotainerized environment:
- $ clasp login
- Opened the URL
- Logged in
- Copied the final URL from the browser
- Back in Gitpod opened a new terminal
- $ curl
- Login successful
I hope this helps someone
Kind regards, Tailor VJ
This solution worked for me.
I'm having kinda the same problem, but I'm not able to get it to work with the above solution. I'm trying to integrate GAS with Github Actions.
I logged manually in my machine so I could copy the credentials, following this tutorial to get everything running. But even with the credentials, when trying clasp login --no-localhost --creds creds.json
, it still asks me to enter a URL in the browser.
How can I get it to work without manually accessing the URL? Also, if I do access the URL, it returns the error shown in the first post.
Any help is much appreciated.
I want to do clasp login and use clasp, but I can't login.
Expected Behavior
I want the login process to work correctly. I want to display the Google authentication popup correctly.
Actual Behavior
The screen looks like the image below and I can't proceed.![image](https://user-images.githubusercontent.com/53172326/210703655-1bb86788-8764-4603-ab0d-fda87fffe742.png)
Steps to Reproduce the Problem
Specifications
node -v
): v18.12.1clasp -v
): 2.4.2