7.15.0 (2024-10-09)
7.14.0 (2024-09-17)
7.13.1 (2024-08-22)
7.13.0 (2024-08-16)
7.12.1 (2024-08-06)
7.12.0 (2024-08-04)
7.11.0 (2024-08-03)
7.10.0 (2024-07-26)
7.9.0 (2024-07-22)
- increase timeout for EC2 termination lambda (#1156) (2bf6d3d)
- remove leading
/
from SSM parameter names in policy ARNs (#1146) (beea51d) - use existing Runner package for Amazon Linux 2023 as default (#1155) (c001183)
7.8.0 (2024-06-30)
7.7.0 (2024-05-29)
7.6.1 (2024-05-10)
7.6.0 (2024-05-01)
7.5.0 (2024-04-11)
- add field
create_aws_s3_bucket_public_access_block
to variablerunner_worker_cache
(#1105) (aa93e76)
7.4.0 (2024-02-15)
- rename
pull_policies
topull_policy
inconfig.toml
(#1084) (df39014) - repair errors in startup shell script (#1087) (9b7c465)
7.3.1 (2024-02-08)
7.3.0 (2024-01-29)
7.2.3 (2023-12-21)
7.2.2 (2023-11-14)
- remove the deprecated runner_user_data output variable (#1032) (4e22a6c)
- retry the jq installation in case of errors (#1033) (1ab5690)
7.2.1 (2023-11-10)
- delete the 'runner_config_toml_rendereded' output variable (#1019) (3f7eaea)
- run the GitLab Runner deregistration process at shutdown (#1034) (68884fd)
7.2.0 (2023-11-07)
7.1.1 (2023-10-13)
7.1.0 (2023-09-28)
7.0.0 (2023-09-09)
- group variables for better overview (#810)
- allow to set all docker options for the Executor (#511)
- add idle_count_min
and
idle_scale_factor` to Docker Machine autoscaling options (#711) - remove deprecated variables (#738)
- remove deprecated pull policy variable (#710)
- add idle_count_min
and
idle_scale_factor` to Docker Machine autoscaling options (#711) (1538d48) - allow to set all docker options for the Executor (#511) (461561e)
- add missing defaults (#905) (eb44182)
- correct the bugs of major version 7 (pre-release) (#860) (f236b58)
- remove deprecated pull policy variable (#710) (8736ec7)
6.5.2 (2023-08-31)
6.5.1 (2023-06-06)
6.5.0 (2023-06-05)
6.4.1 (2023-05-11)
6.4.0 (2023-05-03)
6.3.1 (2023-04-27)
- allow s3 cache access for the "docker" runner executor (#817) (a17015f)
- remove explicit aws_s3_bucket_acl (#815) (5d88370)
6.3.0 (2023-04-21)
- add an IAM policy to grant the runner access to the KMS key (#778) (df25b6a)
- spotfleet: add supports spot fleets for spot instances allowing us to use multiple instance types and AZs (#777) (1bb7e11)
6.2.0 (2023-03-22)
6.1.2 (2023-03-09)
6.1.1 (2023-03-02)
6.1.0 (2023-03-02)
- cancel spot requests (#653) (f1b4f4a), closes #493
- remove unused SSH keys (#652) (3151807), closes #592
- support self-signed certificates (#584) (6c1180e)
6.0.0 (2023-02-26)
- switch to docker+machine from CKI project (#697)
- error IAM role attachement when applying the module the first ti… (#659) (e5eeb10)
- install gitlab-runner after docker+machine driver (#704) (d5b17d0), closes #703
- set correct lifecycle prefix for shared cache (#707) (d966c72)
- switch to docker+machine from CKI project (#697) (8c0e6b3)
5.9.1 (2023-02-02)
5.9.0 (2023-01-12)
- add
amazonec2 userdata
for docker machines (#608) (be789ff) - suppress default tags from module (#651) (0021915)
5.8.1 (2023-01-10)
5.8.0 (2023-01-05)
5.7.0 (2023-01-01)
5.6.1 (2022-12-31)
5.6.0 (2022-12-11)
- allow setting runners.docker.services (#491) (6d73e99)
- asg: Add fine-grained options for schedule_config scale_in and scale_out (#586) (f72b8e3)
- Allow custom runner agent IAM role fixups (#572) (#577) (bcb0c0e)
- runner_agent_role_arn (#596) (b069b88)
5.5.0 (2022-11-27)
- Compress (zip) user_data to avoid max size (#565) (64b8594)
- ensure a complete
config.toml
before starting the GitLab Agent (#574) (e32f3bc) - Use runners_pull_policies to set pull_policy instead of allowed_pull_policies (#557) (a67b87b)
5.4.1 (2022-10-13)
5.4.0 (2022-10-10)
- Add option to disable yum update during cloud init (#545) (9948417)
- Add runners_pull_policies to support multiple pull policies (#544) (8c0d420)
5.3.0 (2022-10-09)
- do not add the cache access policy if there is none (#540) (f69c8bb)
- Too long host names for docker machines (#549) (2fc8e77)
5.2.2 (2022-10-09)
5.2.1 (2022-08-22)
5.2.0 (2022-08-15)
5.1.0 (2022-07-20)
- add
clone_url
toconfig.toml
(#516) (9a41525) - Tag aws_cloudwatch_event_rule resource + linting (#519) (f2e98bb)
5.0.2 (2022-05-26)
5.0.1 (2022-05-20)
5.0.0 (2022-05-20)
- The module is upgraded to Terraform AWS provider 4.x. All new development will only support the new AWS Terraform provider. We keep a branch
terraform-aws-provider-3
to witch we welcome backports to AWS Terraform 3.x provider. Besides reviewing PR's we will do not any active checking on maintenance on this branch. We strongly advise to update your deployment to the new provider version. For more details about upgrading see the upgrade guide. - By default, AWS metadata service ((IMDSv2)[https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html]) is enabled and required for both the agent instance and the docker machine instance. For docker machine this require the GitLab managed docker machines distribution is used. Which the module usages by default.
Co-authored-by: Matthias Kay [email protected] Co-authored-by: Mustafa Abdul-Kader [email protected] Co-authored-by: Steve Wilson [email protected]
4.42.0 (2022-05-16)
- Add option to specify prometheus metrics listen address #478 (d441e27)
- support runner AuthenticationType configuration (7d3617e)
4.41.1 (2022-03-07)
- remove the null resource (#441) (3037c54)
- Replace default GitLab version and fix for docker-machine download url. (#458) (c8113bb), closes #457 #456
4.41.0 (2022-02-27)
- Support multi-region deployments (#437) (583700c)
- Update default versions / drop support Terraform before 0.15 (#454) (c02c6b3)
4.40.0 (2022-02-25)
- Add ASG lifecycle management Lambda function (#392) (5beb9d7)
- Skip runner download and install if it's already done (#446) (54c10f3)
4.39.1 (2022-02-24)
4.39.0 (2022-02-10)
4.38.0 (2022-01-18)
4.37.0 (2022-01-06)
4.36.0 (2021-12-09)
- Add /certs/client and docker.sock to volumes for docker in docker (#396) (3f79054)
- Add variable for Docker registry mirror (#400) (e36c971)
- Make check interval configurable for the runner (#402) (ed9989c)
4.35.0 (2021-10-19)
- Ensure the existence of overrides["name_iam_objects"] before accessing (c9c4c44)
4.34.0 (2021-10-13)
- aws_cloudwatch_log_group name to match the custom one provide by variable log_group_name (#384) (f80accd)
4.33.0 (2021-10-08)
4.32.0 (2021-10-08)
4.31.1 (2021-10-06)
4.31.0 (2021-10-04)
- Add ability to define throughput for root block device on runner (950f6b4)
4.30.0 (2021-08-30)
4.29.0 (2021-08-28)
- Allow configuring docker machine egress rules, see PR #351 for upgrade instructions (845e018)
- Parametrize runner instance launch configuration metadata options (#348) (a4406dc)
- replace launch configuration with launch template (#337) (b805fb6)
- support for settings Sentry DSN (#352) (2a07466)
4.28.0 (2021-07-31)
- Allow configuring docker machine egress rules, see PR #351 for upgrade instructions (f41ce19)
- support for settings Sentry DSN (#352) (5dbe1f7)
4.27.0 (2021-07-22)
4.26.0 (2021-07-08)
- Add
role_tags
to support tag based authorization (#333) (#335) (c81f221) - Make disable_cache configurable (#324) (d726cf4)
- replace default volume type gp2 by gp3 (#338) (1bfaf2b), closes #318
- upgrade default runner version to 14.0.1 (#341) (18b4103)
- add tags for instance profile (#331) (b42712f)
- Remove deprecarted null_data_source (#332) (#334) (b3ab3f6)
- replace deprecated null_data_source with locals (#336) (6a240c9)
- support terraform 1.x (800c264), closes #330
4.25.0 (2021-05-11)
4.24.1 (2021-03-11)
4.24.0 (2021-03-10)
4.23.0 (2021-02-28)
- additional config parameter asg_delete_timeout to configure the timeout when trying to delete the ASG (#305) (f60c9d5)
- allow multilines build scripts (#282) (7000c07), closes #250
- autoscaling configuraton (#301) (6b35a10)
- respect create_cache_bucket variable and avoid concurrent changes to cache bucket (#296) (c3629f6)
- Changed: feat: Restrict public access and public objects for cache bucket (#295) @stefan-kolb
- Changed: docs: Improve spelling and fix typos in README.md (#285) @NikolaiGulatz
- Changed: ci: rewrite CI, examples verified for Terraform 13 and 14
- Changed: fix: failing pip install for assigning eip #280
- Added: feat: Add option to customize helper image (#293) @stefan-kolb
- Added: chore: Contributors list (#291)
- Added: feat: Support Security Group custom description (#278) @pandarouxbsd
- Changed: Updated default version of runner to 13.7
- Changed: Updated default version of docker machine to GitLab v0.16.2-gitlab.2
- Changed: Updated default runner ami to ubuntu 20.04
- Added: Option to set docker runtime (#273) by @thomaskelm
- Added: Option to attach additional policies to the runner (#269) by @bliles
- Added: Random suffix to s3 bucket (#252) by @fliphess
- Changed: upgrade default version for gitlab runner to 13.4.0 (#261)
- Added: allow additional gitlab-runner egress rules (257) by @mhulscher
- Added: Variable to disable EC2 detailed monitoring (#260) by @jessedobbelaere
- Added: KMS alias to kms key (#255) by @Michenux
- Changed: deprecated of peak settings (#242)
- Fix: Bug fix on instance profile variable not passing correctly (#247) by @arthurbdiniz
- Added: IAM policies for runner as variable, (#241) by @kayman-mk
- Changed: Variable aws_zone no longer needed (#232) by @kayma-hl
- Changed: Update default GitLab runner version to 13.1.1 (#239)
- Changed: Merge the tags for the runner agent to remove duplicate tags (#238) @kayma-hl
-
Changed: Update default runner version to 13.0.1
-
Bugfix: Remove duplicate tag names from the tags assigned to the runner agent instance to ensure the correct name (#233) @kayma-hl
- Changed: Update default runner version to 13.0.1
- Added: Asg metrics (#228) @nlarzonNiklas
- Bugfix: and update version (#224)
- Added: Replace auto docs by pre commit hook (#223)
- Added: Add SSMManagedInstanceCore policy to the docker machine role. (#221) @abannerjee
- Added: support custom docker machine distribution (#216) …
- Bugfix: disabled cache (#212)
- Bugfix: failing curl (#217) …
- Change: Drop supported to manage ec2 keys (#192)
- Add: Allow traffic from a list of security group IDs (#207) by @fliphess
- Bugfix: Fix missing policy for existing cache (#208, #206)
- Add: variables
cache_lifecycle_prefix
andcache_lifecycle_clear
to increase flexibility of the cache usages. - Add: Parametrize the AWS ARN for policies (#203) @ericamador
- Add: Allow ping to runners and agent from cidr range (#201 @fliphess
- Change: Refactor templatefile (#199)
- Change: Types of
runners_volumes_tmpfs
, andrunners_services_volumes_tmpfs
are changed, check README or default example for details.
- Add: Option for permissions boundary (#195) @mhulscher
- Bugfix: Fix cancel spot instance script from destroy provisioners are deprecate
- Change: Update default GitLab runner version to 12.8.0
- Bugfix: #187 - fix double comma in tag list for docker machine
- Change: Update terraform-docs to support 0.8.x #185
- Change: Support Amazon Linux #184 by @chludwig-haufe
- Change: Bump gitlab runner version to 12.7.1 from 12.6.0 #183 @loustler
- Fix: Fix error create bucket false #182 @katiatalh w
- Change: Add inputs for EBS-optimized #181 @chrizkim
- Change: Added agent- and runner-only tags #179 @Glen-Moonpig
- Change: Improving Spot Cancelation script. #174 @pshuman-heb
- Change: Forcing updates of Instances on Config change. #173 @pshuman-heb
- Change: default version of the runner to 12.6.0
- Fix: External references from destroy provisioners are deprecated (examples)
- Fix: typos cache bucket (#172) @@thorec
- Fix: missing double quotes (#171) ggrangia
- Change: default for gitlab_url to https://gitlab.com (#170) @riccardomc
- Change: Encrypt runner root device by default (#168) …
- Added: allow eip for runner (#166)
- Make use of on-demand instances in docker-machine #158 @skorfmann
- Allow log retention configuration #157 @geota
- Add option to encrypt logs via KMS #156 @npalm @hendrixroa
- Upgraded the runners (docker-machine) to ubuntu 18.04. You can stay on 16.04 by setting:
runner_ami_filter = ["ubuntu/images/hvm-ssd/ubuntu-xenial-16.04-amd64-server-*"]
- Upgraded GitLab runner to 12.4.1
- Upgraded terraform version, vpc version and provider versions for the examples
- fix type create cache bucket #151 @geota
- Delete unused create_runners_iam_instance_profile #147 @alexharv07
- Remove docker_machine_user variable #146 @alexharv074
- Fixing Docker Machine certificate Generation #143 #145 @npalm @roock
- Add option to limit docker machine ssh ingress access to only the runner #142 @bishtawi
- Add option for tmpfs #104 #141 #137
- Lock down docker port access to only the runner security group #140 @bishtawi
- Add variable docker_machine_docker_cidr_blocks allowing docker ingress restriction #139 @bishtawi
- Adding outputs for agent and runner security groups #138 @hatemosphere
- Add access_level option to registration call in runner template #134 @willychenchen
- Bump gitlab-runner default version to 12.3.0 #135 @loustler
- Set docker machine version by default to 0.16.2 #131 @npalm
- Add SSM session manager support #121 #126 @npalm
- Move to github actions #130 @npalm
- Enable s3 encryption #129 @hendrixroa
- Bump gitlab-runner to 12.2.0 #128 @mpsq
- Added
- Allow for configurable root block size #123 @bsuv
- Enable ASG scheduling #119 @bsuv
- Added
- Add MaxBuilds variable to gitlab runner config #122 @gertjanmaas
- Added
- Option to disable account id is used in bucket name #113 @Glen-Moonpig
- Cancel sport instances during destroy for example default and public.
- Changed:
- Fixed typos #118 @mpsq
- Changed:
- Runner tags namespaced with ":" are split wrong in userdata. #111 @ony-harverson-moonpig
Module is available as Terraform 0.12 module, pin to version 4.x. Please submit pull-requests to the develop
branch.
Migration from 0.11 to 0.12 is tested for the runner-default
example. To migrate the runner, execute the following steps.
- Update to Terraform 0.12
- Migrate your Terraform code via Terraform
terraform 0.12upgrade
. - Update the module from 3.10.0 to 4.0.0, next run
terraform init
- Run
terraform apply
. This should trigger only a re-creation of the auto launch configuration and a minor change in the auto-scaling group.
Module is available as Terraform 0.11 module, pin module to version 3.x. Please submit pull-requests to the terraform011
branch.
- Chnaged
- THe user data script for the EC2 runner agent instance is not logging anymore on trace level. To enable bash xtrace set
enable_runner_user_data_trace_log
totrue
. #49 - Generate links for Readme during release, #63
- THe user data script for the EC2 runner agent instance is not logging anymore on trace level. To enable bash xtrace set
- Changed
- Update default runner version to 12.1.0 (#106)
- Added
- Add runners_volumes variable (#105) @kevinrambaud
- Added
- Variable
docker_machine_ssh_cidr_blocks
to set CIDR for ingress on docker machine SSH rules. @kevinrambaud #101 - Variable
docker_machine_role_json
allowing role policy customization #kevinrambaud #100
- Variable
- Changed
- Creation of multiple instances of the runner is now supported. Cache is therefore moved to an internal module. Pleas see the example
runner-public
for a concrete sample. The change should have no effect if you apply the state migration scriptmigragations/migration-state-3.7.x.sh
. - Examples are more generic by removing the time zone and AZ zone to variables. @@theBenForce
- Creation of multiple instances of the runner is now supported. Cache is therefore moved to an internal module. Pleas see the example
- Changed
- Add option to specify pull policy for docker images by the runner. @roock
- Docker machine AMI image will be by default latest ubuntu 16.06, can be overwritten via variables @roock
- Improved CI docs generation script @roock
- Changed
- Documentation #85: Misleading Variable-Description @solutionDrive-Alt
- Bugfix #70: docker-machine fails starting runners when
amazonec2-request-spot-instance=false
@philippefuentes - Bugfix #72: Detect and retry when docker machine installation fails @eliasdorneles
- Changed: Default version of GitLab runner set to 11.11.2
- Changed
- Creation of multiple instances of the runner is now supported. Cache is therefore moved to an internal module. Pleas see the example
runner-public
for a concrete sample. The change should have no effect if you apply the state migration scriptmigragations/migration-state-3.7.x.sh
. - Examples are more generic by removing the time zone and AZ zone to variables. @@theBenForce
- Creation of multiple instances of the runner is now supported. Cache is therefore moved to an internal module. Pleas see the example
- Changed
- Add option to specify pull policy for docker images by the runner. @roock
- Docker machine AMI image will be by default latest ubuntu 16.06, can be overwritten via variables @roock
- Improved CI docs generation script @roock
- Changed
- Documentation #85: Misleading Variable-Description @solutionDrive-Alt
- Bugfix #70: docker-machine fails starting runners when
amazonec2-request-spot-instance=false
@philippefuentes - Bugfix #72: Detect and retry when docker machine installation fails @eliasdorneles
- Changed: Default version of GitLab runner set to 11.11.2
3.4.0 - 2019-06-06
- Changed:
- Update default runner type, GitLab runner version, and versions in examples.
- Buffix #75 runner is not reachable when runners_use_private_address = false
- Buffix - Missing typ - @Orkin
- Bugfix #72 - Detect and retry when docker machine download fails eliasdorneles
- Bugfix #68 - add count to prevent resource creation failing @philippefuentes
- Bugfix #70 - update policy to allow runners to start when not using spot instances @philippefuentes
3.3.0 - 2019-05-20
- Changed: Default version of GitLab runner set to 11.10.1
- Added: Option to enable / disable SSH login
- Added: Option to use spot instances for runner instance
- Changed: Default instance type is now m5.large
- Added: Custom names for instance and security groups
3.2.0 - 2019-03-09
- Added: Option to set shm_size for the runners, default remains 0.
3.1.0 - 2019-03-09
- Added: Option to set environment variables for the runners, see the variable
runners_environment_vars
. An example added to thepublic-runner
example.
3.0.0 - 2019-03-29
- Changed: The runner will register itself based on the registration token. No need to preregister the runner before running terraform. See the README for configuration and migration. #33
2.3.0 - 2019-03-27
- Bugfix: Added a profile for the docker machine runners. #41
- Changed: Changed the name of runner instance, added
docker-machine
to the name.
2.2.1 - 2019-03-19
- Bugfix: Add tags to spot instances #39
- Changed: Updated terraform providers in examples and default terraform version
2.2.0 - 2019-03-08
- Changed: Upgrade default runner agent to 11.8.0 and docker machine to 0.16.1
- Bugfix: Correct example for docker_machine_options #36 (@declension)
- Added: AWS Zone variable #35 (@declension)
2.1.0 - 2019-02-28
- Bugfix: Shared cache is not working #33
- Bugfix: Missing documentation makes setup fail #31
- Added: Docker executor to run a single node runner, thanks to @msvechla
2.0.0 - 2019-01-13
- Changed: Replaced cache user by a instance profile to access the cache from the build
- Changed: Update gitlab toml cache section, removed deprecated usages of s3
- Changed: The variable
amazon_optimized_amis
is removed an replaced by a filter to select the AMI. To use the default of the latest AMI set the filterami_filter
toamzn-ami-hvm-2018.03.0.20180622-x86_64-ebs
. - Added: Option to set docker machine options via
docker_machine_optionns
. - Added: Several output variables.
1.8.0 - 2018-12-30
- Changed: Update default docker-machine version to 0.16.0
- Changed: Update default gitlab runner to 11.6.0
- Added: Configuration parameters for post_build_script, pre_clone_script, request_concurrency and output_limit. #22
- Added: Configurable docker image for runner #27
- Added: Add pre/post install user-data snippets for runners #26
1.7.0 - 2018-11-21
- Added option to configure instance-profile for runner pre build script. Thanks to @msvechla
1.6.0 - 2018-10-06
- Updated the default GitLab Runner to 11.3.1
1.5.0 - 2018-08-10
- Updated default AMI map to Amazon Linux AMI 2018.03 was released on 2018-06-28
1.4.0 - 2018-08-09
- Added an option to allow gitlab runner instance to create service linked roles, by default enabled.
- Added example for public subnet
1.3.0 - 2018-08-08
- Add option to run runners in public subnet
1.2.1 - 2018-08-02
- Add work around to README for missing service linked roles, see #15
1.2.0 - 2018-07-30
- Add a map for for a more flexible mechanism to tag.
- Set default gitlab runner to 11.1.0
- Replaced the dedicated docker machine user by an instance profile
- Limit the resources access for docker machine.
- Updated default docker build image to 18.03.1-ce
- Add fix for non correct ec2 instances starting, add retry to yum update
1.1.0 - 2018-07-14
- Add variable to enable cloudwatch monitoring for spot instances, by default disabled.
- Add off peak runner settings.
- Add file system root size for runners.
- Refactored example, key generation is part of terraform.
1.0.3 - 2018-07-14
- Add parameter for docker machine version
- Upgrade default gitlab runner version to 11.0.0
- Upgrade default docker-machine version to 0.15.0
1.0.2 - 2018-06-22
- Add link to blog for a detailed setup description
1.0.1 - 2018-06-21
- Moved example so it is shown in the registry
1.0.0 - 2018-06-19
- Default Gitlab runner version set to 10.8.0
- Update default AMI's to The latest Amazon Linux AMI 2017.09.1 - released on 2018-01-17.
- Minor updates in the example