Ask Your Question

Revision history [back]

I think this may be doable in Wing 7 after all as follows:

1) Create a new project with "Connect to Remote Host via SSH" project type, or just a new blank project and set Python Executable under Project Properties to Remote and then create a remote host configuration for your AWS instance. Save the project and check that this works by doing Restart in the Python Shell's Options menu and verifying that it's running Python on the AWS instance.

2) Use Project > Add Existing Directory to add your local source directory to your project. Since you've set Python Executable to a remote interpreter, the dialog will default to selecting from the remote host but you can switch to Local Host in the selector at the top.

3) In Project Properties under the Debug/Execute tab set a Build Command that runs the sftp command line needed to deploy your code to AWS. In the build command that you define ,you'll need to select 'localhost' for the Hostname field under the OS Command's Environment tab so it is run locally and not on the remote host.

4) Run the build command once from the OS Commands tool to test and to get your files onto the remote server.

5) Use Project > Add Existing Directory again to add the remote side directory to your project. The Project tree may take some time to update and may show the added item initially as a file until it finishes scanning.

6) Select your main entry point from the remote side directory and open it in the editor and/or right click on it to set it as the main debug file for the project.

Now when you start debug, Wing will first run that build command to run sftp to update the code on the AWS side and then start debug.

The downside of this approach is that Wing will open files from the remote host when you debug and you'll need to switch to the local copies when you edit. This is what the different approach in Wing 8 will address. We're working on that actively and hope to have another release in a month or so, but there are some significant unknowns still left in the development process so this estimate may be incorrect.

Please let us know if this doesn't work for you. I tried it with a remote host and it worked for me, but it wasn't specifically an AWS Glue Endpoint.