-
Notifications
You must be signed in to change notification settings - Fork 628
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
Prebuilt runner image using packer #1444
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
So we can pass the runner version in at packer build time if we want to update the runner version.
Retrieve the required config via the instance tags so we dont have to pass in and set environment on the instance in an awkward way.
Give the instance the permission to query its own tags and set the correct tags on the instance.
So a few things i have started to do here
Whats left to decide/do?
|
This was referenced Nov 29, 2021
refactored to make sure user_data continues to work with minimal breaking changes. Use a single set of scripts shared between image and user_data provisioning.
In testing the prebuilt image is starting in somewhere between 20-25 secs..
|
Its best practice to use SSM parameters for configuration of the runners. In adding this i have also added parameter path based config so its easy to extend in the future.
ScottGuymer
commented
Dec 1, 2021
ScottGuymer
commented
Dec 1, 2021
ScottGuymer
commented
Dec 1, 2021
ScottGuymer
commented
Dec 1, 2021
Keep within existing naming convention
npalm
approved these changes
Dec 3, 2021
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tested, all good!
npalm
added a commit
that referenced
this pull request
Dec 7, 2021
…ker example (#1444) * Initial creation of runner image * Refactored startup script and added it to the per-boot folder * Make the runner location a variable So we can pass the runner version in at packer build time if we want to update the runner version. * Retrieve external config setting via tags Retrieve the required config via the instance tags so we dont have to pass in and set environment on the instance in an awkward way. * Enable tag based config Give the instance the permission to query its own tags and set the correct tags on the instance. * Add a CI job * Fix the CI build * Fix the formatting * Retain user_data provisioning and remove duplication refactored to make sure user_data continues to work with minimal breaking changes. Use a single set of scripts shared between image and user_data provisioning. * Fix interpolation issues in template file * fix build * Fix formatting * minor tweaks and fixes * Fixes from testing * Enable docker on boot * Add in output of start time for the runner * Scoop up the runner log * Add a powershell build script for windows users * Fix formatting * Use SSM parameters for configuration Its best practice to use SSM parameters for configuration of the runners. In adding this i have also added parameter path based config so its easy to extend in the future. * Make the SSM policy more specific * Update .github/workflows/packer-build.yml Co-authored-by: Niek Palm <npalm@users.noreply.github.com> * Added condition to the describe tags policy * Dont use templatefile on the tags policy Because of the use of ${} in the policy terraform is trying to replace it. * Added an option to turn off userdata scripting * Added/updated documentation * Revert policy as it has no effect on the permissions * Add reference to prebuilt images in the main readme * Add an example of deploying with prebuilt images * Update readme * Use current user as ami_owner * Update example to 5 secs * Updated ami name to include the arch * Fixed log file variable * Added explicit info about required settings to the readme * Change userdata_enabled to enabled_userdata Keep within existing naming convention Co-authored-by: Niek Palm <npalm@users.noreply.github.com>
npalm
added a commit
that referenced
this pull request
Dec 10, 2021
…ker example (#1444) * Initial creation of runner image * Refactored startup script and added it to the per-boot folder * Make the runner location a variable So we can pass the runner version in at packer build time if we want to update the runner version. * Retrieve external config setting via tags Retrieve the required config via the instance tags so we dont have to pass in and set environment on the instance in an awkward way. * Enable tag based config Give the instance the permission to query its own tags and set the correct tags on the instance. * Add a CI job * Fix the CI build * Fix the formatting * Retain user_data provisioning and remove duplication refactored to make sure user_data continues to work with minimal breaking changes. Use a single set of scripts shared between image and user_data provisioning. * Fix interpolation issues in template file * fix build * Fix formatting * minor tweaks and fixes * Fixes from testing * Enable docker on boot * Add in output of start time for the runner * Scoop up the runner log * Add a powershell build script for windows users * Fix formatting * Use SSM parameters for configuration Its best practice to use SSM parameters for configuration of the runners. In adding this i have also added parameter path based config so its easy to extend in the future. * Make the SSM policy more specific * Update .github/workflows/packer-build.yml Co-authored-by: Niek Palm <npalm@users.noreply.github.com> * Added condition to the describe tags policy * Dont use templatefile on the tags policy Because of the use of ${} in the policy terraform is trying to replace it. * Added an option to turn off userdata scripting * Added/updated documentation * Revert policy as it has no effect on the permissions * Add reference to prebuilt images in the main readme * Add an example of deploying with prebuilt images * Update readme * Use current user as ami_owner * Update example to 5 secs * Updated ami name to include the arch * Fixed log file variable * Added explicit info about required settings to the readme * Change userdata_enabled to enabled_userdata Keep within existing naming convention Co-authored-by: Niek Palm <npalm@users.noreply.github.com>
npalm
added a commit
that referenced
this pull request
Dec 22, 2021
…ker example (#1444) * Initial creation of runner image * Refactored startup script and added it to the per-boot folder * Make the runner location a variable So we can pass the runner version in at packer build time if we want to update the runner version. * Retrieve external config setting via tags Retrieve the required config via the instance tags so we dont have to pass in and set environment on the instance in an awkward way. * Enable tag based config Give the instance the permission to query its own tags and set the correct tags on the instance. * Add a CI job * Fix the CI build * Fix the formatting * Retain user_data provisioning and remove duplication refactored to make sure user_data continues to work with minimal breaking changes. Use a single set of scripts shared between image and user_data provisioning. * Fix interpolation issues in template file * fix build * Fix formatting * minor tweaks and fixes * Fixes from testing * Enable docker on boot * Add in output of start time for the runner * Scoop up the runner log * Add a powershell build script for windows users * Fix formatting * Use SSM parameters for configuration Its best practice to use SSM parameters for configuration of the runners. In adding this i have also added parameter path based config so its easy to extend in the future. * Make the SSM policy more specific * Update .github/workflows/packer-build.yml Co-authored-by: Niek Palm <npalm@users.noreply.github.com> * Added condition to the describe tags policy * Dont use templatefile on the tags policy Because of the use of ${} in the policy terraform is trying to replace it. * Added an option to turn off userdata scripting * Added/updated documentation * Revert policy as it has no effect on the permissions * Add reference to prebuilt images in the main readme * Add an example of deploying with prebuilt images * Update readme * Use current user as ami_owner * Update example to 5 secs * Updated ami name to include the arch * Fixed log file variable * Added explicit info about required settings to the readme * Change userdata_enabled to enabled_userdata Keep within existing naming convention Co-authored-by: Niek Palm <npalm@users.noreply.github.com>
npalm
added a commit
that referenced
this pull request
Dec 22, 2021
* add option ephemeral runners * fix tests * Add retry mechanisme for scaling errors * Add retry mechanisme for scaling errors Add retry mechanisme for scaling errors Add retry mechanisme for scaling errors Add retry mechanisme for scaling errors * Add tests for lamda handler * Add basic test for ephemeral case * Add basic test for scale down in lambda wrapper * Ensure check_runs are ignored for ephemeral runners * limit termination to only the instance itself * fix: add logging context to runner lambda (#1399) * fix(logging): Add context to scale logs Signed-off-by: Nathaniel McAuliffe <nmcauliffe@expediagroup.com> * Remove testing Signed-off-by: Nathaniel McAuliffe <nmcauliffe@expediagroup.com> * Remove unnecessary import Signed-off-by: Nathaniel McAuliffe <nmcauliffe@expediagroup.com> * Moving log fields to end, adjusting format * feat: Add hooks for prebuilt images (AMI), including amazon linux packer example (#1444) * Initial creation of runner image * Refactored startup script and added it to the per-boot folder * Make the runner location a variable So we can pass the runner version in at packer build time if we want to update the runner version. * Retrieve external config setting via tags Retrieve the required config via the instance tags so we dont have to pass in and set environment on the instance in an awkward way. * Enable tag based config Give the instance the permission to query its own tags and set the correct tags on the instance. * Add a CI job * Fix the CI build * Fix the formatting * Retain user_data provisioning and remove duplication refactored to make sure user_data continues to work with minimal breaking changes. Use a single set of scripts shared between image and user_data provisioning. * Fix interpolation issues in template file * fix build * Fix formatting * minor tweaks and fixes * Fixes from testing * Enable docker on boot * Add in output of start time for the runner * Scoop up the runner log * Add a powershell build script for windows users * Fix formatting * Use SSM parameters for configuration Its best practice to use SSM parameters for configuration of the runners. In adding this i have also added parameter path based config so its easy to extend in the future. * Make the SSM policy more specific * Update .github/workflows/packer-build.yml Co-authored-by: Niek Palm <npalm@users.noreply.github.com> * Added condition to the describe tags policy * Dont use templatefile on the tags policy Because of the use of ${} in the policy terraform is trying to replace it. * Added an option to turn off userdata scripting * Added/updated documentation * Revert policy as it has no effect on the permissions * Add reference to prebuilt images in the main readme * Add an example of deploying with prebuilt images * Update readme * Use current user as ami_owner * Update example to 5 secs * Updated ami name to include the arch * Fixed log file variable * Added explicit info about required settings to the readme * Change userdata_enabled to enabled_userdata Keep within existing naming convention Co-authored-by: Niek Palm <npalm@users.noreply.github.com> * add option ephemeral runners * Add retry mechanisme for scaling errors Add retry mechanisme for scaling errors Add retry mechanisme for scaling errors Add retry mechanisme for scaling errors * add dead letter queue, and refactor * cleanup * cleanup * sync develop * review fix Co-authored-by: Scott Guymer <scott@scottguymer.co.uk> * review fix Co-authored-by: Scott Guymer <scott@scottguymer.co.uk> * review vfix Co-authored-by: Scott Guymer <scott@scottguymer.co.uk> * review vfix Co-authored-by: Scott Guymer <scott@scottguymer.co.uk> * fix review * process review comments * process review comments * review comment * process review comments * Update examples/ephemeral/README.md Co-authored-by: Nathaniel McAuliffe <nmcauliffe@expediagroup.com> * Process review comments * Add docs * review comments * update docs Co-authored-by: Scott Guymer <scott@scottguymer.co.uk> Co-authored-by: Nathaniel McAuliffe <nmcauliffe@expediagroup.com>
Merged
forest-releaser bot
pushed a commit
that referenced
this pull request
Jan 6, 2022
## [0.28.0](v0.27.2...v0.28.0) (2022-01-06) ### Features * add option ephemeral runners ([#1374](#1374)) ([2f323d6](2f323d6)), closes [#1399](#1399) [#1444](#1444) * Change default location of runner to `/opt` and fix Ubuntu example ([#1572](#1572)) ([77f350b](77f350b)) * Replace run instance API by create fleet API ([#1556](#1556)) ([27e974d](27e974d)) * Support t4g Graviton instance type ([#1561](#1561)) ([3fa5896](3fa5896)) ### Bug Fixes * Add config for windows ami ([#1525](#1525)) ([7907984](7907984))
enverus-github-action-app-token bot
pushed a commit
to enverus-cts/terraform-aws-github-runner
that referenced
this pull request
Mar 25, 2022
## [0.17.0-develop.1](v0.16.0...v0.17.0-develop.1) (2022-03-25) ### Features * Add associate_public_ip_address variable to windows AMI too ([philips-labs#1819](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1819)) ([0b8e1fc](0b8e1fc)), closes [/github.com/philips-labs/pull/1816#issuecomment-1060650668](https://github.com/enverus-cts//github.com/philips-labs/terraform-aws-github-runner/pull/1816/issues/issuecomment-1060650668) * Add associate_public_ip_address variable ([philips-labs#1816](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1816)) ([052e9f8](052e9f8)) * add format checking for lambdas in CI ([#899](#899)) ([#1080](#1080)) ([ae9c277](ae9c277)) * Add hooks for prebuilt images (AMI), including amazon linux packer example ([philips-labs#1444](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1444)) ([060daac](060daac)) * add option ephemeral runners ([philips-labs#1374](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1374)) ([2f323d6](2f323d6)), closes [philips-labs#1399](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1399) [philips-labs#1444](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1444) * Add option for ephemeral to check builds status before scaling ([philips-labs#1854](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1854)) ([7eb0bda](7eb0bda)) * Add option for KMS encryption for cloudwatch log groups ([philips-labs#1833](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1833)) ([3f1a67f](3f1a67f)) * Add option to configure concurrent running scale up lambda ([philips-labs#1415](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1415)) ([23ee630](23ee630)) * Add option to disable SSL verification support for GitHub Enterprise Server ([#1216](#1216)) ([3c3ef19](3c3ef19)), closes [#1207](#1207) * add option to format logging in JSON for lambdas ([#1228](#1228)) ([a250b96](a250b96)) * add option to overwrite / disable egress [#748](#748) ([#1112](#1112)) ([9c2548d](9c2548d)) * add option to specify SSE config for dist bucket ([philips-labs#1324](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1324)) ([ae84302](ae84302)) * Add output image id used in launch template ([philips-labs#1676](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1676)) ([a49fab4](a49fab4)) * Add possibility to create multiple ebs ([philips-labs#1845](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1845)) ([7a2ca0d](7a2ca0d)) * Add scheduled / pull based scaling for org level runners ([philips-labs#1577](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1577)) ([8197432](8197432)) * Add SQS queue resource policy to improve security ([philips-labs#1798](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1798)) ([96def9a](96def9a)) * Add Support for Alternative Partitions in ARNs (like govcloud) ([philips-labs#1815](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1815)) ([0ba06c8](0ba06c8)) * Add variable to specify custom commands while building the AMI ([philips-labs#1838](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1838)) ([8f9c342](8f9c342)) * add windows support ([philips-labs#1476](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1476)) ([dbba705](dbba705)) * adding message retention seconds ([philips-labs#1354](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1354)) ([a19929f](a19929f)) * Adding support for new workflow_job event. ([#1019](#1019)) ([a74e10b](a74e10b)) * adding var for tags for ec2s ([philips-labs#1357](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1357)) ([31cf02d](31cf02d)) * Change default location of runner to `/opt` and fix Ubuntu example ([philips-labs#1572](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1572)) ([77f350b](77f350b)) * Ignore github managed labels and add check disable option ([#1244](#1244)) ([859fa38](859fa38)) * **images:** Added ubuntu-focual example packer configuration ([philips-labs#1644](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1644)) ([997b171](997b171)) * **packer:** add vars and minor clean up ([philips-labs#1611](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1611)) ([1c897a4](1c897a4)) * Parameterise delete_on_termination ([philips-labs#1758](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1758)) ([6282351](6282351)), closes [philips-labs#1745](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1745) * remove unused app client since SSH key is used to secure app authorization ([#1223](#1223)) ([4cb5cf1](4cb5cf1)) * Replace run instance API by create fleet API ([philips-labs#1556](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1556)) ([27e974d](27e974d)) * **runner:** Ability to disable default runner security group creation ([philips-labs#1718](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1718)) ([94779f8](94779f8)) * **runner:** Add option to disable auto update ([philips-labs#1791](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1791)) ([c2a834f](c2a834f)) * **runner:** Replace patch by install ICU package for ARM runners ([philips-labs#1624](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1624)) ([74cfa51](74cfa51)) * **scale-down:** Update Owner Logic ([#1065](#1065)) ([ba2536b](ba2536b)), closes [#2](#2) * Strict label check and replace disable_check_wokflow_job_labels by opt in enable_workflow_job_labels_check ([philips-labs#1591](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1591)) ([405b11d](405b11d)) * support single line for app private key ([philips-labs#1368](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1368)) ([14183ac](14183ac)) * Support t4g Graviton instance type ([philips-labs#1561](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1561)) ([3fa5896](3fa5896)) * upgrade Terraform version of module 1.0.x ([#1254](#1254)) ([2a817dc](2a817dc)) ### Bug Fixes * `instance_types` from a Set to a List, so instance order preference is preserved ([#1154](#1154)) ([150d227](150d227)) * add --preserve-env to start-runner.sh to enable RUNNER_ALLOW_RUNASROOT ([philips-labs#1537](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1537)) ([1cd9cd3](1cd9cd3)) * Add config for windows ami ([philips-labs#1525](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1525)) ([7907984](7907984)) * add logging context to runner lambda ([philips-labs#1399](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1399)) ([0ba0930](0ba0930)) * Add required providers to module ssm ([philips-labs#1423](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1423)) ([5b68b7b](5b68b7b)) * add runners binaries bucket as terraform output ([5809fee](5809fee)) * add validation to distribution_bucket_name variable ([philips-labs#1356](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1356)) ([6522317](6522317)) * added more detailed logging for scaling up and down ([#1222](#1222)) ([9aa7456](9aa7456)) * Autoupdate should be disabled by default ([philips-labs#1797](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1797)) ([828bed6](828bed6)) * clean up non used variables in examples ([philips-labs#1416](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1416)) ([fe65a5f](fe65a5f)) * configurable metadata options for runners ([philips-labs#1377](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1377)) ([f37df23](f37df23)) * Create SQS DLQ policy only if DLQ is created ([philips-labs#1839](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1839)) ([c88a005](c88a005)) * Don't delete busy runners ([philips-labs#1832](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1832)) ([0e9b083](0e9b083)) * Dowload lambda see [philips-labs#1541](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1541) for details. ([philips-labs#1542](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1542)) ([7cb73c8](7cb73c8)) * Download lambda ([philips-labs#1480](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1480)) ([f1b99d9](f1b99d9)) * **examples:** Update AMI filter ([philips-labs#1673](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1673)) ([39c019c](39c019c)) * explicit set region for downloading runner distribution from S3 ([#1204](#1204)) ([439fb1b](439fb1b)) * **images:** use new runner install location ([philips-labs#1628](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1628)) ([36c1bf5](36c1bf5)) * install_config_runner -> install_runner ([philips-labs#1479](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1479)) ([de5b93f](de5b93f)) * Limit AWS Terraform Provider to 3.* ([philips-labs#1741](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1741)) ([0cf2b5d](0cf2b5d)) * **logging:** Add context to webhook logs ([philips-labs#1401](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1401)) ([8094576](8094576)) * **logging:** Additional Logging ([#1135](#1135)) ([f7f194d](f7f194d)) * **logging:** Adjusting scale logging messages and levels ([philips-labs#1286](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1286)) ([665e1a6](665e1a6)) * **logging:** Adjusting webhook logs and levels ([philips-labs#1287](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1287)) ([9df5fb8](9df5fb8)) * **packer:** Add missing RUNNER_ARCHITECTURE for amazn-linux2 ([philips-labs#1647](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1647)) ([ec497a2](ec497a2)) * reducing verbosity of role and profile ([philips-labs#1358](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1358)) ([922ef99](922ef99)) * remove export from install script. ([philips-labs#1538](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1538)) ([d32ca1b](d32ca1b)) * replace depcrated 'request' dependency by 'node-fetch' ([#903](#903)) ([#1082](#1082)) ([fb51756](fb51756)) * Retention days was used instead of kms key id for pool ([philips-labs#1855](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1855)) ([aa29d93](aa29d93)) * **runner:** Cannot disable cloudwatch agent ([philips-labs#1738](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1738)) ([0f798ca](0f798ca)) * **runnrs:** Pool runners to allow multiple pool_config objects ([philips-labs#1621](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1621)) ([c9c7c69](c9c7c69)) * **scale-down:** Clearing cache between runs ([#1164](#1164)) ([e72227b](e72227b)) * **syncer:** Add tests, coverage report, and refactor lambda / naming ([philips-labs#1478](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1478)) ([8266442](8266442)) * **syncer:** Fix for windows binaries in action runner syncer ([philips-labs#1716](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1716)) ([63e0e27](63e0e27)) * Update launch template to use metadata service v2 ([philips-labs#1278](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1278)) ([ef16287](ef16287)) * update return codes, no error code for job that are ignored ([philips-labs#1381](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1381)) ([f9f705f](f9f705f)) * Upgrade Amazon base AMI to Amazon Linux 2 kernel 5x ([philips-labs#1812](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1812)) ([9aa5532](9aa5532)) * upgrade jest ([#1219](#1219)) ([c8b8139](c8b8139)) * Upgrade lambda runtime to node 14.x ([#1203](#1203)) ([570949a](570949a)) * use dynamic block to ignore null market opts ([#1202](#1202)) ([df9bd78](df9bd78)) * use dynamic block to ignore null market opts ([#1202](#1202)) ([06a5598](06a5598)) * webhook labels for `workflow_job` ([#1133](#1133)) ([4b39fb9](4b39fb9)) * **webhook:** depcrated warning on ts-jest mocked ([philips-labs#1615](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1615)) ([56c1ece](56c1ece)) * **webhook:** remove node fetch ([ca14ac5](ca14ac5)) * **webhook:** replace node-fetch by axios [#1247](#1247) ([80fff4b](80fff4b))
npalm
added a commit
that referenced
this pull request
Oct 11, 2022
* chore(release): 0.17.0 [skip ci] * Adding support for new workflow_job event. ([#1019](#1019)) ([a74e10b](a74e10b)) * chore(release): 0.18.0 [skip ci] * add format checking for lambdas in CI ([#899](#899)) ([#1080](#1080)) ([ae9c277](ae9c277)) * add option to overwrite / disable egress [#748](#748) ([#1112](#1112)) ([9c2548d](9c2548d)) * replace depcrated 'request' dependency by 'node-fetch' ([#903](#903)) ([#1082](#1082)) ([fb51756](fb51756)) * chore(release): 0.18.1 [skip ci] * webhook labels for `workflow_job` ([#1133](#1133)) ([4b39fb9](4b39fb9)) * chore(release): 0.19.0 [skip ci] * **scale-down:** Update Owner Logic ([#1065](#1065)) ([ba2536b](ba2536b)), closes [#2](#2) * explicit set region for downloading runner distribution from S3 ([#1204](#1204)) ([439fb1b](439fb1b)) * upgrade jest ([#1219](#1219)) ([c8b8139](c8b8139)) * use dynamic block to ignore null market opts ([#1202](#1202)) ([df9bd78](df9bd78)) * use dynamic block to ignore null market opts ([#1202](#1202)) ([06a5598](06a5598)) * **logging:** Additional Logging ([#1135](#1135)) ([f7f194d](f7f194d)) * **scale-down:** Clearing cache between runs ([#1164](#1164)) ([e72227b](e72227b)) * chore(release): 0.19.1 [skip ci] * `instance_types` from a Set to a List, so instance order preference is preserved ([#1154](#1154)) ([150d227](150d227)) * chore(release): 0.20.0 [skip ci] * Add option to disable SSL verification support for GitHub Enterprise Server ([#1216](#1216)) ([3c3ef19](3c3ef19)), closes [#1207](#1207) * chore(release): 0.20.1 [skip ci] * Upgrade lambda runtime to node 14.x ([#1203](#1203)) ([570949a](570949a)) * **webhook:** remove node fetch ([ca14ac5](ca14ac5)) * **webhook:** replace node-fetch by axios [#1247](#1247) ([80fff4b](80fff4b)) * added more detailed logging for scaling up and down ([#1222](#1222)) ([9aa7456](9aa7456)) * chore(release): 0.21.0 [skip ci] * Ignore github managed labels and add check disable option ([#1244](#1244)) ([859fa38](859fa38)) * remove unused app client since SSH key is used to secure app authorization ([#1223](#1223)) ([4cb5cf1](4cb5cf1)) * upgrade Terraform version of module 1.0.x ([#1254](#1254)) ([2a817dc](2a817dc)) * chore(release): 0.21.1 [skip ci] * **logging:** Adjusting scale logging messages and levels ([#1286](#1286)) ([665e1a6](665e1a6)) * **logging:** Adjusting webhook logs and levels ([#1287](#1287)) ([9df5fb8](9df5fb8)) * Update launch template to use metadata service v2 ([#1278](#1278)) ([ef16287](ef16287)) * chore(release): 0.22.0 [skip ci] * adding message retention seconds ([#1354](#1354)) ([a19929f](a19929f)) * adding var for tags for ec2s ([#1357](#1357)) ([31cf02d](31cf02d)) * add validation to distribution_bucket_name variable ([#1356](#1356)) ([6522317](6522317)) * chore(release): 0.23.0 [skip ci] * add option to format logging in JSON for lambdas ([#1228](#1228)) ([a250b96](a250b96)) * add option to specify SSE config for dist bucket ([#1324](#1324)) ([ae84302](ae84302)) * reducing verbosity of role and profile ([#1358](#1358)) ([922ef99](922ef99)) * chore(release): 0.23.1 [skip ci] * configurable metadata options for runners ([#1377](#1377)) ([f37df23](f37df23)) * chore(release): 0.24.0 [skip ci] * support single line for app private key ([#1368](#1368)) ([14183ac](14183ac)) * update return codes, no error code for job that are ignored ([#1381](#1381)) ([f9f705f](f9f705f)) * chore(release): 0.25.0 [skip ci] * Add option to configure concurrent running scale up lambda ([#1415](#1415)) ([23ee630](23ee630)) * clean up non used variables in examples ([#1416](#1416)) ([fe65a5f](fe65a5f)) * chore(release): 0.25.1 [skip ci] * Add required providers to module ssm ([#1423](#1423)) ([5b68b7b](5b68b7b)) * chore(release): 0.25.2 [skip ci] * add logging context to runner lambda ([#1399](#1399)) ([0ba0930](0ba0930)) * **logging:** Add context to webhook logs ([#1401](#1401)) ([8094576](8094576)) * chore(release): 0.26.0 [skip ci] * Add hooks for prebuilt images (AMI), including amazon linux packer example ([#1444](#1444)) ([060daac](060daac)) * add runners binaries bucket as terraform output ([5809fee](5809fee)) * chore(release): 0.26.1 [skip ci] * Download lambda ([#1480](#1480)) ([f1b99d9](f1b99d9)) * **syncer:** Add tests, coverage report, and refactor lambda / naming ([#1478](#1478)) ([8266442](8266442)) * install_config_runner -> install_runner ([#1479](#1479)) ([de5b93f](de5b93f)) * chore(release): 0.27.0 [skip ci] * add windows support ([#1476](#1476)) ([dbba705](dbba705)) * chore(release): 0.27.1 [skip ci] * add --preserve-env to start-runner.sh to enable RUNNER_ALLOW_RUNASROOT ([#1537](#1537)) ([1cd9cd3](1cd9cd3)) * remove export from install script. ([#1538](#1538)) ([d32ca1b](d32ca1b)) * chore(release): 0.27.2 [skip ci] * Dowload lambda see [#1541](#1541) for details. ([#1542](#1542)) ([7cb73c8](7cb73c8)) * chore(release): 0.28.0 [skip ci] * add option ephemeral runners ([#1374](#1374)) ([2f323d6](2f323d6)), closes [#1399](#1399) [#1444](#1444) * Change default location of runner to `/opt` and fix Ubuntu example ([#1572](#1572)) ([77f350b](77f350b)) * Replace run instance API by create fleet API ([#1556](#1556)) ([27e974d](27e974d)) * Support t4g Graviton instance type ([#1561](#1561)) ([3fa5896](3fa5896)) * Add config for windows ami ([#1525](#1525)) ([7907984](7907984)) * chore(release): 0.29.0 [skip ci] * Strict label check and replace disable_check_wokflow_job_labels by opt in enable_workflow_job_labels_check ([#1591](#1591)) ([405b11d](405b11d)) * chore(release): 0.30.0 [skip ci] * Add scheduled / pull based scaling for org level runners ([#1577](#1577)) ([8197432](8197432)) * chore(release): 0.30.1 [skip ci] * **runnrs:** Pool runners to allow multiple pool_config objects ([#1621](#1621)) ([c9c7c69](c9c7c69)) * chore(release): 0.31.0 [skip ci] * **packer:** add vars and minor clean up ([#1611](#1611)) ([1c897a4](1c897a4)) * **webhook:** depcrated warning on ts-jest mocked ([#1615](#1615)) ([56c1ece](56c1ece)) * chore(release): 0.32.0 [skip ci] * **runner:** Replace patch by install ICU package for ARM runners ([#1624](#1624)) ([74cfa51](74cfa51)) * **images:** use new runner install location ([#1628](#1628)) ([36c1bf5](36c1bf5)) * **packer:** Add missing RUNNER_ARCHITECTURE for amazn-linux2 ([#1647](#1647)) ([ec497a2](ec497a2)) * chore(release): 0.33.0 [skip ci] * **images:** Added ubuntu-focual example packer configuration ([#1644](#1644)) ([997b171](997b171)) * **examples:** Update AMI filter ([#1673](#1673)) ([39c019c](39c019c)) * chore(release): 0.34.0 [skip ci] * Add output image id used in launch template ([#1676](#1676)) ([a49fab4](a49fab4)) * chore(release): 0.34.1 [skip ci] * **syncer:** Fix for windows binaries in action runner syncer ([#1716](#1716)) ([63e0e27](63e0e27)) * chore(release): 0.34.2 [skip ci] * Limit AWS Terraform Provider to 3.* ([#1741](#1741)) ([0cf2b5d](0cf2b5d)) * **runner:** Cannot disable cloudwatch agent ([#1738](#1738)) ([0f798ca](0f798ca)) * chore(release): 0.35.0 [skip ci] * Parameterise delete_on_termination ([#1758](#1758)) ([6282351](6282351)), closes [#1745](#1745) * **runner:** Ability to disable default runner security group creation ([#1718](#1718)) ([94779f8](94779f8)) * chore(release): 0.36.0 [skip ci] * **runner:** Add option to disable auto update ([#1791](#1791)) ([c2a834f](c2a834f)) * chore(release): 0.37.0 [skip ci] * Add associate_public_ip_address variable to windows AMI too ([#1819](#1819)) ([0b8e1fc](0b8e1fc)), closes [/github.com//pull/1816#issuecomment-1060650668](https://github.com/philips-labs//github.com/philips-labs/terraform-aws-github-runner/pull/1816/issues/issuecomment-1060650668) * Add associate_public_ip_address variable ([#1816](#1816)) ([052e9f8](052e9f8)) * Add option for KMS encryption for cloudwatch log groups ([#1833](#1833)) ([3f1a67f](3f1a67f)) * Add SQS queue resource policy to improve security ([#1798](#1798)) ([96def9a](96def9a)) * Add Support for Alternative Partitions in ARNs (like govcloud) ([#1815](#1815)) ([0ba06c8](0ba06c8)) * Add variable to specify custom commands while building the AMI ([#1838](#1838)) ([8f9c342](8f9c342)) * Autoupdate should be disabled by default ([#1797](#1797)) ([828bed6](828bed6)) * Create SQS DLQ policy only if DLQ is created ([#1839](#1839)) ([c88a005](c88a005)) * Upgrade Amazon base AMI to Amazon Linux 2 kernel 5x ([#1812](#1812)) ([9aa5532](9aa5532)) * chore(release): 0.38.0 [skip ci] * Add option for ephemeral to check builds status before scaling ([#1854](#1854)) ([7eb0bda](7eb0bda)) * Retention days was used instead of kms key id for pool ([#1855](#1855)) ([aa29d93](aa29d93)) * chore(release): 0.39.0 [skip ci] * Add possibility to create multiple ebs ([#1845](#1845)) ([7a2ca0d](7a2ca0d)) * Don't delete busy runners ([#1832](#1832)) ([0e9b083](0e9b083)) * chore(release): 0.40.0 [skip ci] * Support multi runner process support for runner scale down. ([#1859](#1859)) ([3658d6a](3658d6a)) * Set the minimal AWS provider to 3.50 ([#1937](#1937)) ([16095d8](16095d8)) * chore(release): 0.40.1 [skip ci] * Avoid non semantic commontes can be merged. ([#1969](#1969)) ([ad1c872](ad1c872)) * chore(release): 0.40.2 [skip ci] * Outputs for pool need to account for complexity ([#1970](#1970)) ([2d92906](2d92906)) * chore(release): 0.40.3 [skip ci] * Volume size is ingored ([#2014](#2014)) ([b733248](b733248)), closes [#1954](#1954) * chore(release): 0.40.4 [skip ci] * Wrong block device mapping ([#2019](#2019)) ([c42a467](c42a467)) * chore(release): 1.0.0 [skip ci] * var.volume_size replaced by var.block_device_mappings * The module is upgraded to AWS Terraform provider 4.x * Improve syncer s3 kms encryption ([38ed5be](38ed5be)) * Remove var.volume_size in favour of var.block_device_mappings ([4e97048](4e97048)) * Support AWS 4.x Terraform provider ([#1739](#1739)) ([cfb6da2](cfb6da2)) * Wrong block device mapping ([#2019](#2019)) ([185ef20](185ef20)) * chore(release): 1.1.0 [skip ci] * Add option to enable detailed monitoring for runner launch template ([#2024](#2024)) ([e73a267](e73a267)) * chore(release): 1.1.1 [skip ci] * **runner:** Don't treat the string "false" as true. ([#2051](#2051)) ([b67c7dc](b67c7dc)) * chore(release): 1.2.0 [skip ci] * Replace environment variable by prefix ([#1858](#1858)) ([e2f9a27](e2f9a27)) * docs: fix hyperlinks in the Terraform Registry documentation (#2085) This makes the hyperlink correct in the Terraform Registry documentation * chore(release): 1.3.0 [skip ci] * Support arm64 lambda functions ([#2121](#2121)) ([9e2a7b6](9e2a7b6)) * Support Node16 for AWS Lambda ([#2073](#2073)) ([68a2014](68a2014)) * replaced old environment variable ([#2146](#2146)) ([f2072f7](f2072f7)) * set explicit permissions on s3 for syncer lambda ([#2145](#2145)) ([aa7edd1](aa7edd1)) * set kms key on aws_s3_object when encryption is enabled ([#2147](#2147)) ([b4dc706](b4dc706)) * chore(release): 1.4.0 [skip ci] * Add option to match some of the labes instead of all [#2122](#2122) ([#2123](#2123)) ([c5e3c21](c5e3c21)) * don't apply extra labels unless defined ([#2181](#2181)) ([c0b11bb](c0b11bb)) * Remove asterik in permission for runner lambda to describe instances ([9b9da03](9b9da03)) * chore(release): 1.4.1 [skip ci] * added server_side_encryption key to download trigger for distribution ([#2207](#2207)) ([404e3b6](404e3b6)) * chore(release): 1.5.0 [skip ci] * Add ubuntu-jammy example image based on existing ubuntu-focal ([#2102](#2102)) ([486ae91](486ae91)) * **images:** avoid wrong AMI could be selected for ubuntu focal ([#2214](#2214)) ([76be94b](76be94b)) * chore(release): 1.6.0 [skip ci] * Add options extra option to ebs block device mapping ([#2052](#2052)) ([7cd2524](7cd2524)) * Enable node16 default ([#2074](#2074)) ([58aa5ed](58aa5ed)) * Incorrect path of Runner logs ([#2233](#2233)) ([98eff98](98eff98)) * Preventing that lambda webhook fails when it tries to process an installation_repositories event ([#2288](#2288)) ([8656c83](8656c83)) * Update ubuntu example to fix /opt/hostedtoolcache ([#2302](#2302)) ([8eea748](8eea748)) * Webhook lambda misleading log ([#2291](#2291)) ([c6275f9](c6275f9)) * chore(release): 1.7.0 [skip ci] * Webhook accept jobs where not all labels are provided in job. ([#2209](#2209)) ([6d9116f](6d9116f)) * Ignore case for runner labels. ([#2315](#2315)) ([014985a](014985a)) * chore(release): 1.8.0 [skip ci] * Add option to disable lambda to sync runner binaries ([#2314](#2314)) ([9f7d32d](9f7d32d)) * **examples:** Upgrading ubuntu example to 22.04 ([#2250](#2250)) ([d4b7650](d4b7650)), closes [#2103](#2103) * chore(release): 1.8.1 [skip ci] * **runners:** Pass allocation strategy ([#2345](#2345)) ([68d3445](68d3445)) * chore(release): 1.9.0 [skip ci] * Add option to enable access log for API gateway ([#2387](#2387)) ([fcd9fba](fcd9fba)) * add s3_location_runner_distribution var as expandable for userdata ([#2371](#2371)) ([05fe737](05fe737)) * Encrypted data at REST on SQS by default ([#2431](#2431)) ([7f3f4bf](7f3f4bf)) * **images:** Allow passing instance type when building windows image ([#2369](#2369)) ([eca23bf](eca23bf)) * **runners:** Fetch instance environment tag though metadata ([#2346](#2346)) ([27db290](27db290)) * **runners:** Set the default Windows AMI to Server 2022 ([#2325](#2325)) ([78e99d1](78e99d1)) * chore(release): 1.9.1 [skip ci] * **webhook:** Use `x-hub-signature-256` header as default ([#2434](#2434)) ([9c3e495](9c3e495)) * chore(release): 1.10.0 [skip ci] * Download runner release via latest release API ([#2455](#2455)) ([e75e092](e75e092)) * fix: Execute runner in own process, mask token in logs * Add option to disable user_data logging * Enforcing debug is disabled, and introduce option to enable debug logging. * add section related to security considerations * add section related to security considerations Co-authored-by: semantic-release-bot <semantic-release-bot@martynus.net> Co-authored-by: Derek Crosson <derekcrosson18@gmail.com>
forest-releaser bot
pushed a commit
that referenced
this pull request
Oct 12, 2022
## [1.12.0](v1.11.0...v1.12.0) (2022-10-12) ### Features * Added the AMI to machine setup info to runner workflows. ([#2451](#2451)) ([e197cbd](e197cbd)) * **images:** add ami for windows core 2022 ([#2390](#2390)) ([97707c2](97707c2)) * Log workflow id in webhook ([#2511](#2511)) ([204acf1](204acf1)) * Security improvements, add option to disable userdata logging ([9a9e2ee](9a9e2ee)), closes [#1019](#1019) [#899](#899) [#1080](#1080) [#748](#748) [#1112](#1112) [#903](#903) [#1082](#1082) [#1133](#1133) [#2](#2) [#1204](#1204) [#1219](#1219) [#1202](#1202) [#1202](#1202) [#1135](#1135) [#1164](#1164) [#1154](#1154) [#1207](#1207) [#1203](#1203) [#1247](#1247) [#1222](#1222) [#1244](#1244) [#1223](#1223) [#1254](#1254) [#1286](#1286) [#1287](#1287) [#1278](#1278) [#1354](#1354) [#1357](#1357) [#1356](#1356) [#1228](#1228) [#1324](#1324) [#1358](#1358) [#1377](#1377) [#1368](#1368) [#1381](#1381) [#1415](#1415) [#1416](#1416) [#1423](#1423) [#1399](#1399) [#1401](#1401) [#1444](#1444) [#1480](#1480) [#1478](#1478) [#1479](#1479) [#1476](#1476) [#1537](#1537) [#1538](#1538) [#1541](#1541) [#1542](#1542) [#1399](#1399) [#1444](#1444) [#1572](#1572) [#1556](#1556) [#1561](#1561) [#1525](#1525) [#1591](#1591) [#1577](#1577) [#1621](#1621) [#1611](#1611) [#1615](#1615) [#1624](#1624) [#1628](#1628) [#1647](#1647) [#1644](#1644) [#1673](#1673) [#1676](#1676) [#1716](#1716) [#1741](#1741) [#1738](#1738) [#1745](#1745) [#1718](#1718) [#1791](#1791) [github.com//pull/1816#issuecomment-1060650668](https://github.com/philips-labs/github.com/philips-labs/terraform-aws-github-runner/pull/1816/issues/issuecomment-1060650668) [#1816](#1816) [#1833](#1833) [#1798](#1798) [#1815](#1815) [#1838](#1838) [#1797](#1797) [#1839](#1839) [#1812](#1812) [#1854](#1854) [#1855](#1855) [#1845](#1845) [#1832](#1832) [#1859](#1859) [#1937](#1937) [#1969](#1969) [#1970](#1970) [#1954](#1954) [#2019](#2019) [#1739](#1739) [#2019](#2019) [#2024](#2024) [#2051](#2051) [#1858](#1858) [#2085](#2085) [#2121](#2121) [#2073](#2073) [#2146](#2146) [#2145](#2145) [#2147](#2147) [#2122](#2122) [#2123](#2123) [#2181](#2181) [#2207](#2207) [#2102](#2102) [#2214](#2214) [#2052](#2052) [#2074](#2074) [#2233](#2233) [#2288](#2288) [#2302](#2302) [#2291](#2291) [#2209](#2209) [#2315](#2315) [#2314](#2314) [#2103](#2103) [#2345](#2345) [#2387](#2387) [#2371](#2371) [#2431](#2431) [#2369](#2369) [#2346](#2346) [#2325](#2325) [#2434](#2434) [#2455](#2455) ### Bug Fixes * Remove resource group from module ([#2512](#2512)) ([2628352](2628352))
enverus-github-action-app-token bot
pushed a commit
to enverus-cts/terraform-aws-github-runner
that referenced
this pull request
Nov 2, 2022
## [1.0.0-develop.1](v0.32.0...v1.0.0-develop.1) (2022-11-02) ### ⚠ BREAKING CHANGES * var.volume_size replaced by var.block_device_mappings * The module is upgraded to AWS Terraform provider 4.x ### Features * Add associate_public_ip_address variable to windows AMI too ([philips-labs#1819](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1819)) ([0b8e1fc](0b8e1fc)), closes [/github.com/philips-labs/pull/1816#issuecomment-1060650668](https://github.com/enverus-cts//github.com/philips-labs/terraform-aws-github-runner/pull/1816/issues/issuecomment-1060650668) * Add associate_public_ip_address variable ([philips-labs#1816](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1816)) ([052e9f8](052e9f8)) * Add option for ephemeral to check builds status before scaling ([philips-labs#1854](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1854)) ([7eb0bda](7eb0bda)) * Add option for KMS encryption for cloudwatch log groups ([philips-labs#1833](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1833)) ([3f1a67f](3f1a67f)) * Add option to disable lambda to sync runner binaries ([philips-labs#2314](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2314)) ([9f7d32d](9f7d32d)) * Add option to enable access log for API gateway ([philips-labs#2387](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2387)) ([fcd9fba](fcd9fba)) * Add option to enable detailed monitoring for runner launch template ([philips-labs#2024](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2024)) ([e73a267](e73a267)) * Add option to match some of the labes instead of all [philips-labs#2122](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2122) ([philips-labs#2123](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2123)) ([c5e3c21](c5e3c21)) * Add options extra option to ebs block device mapping ([philips-labs#2052](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2052)) ([7cd2524](7cd2524)) * Add output image id used in launch template ([philips-labs#1676](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1676)) ([a49fab4](a49fab4)) * Add possibility to create multiple ebs ([philips-labs#1845](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1845)) ([7a2ca0d](7a2ca0d)) * add s3_location_runner_distribution var as expandable for userdata ([philips-labs#2371](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2371)) ([05fe737](05fe737)) * Add SQS queue resource policy to improve security ([philips-labs#1798](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1798)) ([96def9a](96def9a)) * Add Support for Alternative Partitions in ARNs (like govcloud) ([philips-labs#1815](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1815)) ([0ba06c8](0ba06c8)) * Add ubuntu-jammy example image based on existing ubuntu-focal ([philips-labs#2102](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2102)) ([486ae91](486ae91)) * Add variable to specify custom commands while building the AMI ([philips-labs#1838](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1838)) ([8f9c342](8f9c342)) * Added the AMI to machine setup info to runner workflows. ([philips-labs#2451](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2451)) ([e197cbd](e197cbd)) * Download runner release via latest release API ([philips-labs#2455](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2455)) ([e75e092](e75e092)) * Enable node16 default ([philips-labs#2074](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2074)) ([58aa5ed](58aa5ed)) * Encrypted data at REST on SQS by default ([philips-labs#2431](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2431)) ([7f3f4bf](7f3f4bf)) * Experimental feature - Duplicate workflow job event to extra queue ([philips-labs#2268](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2268)) ([985e722](985e722)) * Experimental feature - Duplicate workflow job event to extra queue ([philips-labs#2268](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2268)) ([ac046b8](ac046b8)) * **images:** add ami for windows core 2022 ([philips-labs#2390](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2390)) ([97707c2](97707c2)) * **images:** Added ubuntu-focual example packer configuration ([philips-labs#1644](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1644)) ([997b171](997b171)) * **images:** Allow passing instance type when building windows image ([philips-labs#2369](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2369)) ([eca23bf](eca23bf)) * Improve syncer s3 kms encryption ([38ed5be](38ed5be)) * Log workflow id in webhook ([philips-labs#2511](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2511)) ([204acf1](204acf1)) * Parameterise delete_on_termination ([philips-labs#1758](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1758)) ([6282351](6282351)), closes [philips-labs#1745](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1745) * Remove var.volume_size in favour of var.block_device_mappings ([4e97048](4e97048)) * Replace environment variable by prefix ([philips-labs#1858](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1858)) ([e2f9a27](e2f9a27)) * **runner:** Ability to disable default runner security group creation ([philips-labs#1718](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1718)) ([94779f8](94779f8)) * **runner:** Add option to disable auto update ([philips-labs#1791](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1791)) ([c2a834f](c2a834f)) * **runners:** Add support for looking up runner AMI ID from an SSM parameter at instance launch time ([philips-labs#2520](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2520)) ([68e2381](68e2381)) * Security improvements, add option to disable userdata logging ([9a9e2ee](9a9e2ee)), closes [#1019](#1019) [#899](#899) [#1080](#1080) [#748](#748) [#1112](#1112) [#903](#903) [#1082](#1082) [#1133](#1133) [#2](#2) [#1204](#1204) [#1219](#1219) [#1202](#1202) [#1202](#1202) [#1135](#1135) [#1164](#1164) [#1154](#1154) [#1207](#1207) [#1203](#1203) [#1247](#1247) [#1222](#1222) [#1244](#1244) [#1223](#1223) [#1254](#1254) [philips-labs#1286](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1286) [philips-labs#1287](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1287) [philips-labs#1278](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1278) [philips-labs#1354](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1354) [philips-labs#1357](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1357) [philips-labs#1356](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1356) [#1228](#1228) [philips-labs#1324](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1324) [philips-labs#1358](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1358) [philips-labs#1377](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1377) [philips-labs#1368](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1368) [philips-labs#1381](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1381) [philips-labs#1415](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1415) [philips-labs#1416](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1416) [philips-labs#1423](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1423) [philips-labs#1399](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1399) [philips-labs#1401](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1401) [philips-labs#1444](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1444) [philips-labs#1480](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1480) [philips-labs#1478](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1478) [philips-labs#1479](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1479) [philips-labs#1476](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1476) [philips-labs#1537](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1537) [philips-labs#1538](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1538) [philips-labs#1541](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1541) [philips-labs#1542](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1542) [philips-labs#1399](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1399) [philips-labs#1444](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1444) [philips-labs#1572](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1572) [philips-labs#1556](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1556) [philips-labs#1561](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1561) [philips-labs#1525](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1525) [philips-labs#1591](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1591) [philips-labs#1577](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1577) [philips-labs#1621](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1621) [philips-labs#1611](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1611) [philips-labs#1615](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1615) [philips-labs#1624](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1624) [philips-labs#1628](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1628) [philips-labs#1647](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1647) [philips-labs#1644](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1644) [philips-labs#1673](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1673) [philips-labs#1676](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1676) [philips-labs#1716](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1716) [philips-labs#1741](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1741) [philips-labs#1738](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1738) [philips-labs#1745](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1745) [philips-labs#1718](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1718) [philips-labs#1791](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1791) [github.com/philips-labs/pull/1816#issuecomment-1060650668](https://github.com/enverus-cts/github.com/philips-labs/terraform-aws-github-runner/pull/1816/issues/issuecomment-1060650668) [philips-labs#1816](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1816) [philips-labs#1833](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1833) [philips-labs#1798](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1798) [philips-labs#1815](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1815) [philips-labs#1838](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1838) [philips-labs#1797](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1797) [philips-labs#1839](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1839) [philips-labs#1812](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1812) [philips-labs#1854](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1854) [philips-labs#1855](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1855) [philips-labs#1845](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1845) [philips-labs#1832](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1832) [philips-labs#1859](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1859) [philips-labs#1937](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1937) [philips-labs#1969](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1969) [philips-labs#1970](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1970) [philips-labs#1954](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1954) [philips-labs#2019](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2019) [philips-labs#1739](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1739) [philips-labs#2019](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2019) [philips-labs#2024](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2024) [philips-labs#2051](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2051) [philips-labs#1858](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1858) [philips-labs#2085](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2085) [philips-labs#2121](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2121) [philips-labs#2073](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2073) [philips-labs#2146](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2146) [philips-labs#2145](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2145) [philips-labs#2147](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2147) [philips-labs#2122](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2122) [philips-labs#2123](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2123) [philips-labs#2181](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2181) [philips-labs#2207](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2207) [philips-labs#2102](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2102) [philips-labs#2214](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2214) [philips-labs#2052](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2052) [philips-labs#2074](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2074) [philips-labs#2233](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2233) [philips-labs#2288](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2288) [philips-labs#2302](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2302) [philips-labs#2291](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2291) [philips-labs#2209](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2209) [philips-labs#2315](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2315) [philips-labs#2314](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2314) [philips-labs#2103](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2103) [philips-labs#2345](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2345) [philips-labs#2387](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2387) [philips-labs#2371](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2371) [philips-labs#2431](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2431) [philips-labs#2369](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2369) [philips-labs#2346](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2346) [philips-labs#2325](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2325) [philips-labs#2434](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2434) [philips-labs#2455](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2455) * Support arm64 lambda functions ([philips-labs#2121](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2121)) ([9e2a7b6](9e2a7b6)) * Support AWS 4.x Terraform provider ([philips-labs#1739](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1739)) ([cfb6da2](cfb6da2)) * Support multi runner process support for runner scale down. ([philips-labs#1859](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1859)) ([3658d6a](3658d6a)) * Support Node16 for AWS Lambda ([philips-labs#2073](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2073)) ([68a2014](68a2014)) * Support s3 bucket logging for distribution cache bucket ([philips-labs#2430](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2430)) ([69578e0](69578e0)) * Webhook accept jobs where not all labels are provided in job. ([philips-labs#2209](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2209)) ([6d9116f](6d9116f)) ### Bug Fixes * added server_side_encryption key to download trigger for distribution ([philips-labs#2207](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2207)) ([404e3b6](404e3b6)) * Autoupdate should be disabled by default ([philips-labs#1797](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1797)) ([828bed6](828bed6)) * Avoid non semantic commontes can be merged. ([philips-labs#1969](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1969)) ([ad1c872](ad1c872)) * Create SQS DLQ policy only if DLQ is created ([philips-labs#1839](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1839)) ([c88a005](c88a005)) * don't apply extra labels unless defined ([philips-labs#2181](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2181)) ([c0b11bb](c0b11bb)) * Don't delete busy runners ([philips-labs#1832](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1832)) ([0e9b083](0e9b083)) * **examples:** Update AMI filter ([philips-labs#1673](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1673)) ([39c019c](39c019c)) * **examples:** Upgrading ubuntu example to 22.04 ([philips-labs#2250](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2250)) ([d4b7650](d4b7650)), closes [philips-labs#2103](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2103) * Ignore case for runner labels. ([philips-labs#2315](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2315)) ([014985a](014985a)) * **images:** avoid wrong AMI could be selected for ubuntu focal ([philips-labs#2214](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2214)) ([76be94b](76be94b)) * Incorrect path of Runner logs ([philips-labs#2233](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2233)) ([98eff98](98eff98)) * Limit AWS Terraform Provider to 3.* ([philips-labs#1741](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1741)) ([0cf2b5d](0cf2b5d)) * Outputs for pool need to account for complexity ([philips-labs#1970](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1970)) ([2d92906](2d92906)) * Preventing that lambda webhook fails when it tries to process an installation_repositories event ([philips-labs#2288](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2288)) ([8656c83](8656c83)) * Remove asterik in permission for runner lambda to describe instances ([9b9da03](9b9da03)) * Remove resource group from module ([philips-labs#2512](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2512)) ([2628352](2628352)) * replaced old environment variable ([philips-labs#2146](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2146)) ([f2072f7](f2072f7)) * replacing deprecated set-output in workflow ([philips-labs#2564](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2564)) ([aa0afdd](aa0afdd)) * Retention days was used instead of kms key id for pool ([philips-labs#1855](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1855)) ([aa29d93](aa29d93)) * **runner:** Cannot disable cloudwatch agent ([philips-labs#1738](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1738)) ([0f798ca](0f798ca)) * **runner:** Don't treat the string "false" as true. ([philips-labs#2051](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2051)) ([b67c7dc](b67c7dc)) * **runners:** Fetch instance environment tag though metadata ([philips-labs#2346](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2346)) ([27db290](27db290)) * **runners:** Pass allocation strategy ([philips-labs#2345](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2345)) ([68d3445](68d3445)) * **runners:** Set the default Windows AMI to Server 2022 ([philips-labs#2325](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2325)) ([78e99d1](78e99d1)) * set explicit permissions on s3 for syncer lambda ([philips-labs#2145](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2145)) ([aa7edd1](aa7edd1)) * set kms key on aws_s3_object when encryption is enabled ([philips-labs#2147](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2147)) ([b4dc706](b4dc706)) * Set the minimal AWS provider to 3.50 ([philips-labs#1937](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1937)) ([16095d8](16095d8)) * **syncer:** Fix for windows binaries in action runner syncer ([philips-labs#1716](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1716)) ([63e0e27](63e0e27)) * Update ubuntu example to fix /opt/hostedtoolcache ([philips-labs#2302](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2302)) ([8eea748](8eea748)) * Upgrade Amazon base AMI to Amazon Linux 2 kernel 5x ([philips-labs#1812](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1812)) ([9aa5532](9aa5532)) * Volume size is ingored ([philips-labs#2014](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2014)) ([b733248](b733248)), closes [philips-labs#1954](https://github.com/enverus-cts/terraform-aws-github-runner/issues/1954) * Webhook lambda misleading log ([philips-labs#2291](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2291)) ([c6275f9](c6275f9)) * **webhook:** Use `x-hub-signature-256` header as default ([philips-labs#2434](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2434)) ([9c3e495](9c3e495)) * Wrong block device mapping ([philips-labs#2019](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2019)) ([185ef20](185ef20)) * Wrong block device mapping ([philips-labs#2019](https://github.com/enverus-cts/terraform-aws-github-runner/issues/2019)) ([c42a467](c42a467))
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
When looking at using ephemeral runners it becomes clear that startup time for the agents becomes a key factor in build times.
To enable us to shorten the startup times as much as possible we should build an image that has all the dependencies and the runner installed. In this way there is much less work to do when starting the runner.
To do this I have used packer to build an image that can be used for the runners.
This requires a few changes to how the current scripting is done. We need to refactor this into two phases
Installation
This is all the work that can be done before the runner starts, so installing dependencies or configuring generic settings
Startup
These are the things that can only happen when you are booting an instance of an agent. Such as collecting the GH token to connect the runner or configuring CloudWatch.