Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test/implement windows ssh #990

Open
wants to merge 5 commits into
base: master
Choose a base branch
from

Conversation

mchaulagain
Copy link

Testing done

Submitter checklist

  • Make sure you are opening from a topic/feature/bugfix branch (right side) and not your main branch!
  • Ensure that the pull request title represents the desired changelog entry
  • Please describe what you did
  • Link to relevant issues in GitHub or Jira
  • Link to relevant pull requests, esp. upstream and downstream changes
  • Ensure you have provided tests - that demonstrates feature works or fixes the issue

@res0nance res0nance added the enhancement Feature additions or enhancements label Oct 14, 2024
@tomotaco
Copy link

tomotaco commented Nov 9, 2024

EC2WindowsSSHLauncher in this pull request is essential for launching EC2 Windows instance as a Jenkins Agent form Linux Jenkins Controller, because Linux Controller cannot access Windows Agent by EC2WindowsLauncher that uses WinRM that requires WSMan, which is not supported on Linux.
I hope this will be accepted and merged ASAP.

Copy link

@tomotaco tomotaco left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PR enables to launch EC2 Windows agent via ssh. Current EC2WindowsLauncher communicates to Windows agents via WinRM, which is not supported on Linux. So Linux Jenkins controller could not launch Windows agent.
EC2WindowsSSHLauncher in this PR enables for Linux controller to control Windows agent with ssh.
This PR also includes the following good refactoring AMITypeData and EC2ComputerLauncher class hierarchy.

  • Introduces SSHData as a base class of UnixData, MacData, and WindowsSSHData.
  • Introduces EC2SSHLauncher as a base class of EC2UnixLauncher, EC2MacLauncher, and EC2WindowsSHLauncher.

All code modifications look fine to me. I believe this PR brings a large enhancement for Jenkins users that uses Windows agents.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement Feature additions or enhancements
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants