Skip to content

docs: add example configuration for Windows-based runners #1268

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

Merged
merged 6 commits into from
Jun 6, 2025

Conversation

zillemarco
Copy link
Contributor

Added an example configuration to use the module to set up Windows-based runners and an example on how to create a custom Windows AMI usable with the configuration.

Copy link
Contributor

Hey @zillemarco! 👋

Thank you for your contribution to the project. Please refer to the contribution rules for a quick overview of the process.

Make sure that this PR clearly explains:

  • the problem being solved
  • the best way a reviewer and you can test your changes

With submitting this PR you confirm that you hold the rights of the code added and agree that it will published under this LICENSE.

The following ChatOps commands are supported:

  • /help: notifies a maintainer to help you out

Simply add a comment with the command in the first line. If you need to pass more information, separate it with a blank line from the command.

This message was generated automatically. You are welcome to improve it.

@zillemarco zillemarco changed the title Added example configuration for Windows-based runners docs: added example configuration for Windows-based runners Mar 20, 2025
@zillemarco
Copy link
Contributor Author

Hi @kayman-mk 👋 Here you can finally find the docs and examples we had talked about in #1233 🙂

Since I extracted the example from our setup, that's still based on the version 8.1.0 of the module but that should still be compatible with the latest version 🤞

@kayman-mk kayman-mk changed the title docs: added example configuration for Windows-based runners docs: add example configuration for Windows-based runners Mar 24, 2025
@kayman-mk
Copy link
Collaborator

What do you think about moving this to a new example in examples/? Would be easier for newcomers and the module call is always checked against the latest version.

Thanks for sharing your configuration.

@zillemarco
Copy link
Contributor Author

What do you think about moving this to a new example in examples/? Would be easier for newcomers and the module call is always checked against the latest version.

Thanks for sharing your configuration.

That's a good idea @kayman-mk, I agree. Only one thing I'd like to check: those examples are not really deployed, right? Because we'd need to create the Windows AMI for that to work otherwise.

If instead those are just checked with, I don't know, terraform plan to make sure the module syntax is correct, then I could just put some placeholder values 🙂

@kayman-mk
Copy link
Collaborator

Placeholders work fine. The examples are never deployed, right.

Copy link
Contributor

This PR is stale because it has been open 60 days with no activity. Remove stale label or comment or this will be closed in 15 days.

@github-actions github-actions bot added the stale Issue/PR is stale and closed automatically label May 24, 2025
@zillemarco
Copy link
Contributor Author

Sorry it took me this long to get back to this @kayman-mk 🙇 Could you please have a look at the changes and at the pipelines that are failing but I'm not really sure why? 🙏

Thanks a lot 🙂

@github-actions github-actions bot removed the stale Issue/PR is stale and closed automatically label May 27, 2025
@jonpas
Copy link

jonpas commented May 27, 2025

Currently running this on our company CI infrastructure on AWS. Very good guide and mostly seems to work.

After updating the GitLab Runner version and rebuilding the AMI, you have to update the AMI ID in the module as well. AWS generates a new ID for each AMI build apparently.

Also had some issues with docker commands during Windows AMI build failing due to docker_engine not being available. That fixed itself after a few hours though.

@nexonen
Copy link

nexonen commented May 29, 2025

Hey @zillemarco - thank you so much for doing this! I've managed to get a windows runner in our infrastructure thanks to your help.

A couple of things that I noticed:

  • I had to rename the packer file to have a .pkr.hcl extension
  • I didn't see m6a.medium and m6i.medium as valid types - smallest I could find was .large
  • I didn't find it necessary to set private_address_only = false in either the runner or the worker - seemed to work fine without.

Thanks again, really appreciate all the work you did on this!

@zillemarco
Copy link
Contributor Author

Thanks a lot @nexonen 🙇 I must share this appreciation with @RicePatrick who helped me a ton while working on our setup 🙂

I had to rename the packer file to have a .pkr.hcl extension

Good call, I'll fix this.

I didn't see m6a.medium and m6i.medium as valid types - smallest I could find was .large

Maybe AWS doesn't have those instance types available in the region you're deplying to? 🤔

I didn't find it necessary to set private_address_only = false in either the runner or the worker - seemed to work fine without.

I'll try without, but when I first set up the runners for out infra this was necessary 🤷 Maybe things changed in the meantime 🙂

kayman-mk
kayman-mk previously approved these changes Jun 6, 2025
Copy link
Collaborator

@kayman-mk kayman-mk left a comment

Choose a reason for hiding this comment

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

Good job, guys! Makes the Windows setup a lot easier.

@kayman-mk
Copy link
Collaborator

@zillemarco This PR can be merged? I will check the workflows.

@zillemarco
Copy link
Contributor Author

@kayman-mk yup, should be good to merge now that the workflows passed 👍

@kayman-mk kayman-mk merged commit 64df9c3 into cattle-ops:main Jun 6, 2025
18 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants