'PyCharm remote deployment: user name not being saved

Working with Professional edition of PyCharm, I'm trying to configure a server for remote deployment of my project over SFTP with OpenSSH + authentication agent as auth type. I have tried to configure PyCharm in Settings > Build, Execution and Deployment > Add server. However, even though I setup and verify successful configuration by Test SFTP connection button, as soon as I click Apply or OK, the User name becomes blank for some reason. Thereafter, when I try to sync with the remote server, the connection fails.

I've found a possible workaround by changing Host name to user@host form instead, which works, but then I can't use the same server configuration when I try to setup a remote interpreter under Project > Project Interpreter > Add SSH interpreter. (there it shows my host url as ssh://null@host). I'm guessing the null is there because PyCharm is somehow not saving the username. I've tried to edit the .idea/webServers.xml file, but couldn't find appropriate key-value pair to change there for user name to be preserved.



Solution 1:[1]

I solved it by changing the standard way to change credentials in Pycharm.

To do this go to Settings/Preferences | Appearance & Behavior | System Settings | Passwords and choose the KeePass option. That solved the problem for me.

Apparently there are problems storing on native keychain. (I'm on Mint 18.3)

Solution 2:[2]

What worked for me was first going to the following tab:

Preferences -> Build, Execution, Deployment -> Deployment [Connection Tab]

and then inserting my in the "User name" blank.

Note: your user name appears in the ip address of you ec2. e.g. username@@xxx.amazonaws.com

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 SimonCW
Solution 2 Batool