Skip to content

auth Leapp Migration Guide#1633

Merged
osterman merged 15 commits intomainfrom
docs/leapp-atmosauth-migration
Oct 20, 2025
Merged

auth Leapp Migration Guide#1633
osterman merged 15 commits intomainfrom
docs/leapp-atmosauth-migration

Conversation

@Benbentwo
Copy link
Member

@Benbentwo Benbentwo commented Oct 15, 2025

This pull request adds documentation to help users migrate from Leapp to Atmos Auth for AWS IAM Identity Center authentication. The main changes introduce a new migration guide and organize authentication documentation under a dedicated category.

Documentation improvements:

  • Added a comprehensive migration guide (migrating-from-leapp.mdx) that explains how to convert Leapp sessions and providers to Atmos Auth YAML configuration, including field mappings, step-by-step instructions, troubleshooting tips, and a comparison table.

Documentation structure:

  • Created a new _category_.json file to group authentication documentation under "Authentication (atmos auth)" in the sidebar for improved discoverability.

Summary by CodeRabbit

  • Documentation
    • Removed the legacy Atmos Auth User Guide.
    • Added a "Migrating from Leapp" tutorial with migration steps, field mappings, and verification commands.
    • Added a Geodesic configuration tutorial for Atmos Auth integration.
    • Introduced an Auth “Tutorials” category and two new blog posts introducing Atmos Auth and tutorials.
    • Reorganized Auth CLI docs: updated ordering, labels, slugs, subcommand links, and sidebar positions.
    • Expanded the Auth usage guide with AWS Permission Set account specification guidance and examples.

@Benbentwo Benbentwo requested a review from a team as a code owner October 15, 2025 17:47
@Benbentwo Benbentwo added documentation Improvements or additions to documentation no-release Do not create a new release (wait for additional code changes) auth labels Oct 15, 2025
@github-actions github-actions bot added the size/m Medium size PR label Oct 15, 2025
@coderabbitai
Copy link
Contributor

coderabbitai bot commented Oct 15, 2025

📝 Walkthrough

Walkthrough

Removed the legacy Atmos Auth User Guide; added/updated frontmatter (sidebar positions, ids/slugs/labels) for several CLI auth docs; created a Tutorials category and added migration and Geodesic tutorials; updated auth usage examples and internal subcommand links; added two blog posts announcing Atmos Auth and tutorials.

Changes

Cohort / File(s) Summary of Changes
Remove legacy user guide
pkg/auth/docs/UserGuide.md
Deleted the full Atmos Auth User Guide (multi-section documentation removed).
Add sidebar positions
website/docs/cli/commands/auth/auth-env.mdx, website/docs/cli/commands/auth/auth-exec.mdx, website/docs/cli/commands/auth/auth-login.mdx, website/docs/cli/commands/auth/auth-validate.mdx, website/docs/cli/commands/auth/auth-whoami.mdx
Added sidebar_position frontmatter entries to control documentation ordering; no content changes.
Frontmatter rename & routing
website/docs/cli/commands/auth/auth-user-configure.mdx
Updated frontmatter: sidebar_label → "user configure", id → "auth-user-configure", slug/cli/commands/auth/auth-user-configure; added sidebar_position: 6.
Subcommand link update + sidebar position
website/docs/cli/commands/auth/auth-user.mdx
Added sidebar_position: 5 and updated subcommand link ./user-configure./auth-user-configure.
New Tutorials category
website/docs/cli/commands/auth/tutorials/_category_.json
Added Tutorials category config (high position, collapsible/collapsed).
New migration tutorial
website/docs/cli/commands/auth/tutorials/migrating-from-leapp.mdx
Added migration guide from Leapp to Atmos Auth with field mappings, examples, testing, and troubleshooting.
Geodesic integration tutorial
website/docs/cli/commands/auth/tutorials/configuring-geodesic.mdx
Added step-by-step guide to configure Geodesic with Atmos Auth (Dockerfile, Makefile, source profile, examples, troubleshooting).
Usage guide updates
website/docs/cli/commands/auth/usage.mdx
Adjusted identity/account example values; added AWS Permission Set account specification section (account.name vs account.id); updated links to auth-user-configure; added explanatory notes and examples.
New blog posts
website/blog/2025-10-13-introducing-atmos-auth.md, website/blog/2025-10-18-auth-tutorials-geodesic-leapp.md
Added marketing/announce blog post and a tutorials roundup post introducing Atmos Auth and linking tutorials.

Sequence Diagram(s)

Omitted — changes are documentation and frontmatter only; no control-flow or runtime behavior modifications.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Suggested reviewers

  • aknysh
  • Gowiem

Pre-merge checks and finishing touches

✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title Check ✅ Passed The PR title "auth Leapp Migration Guide" directly refers to a significant component of the changeset — the new migrating-from-leapp.mdx documentation file introduced in the tutorials section. This is explicitly listed as a main change in the PR objectives. However, the actual changeset encompasses substantially more than just the migration guide: it includes removal of legacy documentation (UserGuide.md), reorganization of auth CLI command docs with sidebar positioning, addition of a Geodesic configuration guide, two new blog posts introducing Atmos Auth, and updates to usage documentation. While the title clearly communicates one key part of the change, it doesn't represent the full scope of the documentation restructuring and feature introduction happening in this PR.
Docstring Coverage ✅ Passed No functions found in the changes. Docstring coverage check skipped.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch docs/leapp-atmosauth-migration

📜 Recent review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Disabled knowledge base sources:

  • 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 a5798c3 and 644c367.

📒 Files selected for processing (1)
  • website/docs/cli/commands/auth/tutorials/configuring-geodesic.mdx (1 hunks)
🧰 Additional context used
📓 Path-based instructions (3)
website/**

📄 CodeRabbit inference engine (.cursor/rules/atmos-rules.mdc)

website/**: Update website documentation in website/ when adding features
Ensure consistency between CLI help text and website documentation
Follow the website's documentation structure and style
Keep website code in website/ and follow its architecture/style; test changes locally
Keep CLI and website documentation in sync; document new features with examples and use cases

Always build the website (cd website && npm run build) after modifying docs, images, sidebars, or site components to catch broken links/formatting.

Files:

  • website/docs/cli/commands/auth/tutorials/configuring-geodesic.mdx
website/docs/cli/commands/**/**/*.mdx

📄 CodeRabbit inference engine (CLAUDE.md)

All new commands/flags/parameters must be documented in Docusaurus MDX under website/docs/cli/commands//.mdx using definition lists (

) for arguments and flags and the provided frontmatter/template.

Files:

  • website/docs/cli/commands/auth/tutorials/configuring-geodesic.mdx
**/*

📄 CodeRabbit inference engine (CLAUDE.md)

Target minimum 80% coverage on new/changed lines; exclude mock files from coverage: **/mock_.go, mock_.go, **/mock/*.go.

Files:

  • website/docs/cli/commands/auth/tutorials/configuring-geodesic.mdx
🧠 Learnings (3)
📚 Learning: 2025-01-17T00:18:57.769Z
Learnt from: aknysh
PR: cloudposse/atmos#944
File: go.mod:206-206
Timestamp: 2025-01-17T00:18:57.769Z
Learning: For indirect dependencies with license compliance issues in the cloudposse/atmos repository, the team prefers to handle them in follow-up PRs rather than blocking the current changes, as these issues often require deeper investigation of the dependency tree.

Applied to files:

  • website/docs/cli/commands/auth/tutorials/configuring-geodesic.mdx
📚 Learning: 2025-09-10T21:17:55.273Z
Learnt from: samtholiya
PR: cloudposse/atmos#1466
File: toolchain/http_client_test.go:3-10
Timestamp: 2025-09-10T21:17:55.273Z
Learning: In the cloudposse/atmos repository, imports should never be changed as per samtholiya's coding guidelines.

Applied to files:

  • website/docs/cli/commands/auth/tutorials/configuring-geodesic.mdx
📚 Learning: 2025-01-25T03:51:57.689Z
Learnt from: Listener430
PR: cloudposse/atmos#934
File: tests/fixtures/scenarios/docs-generate/README.md.gotmpl:99-118
Timestamp: 2025-01-25T03:51:57.689Z
Learning: For the cloudposse/atmos repository, changes to template contents should be handled in dedicated PRs and are typically considered out of scope for PRs focused on other objectives.

Applied to files:

  • website/docs/cli/commands/auth/tutorials/configuring-geodesic.mdx
🪛 LanguageTool
website/docs/cli/commands/auth/tutorials/configuring-geodesic.mdx

[typographical] ~205-~205: Consider using a typographic opening quote here.
Context: ... hours) ## Troubleshooting ### Issue: "Credentials not found" error Cause:...

(EN_QUOTES)


[typographical] ~205-~205: Consider using a typographic close quote here.
Context: ...oting ### Issue: "Credentials not found" error Cause: Atmos hasn't authenti...

(EN_QUOTES)

⏰ 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). (6)
  • GitHub Check: Build (windows-latest, windows)
  • GitHub Check: Build (macos-latest, macos)
  • GitHub Check: Analyze (go)
  • GitHub Check: Lint (golangci)
  • GitHub Check: website-deploy-preview
  • GitHub Check: Summary
🔇 Additional comments (5)
website/docs/cli/commands/auth/tutorials/configuring-geodesic.mdx (5)

1-60: Well-structured documentation with clear guidance.

The tutorial effectively explains host-based authentication and credential mounting for Geodesic. The frontmatter, overview, and configuration steps are clear and logically sequenced. Examples are concrete and realistic.


100-114: Permission set naming matches realistic AWS IAM Identity Center pattern.

The example uses IdentityDevopsTeamAccess as the permission set name, which reflects a realistic naming convention. The complete example (lines 120–139) shows this in context alongside the aws-config-teams integration, making it clear how permission sets map to the configuration.

Also applies to: 120-139


186-227: Workflow and troubleshooting sections are comprehensive and actionable.

The workflow clearly explains the host-based authentication model, and the troubleshooting section addresses the most likely pain points (missing credentials, profile mismatches, incorrect config paths). The validation command references (atmos auth validate --verbose) provide a useful debugging path.


33-34: All internal documentation links are valid and will resolve correctly. Both target files exist, and the anchor references match their corresponding section headers:

  • /cli/commands/auth/usage#credential-storage → "## Credential Storage" (line 429) ✓
  • /cli/commands/auth/usage#component-level-configuration → "## Component-Level Configuration" (line 329) ✓
  • /cli/commands/auth/tutorials/migrating-from-leapp → file exists ✓

The links follow correct Docusaurus format with absolute paths and kebab-case anchors.


186-251: The review comment is valid and follows your coding guidelines. Since the sandbox environment lacks build dependencies (Docusaurus), I can't execute the verification here—this is expected per the environment limitations.

The suggestion to run npm run build after documentation changes is correct and matches your guideline: "Always build the website (cd website && npm run build) after modifying docs, images, sidebars, or site components to catch broken links/formatting."

The developer should verify this locally by running the build command to catch any broken cross-references or formatting issues in the documentation changes.


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

Comment @coderabbitai help to get the list of available commands and usage tips.

Copy link
Contributor

@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: 2

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Disabled knowledge base sources:

  • 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 82ff97a and c525f07.

⛔ Files ignored due to path filters (1)
  • website/static/img/leapp-example.png is excluded by !**/*.png
📒 Files selected for processing (2)
  • website/docs/core-concepts/auth/_category_.json (1 hunks)
  • website/docs/core-concepts/auth/migrating-from-leapp.mdx (1 hunks)
🧰 Additional context used
📓 Path-based instructions (2)
website/**

📄 CodeRabbit inference engine (.cursor/rules/atmos-rules.mdc)

website/**: Update website documentation in website/ when adding features
Ensure consistency between CLI help text and website documentation
Follow the website's documentation structure and style
Keep website code in website/ and follow its architecture/style; test changes locally
Keep CLI and website documentation in sync; document new features with examples and use cases

Files:

  • website/docs/core-concepts/auth/migrating-from-leapp.mdx
  • website/docs/core-concepts/auth/_category_.json
website/docs/**/*.{md,mdx}

📄 CodeRabbit inference engine (CLAUDE.md)

Always build the website after any docs changes to website/docs (*.mdx or *.md).

Files:

  • website/docs/core-concepts/auth/migrating-from-leapp.mdx
🪛 LanguageTool
website/docs/core-concepts/auth/migrating-from-leapp.mdx

[typographical] ~20-~20: Consider using a typographic opening quote here.
Context: ... - Provider: SSO integration (e.g., "CPLive") connecting to AWS IAM Identity ...

(EN_QUOTES)


[typographical] ~20-~20: Consider using a typographic close quote here.
Context: ...ovider**: SSO integration (e.g., "CPLive") connecting to AWS IAM Identity Center ...

(EN_QUOTES)


[grammar] ~20-~20: There might be a mistake here.
Context: ...") connecting to AWS IAM Identity Center - Session: Individual AWS access configu...

(QB_NEW_EN)


[grammar] ~21-~21: There might be a mistake here.
Context: ...on (account + permission set + provider) - Identity: Permission set name (e.g., "...

(QB_NEW_EN)


[typographical] ~22-~22: Consider using a typographic opening quote here.
Context: ...Identity*: Permission set name (e.g., "IdentityManagersTeamAccess") - **Named P...

(EN_QUOTES)


[typographical] ~22-~22: Consider using a typographic close quote here.
Context: ... name (e.g., "IdentityManagersTeamAccess") - Named Profile: Profile name used...

(EN_QUOTES)


[grammar] ~22-~22: There might be a mistake here.
Context: ...ame (e.g., "IdentityManagersTeamAccess") - Named Profile: Profile name used in AW...

(QB_NEW_EN)


[grammar] ~23-~23: There might be a mistake here.
Context: ... Profile**: Profile name used in AWS CLI - Region: AWS region for the session ##...

(QB_NEW_EN)


[grammar] ~32-~32: There might be a mistake here.
Context: ...ple.png) A typical Leapp session shows: - Provider: CPLive (in sidebar under "In...

(QB_NEW_EN)


[typographical] ~33-~33: Consider using typographic quotation marks here.
Context: ... Provider: CPLive (in sidebar under "Integrations") - Session: core-identity - **Ident...

(EN_QUOTES)


[grammar] ~33-~33: There might be a mistake here.
Context: ...CPLive (in sidebar under "Integrations") - Session: core-identity - Identity:...

(QB_NEW_EN)


[grammar] ~34-~34: There might be a mistake here.
Context: ...egrations") - Session: core-identity - Identity: IdentityManagersTeamAccess -...

(QB_NEW_EN)


[grammar] ~35-~35: There might be a mistake here.
Context: ...Identity: IdentityManagersTeamAccess - Named Profile: cplive-identity - **Reg...

(QB_NEW_EN)


[grammar] ~36-~36: There might be a mistake here.
Context: ...ess - Named Profile: cplive-identity - Region: US-EAST-1 ### Equivalent `atm...

(QB_NEW_EN)


[grammar] ~62-~62: There might be a mistake here.
Context: ... Field | atmos auth Location | Notes | |-------------|----------------------|--...

(QB_NEW_EN)


[grammar] ~63-~63: There might be a mistake here.
Context: ...--------|----------------------|-------| | Provider name | providers.<name> | U...

(QB_NEW_EN)


[grammar] ~64-~64: There might be a mistake here.
Context: ... descriptive name (e.g., cplive-sso) | | Start URL | `providers..start_ur...

(QB_NEW_EN)


[grammar] ~65-~65: There might be a mistake here.
Context: ...ound in AWS IAM Identity Center portal | | Region | providers.<name>.region | F...

(QB_NEW_EN)


[grammar] ~66-~66: There might be a mistake here.
Context: ...| From Leapp session's Region column | | Session (account) |identities....

(QB_NEW_EN)


[grammar] ~67-~67: There might be a mistake here.
Context: ...cipal.account.name| AWS account name | | Identity (permission set) |identitie...

(QB_NEW_EN)


[grammar] ~68-~68: There might be a mistake here.
Context: ...ipal.name| Exact permission set name | | Named Profile |identities.` (k...

(QB_NEW_EN)


[typographical] ~75-~75: Consider using typographic quotation marks here.
Context: ...your provider in the left sidebar under "Integrations". **Create the provider in atmos.yaml...

(EN_QUOTES)


[grammar] ~217-~217: There might be a mistake here.
Context: ...erences | Aspect | Leapp | Atmos Auth | |--------|-------|------------| | **Inte...

(QB_NEW_EN)


[grammar] ~218-~218: There might be a mistake here.
Context: ...s Auth | |--------|-------|------------| | Interface | GUI application | CLI ...

(QB_NEW_EN)


[grammar] ~219-~219: There might be a mistake here.
Context: ... | GUI application | CLI + YAML config | | Configuration | Stored in app | Ve...

(QB_NEW_EN)


[grammar] ~220-~220: There might be a mistake here.
Context: ...p | Version-controlled in atmos.yaml | | Session Switching | Click in GUI |...

(QB_NEW_EN)


[grammar] ~221-~221: There might be a mistake here.
Context: ...in GUI | CLI flags or component config | | Credential Storage | System keycha...

(QB_NEW_EN)


[grammar] ~222-222: There might be a mistake here.
Context: ...stem keychain | System keychain (same) | | AWS Files | ~/.aws/config | `
/....

(QB_NEW_EN)


[grammar] ~223-223: There might be a mistake here.
Context: ...s/config|
/.aws/atmos//` | | Team Sharing | Manual setup per pe...

(QB_NEW_EN)


[grammar] ~224-~224: There might be a mistake here.
Context: ...r person | Shared config in repository | | CI/CD | Not designed for automatio...

(QB_NEW_EN)


[grammar] ~231-~231: There might be a mistake here.
Context: ...parate App**: Authentication integrated into Atmos workflow ✅ Team Consistency: ...

(QB_NEW_EN)


[typographical] ~238-~238: Consider using a typographic opening quote here.
Context: ...` files ## Troubleshooting ### Issue: "Provider not found" error Cause: Th...

(EN_QUOTES)


[typographical] ~238-~238: Consider using a typographic close quote here.
Context: ...shooting ### Issue: "Provider not found" error Cause: The provider name in ...

(EN_QUOTES)


[typographical] ~254-~254: Consider using a typographic opening quote here.
Context: ... # ← Must match exactly ``` ### Issue: "Permission set not found" Cause: Th...

(EN_QUOTES)


[typographical] ~254-~254: Consider using a typographic close quote here.
Context: ...`` ### Issue: "Permission set not found" Cause: The permission set name doe...

(EN_QUOTES)

⏰ 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). (11)
  • GitHub Check: Build (windows-latest, windows)
  • GitHub Check: Analyze (go)
  • GitHub Check: Lint (golangci)
  • GitHub Check: website-deploy-preview
  • GitHub Check: Analyze (go)
  • GitHub Check: Lint (golangci)
  • GitHub Check: Lint (golangci)
  • GitHub Check: Analyze (go)
  • GitHub Check: Analyze (go)
  • GitHub Check: Lint (golangci)
  • GitHub Check: Summary

@codecov
Copy link

codecov bot commented Oct 15, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 66.30%. Comparing base (126306a) to head (644c367).
⚠️ Report is 1 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main    #1633      +/-   ##
==========================================
+ Coverage   66.28%   66.30%   +0.02%     
==========================================
  Files         350      350              
  Lines       39674    39674              
==========================================
+ Hits        26298    26307       +9     
+ Misses      11369    11361       -8     
+ Partials     2007     2006       -1     
Flag Coverage Δ
unittests 66.30% <ø> (+0.02%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.
see 2 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@github-actions github-actions bot added size/l Large size PR and removed size/m Medium size PR labels Oct 15, 2025
Copy link
Contributor

@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: 1

♻️ Duplicate comments (1)
website/docs/cli/commands/auth/tutorials/migrating-from-leapp.mdx (1)

48-60: Align the region values across the examples.

Leapp lists US-EAST-1, but both YAML snippets switch to us-east-2. That inconsistency will trip folks copying the samples. Please keep the region the same everywhere.

Apply this diff in both spots:

-      region: us-east-2 # (5)
+      region: us-east-1 # (5)
...
-      region: us-east-2
+      region: us-east-1

Also applies to: 96-98

📜 Review details

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Disabled knowledge base sources:

  • 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 3648095 and d50a46e.

⛔ Files ignored due to path filters (1)
  • website/static/img/leapp-example.png is excluded by !**/*.png
📒 Files selected for processing (1)
  • website/docs/cli/commands/auth/tutorials/migrating-from-leapp.mdx (1 hunks)
🧰 Additional context used
📓 Path-based instructions (3)
website/**

📄 CodeRabbit inference engine (.cursor/rules/atmos-rules.mdc)

website/**: Update website documentation in website/ when adding features
Ensure consistency between CLI help text and website documentation
Follow the website's documentation structure and style
Keep website code in website/ and follow its architecture/style; test changes locally
Keep CLI and website documentation in sync; document new features with examples and use cases

Files:

  • website/docs/cli/commands/auth/tutorials/migrating-from-leapp.mdx
website/docs/cli/commands/**/**/*.mdx

📄 CodeRabbit inference engine (CLAUDE.md)

website/docs/cli/commands/**/**/*.mdx: All new commands/flags/parameters must have Docusaurus documentation at website/docs/cli/commands//.mdx using prescribed structure and definition lists.
Create Docusaurus docs for new commands with required frontmatter, purpose note, usage, examples, arguments, and flags sections in consistent order.

Files:

  • website/docs/cli/commands/auth/tutorials/migrating-from-leapp.mdx
website/docs/**/*.{md,mdx}

📄 CodeRabbit inference engine (CLAUDE.md)

Always build the website after any docs changes to website/docs (*.mdx or *.md).

Files:

  • website/docs/cli/commands/auth/tutorials/migrating-from-leapp.mdx
🪛 LanguageTool
website/docs/cli/commands/auth/tutorials/migrating-from-leapp.mdx

[grammar] ~10-~10: There might be a mistake here.
Context: ...ture updates. > Note: atmos auth requires minimum Atmos version v1.194.1 This ...

(QB_NEW_EN)


[typographical] ~22-~22: Consider using typographic quotation marks here.
Context: ...1. Provider: SSO integration (e.g., "acme") connecting to AWS IAM Identity Center ...

(EN_QUOTES)


[grammar] ~22-~22: There might be a mistake here.
Context: ...") connecting to AWS IAM Identity Center 2. Session: Individual AWS access configu...

(QB_NEW_EN)


[grammar] ~23-~23: There might be a mistake here.
Context: ...on (account + permission set + provider) 3. Identity: Permission set name (e.g., "...

(QB_NEW_EN)


[typographical] ~24-~24: Consider using a typographic opening quote here.
Context: ...Identity*: Permission set name (e.g., "IdentityManagersTeamAccess") 4. **Named ...

(EN_QUOTES)


[typographical] ~24-~24: Consider using a typographic close quote here.
Context: ... name (e.g., "IdentityManagersTeamAccess") 4. Named Profile: Profile name use...

(EN_QUOTES)


[grammar] ~24-~24: There might be a mistake here.
Context: ...ame (e.g., "IdentityManagersTeamAccess") 4. Named Profile: Profile name used in AW...

(QB_NEW_EN)


[grammar] ~25-~25: There might be a mistake here.
Context: ... Profile**: Profile name used in AWS CLI 5. Region: AWS region for the session ##...

(QB_NEW_EN)


[grammar] ~34-~34: There might be a mistake here.
Context: ...ple.png) A typical Leapp session shows: - Provider: acme (in sidebar under "Inte...

(QB_NEW_EN)


[typographical] ~35-~35: Consider using typographic quotation marks here.
Context: ... - Provider: acme (in sidebar under "Integrations") - Session: core-identity - **Ident...

(EN_QUOTES)


[grammar] ~35-~35: There might be a mistake here.
Context: ...: acme (in sidebar under "Integrations") - Session: core-identity - Identity:...

(QB_NEW_EN)


[grammar] ~36-~36: There might be a mistake here.
Context: ...egrations") - Session: core-identity - Identity: IdentityManagersTeamAccess -...

(QB_NEW_EN)


[grammar] ~37-~37: There might be a mistake here.
Context: ...Identity: IdentityManagersTeamAccess - Named Profile: acme-identity - **Regio...

(QB_NEW_EN)


[grammar] ~38-~38: There might be a mistake here.
Context: ...ccess - Named Profile: acme-identity - Region: US-EAST-1 ### Equivalent `atm...

(QB_NEW_EN)


[grammar] ~64-~64: There might be a mistake here.
Context: ... Field | atmos auth Location | Notes | |-------------|----------------------|--...

(QB_NEW_EN)


[grammar] ~65-~65: There might be a mistake here.
Context: ...--------|----------------------|-------| | (1) Provider name | providers.<name>...

(QB_NEW_EN)


[grammar] ~66-~66: There might be a mistake here.
Context: ... a descriptive name (e.g., acme-sso) | | (1.a) Start URL | `providers..st...

(QB_NEW_EN)


[grammar] ~67-~67: There might be a mistake here.
Context: ...ound in AWS IAM Identity Center portal | | (5) Region | providers.<name>.region...

(QB_NEW_EN)


[grammar] ~68-~68: There might be a mistake here.
Context: ...| From Leapp session's Region column | | (2) Session (account) |identities.<n...

(QB_NEW_EN)


[grammar] ~69-~69: There might be a mistake here.
Context: ...cipal.account.name| AWS account name | | (3) Identity (permission set) |ident...

(QB_NEW_EN)


[grammar] ~70-~70: There might be a mistake here.
Context: ...ipal.name| Exact permission set name | | (4) Named Profile |identities....

(QB_NEW_EN)


[typographical] ~77-~77: Consider using typographic quotation marks here.
Context: ...your provider in the left sidebar under "Integrations". **Create the provider in atmos.yaml...

(EN_QUOTES)


[typographical] ~210-~210: Consider using a typographic opening quote here.
Context: ...ration. ## Troubleshooting ### Issue: "Provider not found" error Cause: Th...

(EN_QUOTES)


[typographical] ~210-~210: Consider using a typographic close quote here.
Context: ...shooting ### Issue: "Provider not found" error Cause: The provider name in ...

(EN_QUOTES)


[typographical] ~226-~226: Consider using a typographic opening quote here.
Context: ... # ← Must match exactly ``` ### Issue: "Permission set not found" Cause: Th...

(EN_QUOTES)


[typographical] ~226-~226: Consider using a typographic close quote here.
Context: ...`` ### Issue: "Permission set not found" Cause: The permission set name doe...

(EN_QUOTES)

⏰ 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). (5)
  • GitHub Check: Build (windows-latest, windows)
  • GitHub Check: website-deploy-preview
  • GitHub Check: Analyze (go)
  • GitHub Check: Lint (golangci)
  • GitHub Check: Summary
🔇 Additional comments (1)
website/docs/cli/commands/auth/tutorials/migrating-from-leapp.mdx (1)

1-7: Verify docs build passes in your local environment.

The build command failed in the sandbox due to an environment issue (Node executable not found in temp directory during core-js postinstall), not due to documentation changes. Please run cd website && yarn install --frozen-lockfile && yarn build locally to confirm the docs build succeeds with your changes.

* Fix AWS region inconsistency in Leapp migration docs

Updated provider region from us-east-2 to us-east-1 to match the Leapp
session example shown in the documentation (US-EAST-1). This ensures
users copying the example will use the correct region that corresponds
to their Leapp configuration reference.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* Fix AWS_CONFIG_FILE redefinition in Geodesic Dockerfile

Changed the second AWS_CONFIG_FILE assignment to use AWS_CONFIG_TEAMS
to avoid clobbering the Atmos-managed config path. This ensures that:

- AWS_CONFIG_FILE points to Atmos auth config (required for authentication)
- AWS_CONFIG_TEAMS points to teams config (for assume-role utilities)

Added a note explaining the separation and how to update Geodesic
utilities that reference the teams config.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* Add Geodesic guide and blog post for auth tutorials

Created comprehensive documentation for configuring Geodesic with
Atmos Auth and introduced both guides with a blog post:

New Files:
- website/docs/cli/commands/auth/tutorials/configuring-geodesic-with-atmos-auth.mdx
  Complete guide for integrating Geodesic with Atmos Auth, including:
  - Dockerfile environment variable configuration
  - Makefile automatic login setup
  - Source profile configuration for assume-role
  - Complete working examples and troubleshooting

- website/blog/2025-10-18-auth-tutorials-geodesic-leapp.md
  Blog post announcing the new auth guides with:
  - Overview of what's new
  - Key benefits of using Atmos Auth
  - Getting started instructions
  - Links to detailed guides

Modified Files:
- website/docs/cli/commands/auth/tutorials/migrating-from-leapp.mdx
  Replaced inline Geodesic integration section with reference to
  the new dedicated guide, keeping Leapp migration guide focused

This reorganization provides better separation of concerns and makes
it easier to maintain and discover each guide independently.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* Remove unnecessary sections from blog post

Dropped "Why These Guides Matter" and "What's Next" sections to
keep the blog post more focused and concise.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* Changes auto-committed by Conductor

* Rename Geodesic guide to remove redundant suffix

Renamed configuring-geodesic-with-atmos-auth.mdx to
configuring-geodesic.mdx for a cleaner, more concise filename.

Updated all references in:
- migrating-from-leapp.mdx
- blog post
- internal document id

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* Clarify authentication flow for Geodesic integration

Added explicit clarification that authentication happens on the host
machine (laptop), not inside the Geodesic container:

- New "How Authentication Works" section explaining the flow
- Expanded workflow with clear host vs container context
- Updated troubleshooting to emphasize host-based re-authentication
- Added keychain integration note explaining limitations in containers
- Clarified that browser-based SSO requires host machine access

This addresses confusion about where atmos auth login runs and when
keychain integration is available.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* Update blog post to clarify host-based authentication

Updated Geodesic section in blog post to emphasize:
- Authentication happens on host machine (laptop)
- Authentication occurs before container starts, not inside it
- Keychain integration limitations with containers

This aligns with the detailed clarifications added to the guide itself.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* Remove change-oriented language from blog post

Changed "clarifies" to "covers" and "explains" - the blog post
should describe what the guide contains, not frame it as fixing
or clarifying previous documentation since this is net-new content.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* Update Geodesic env vars to follow Atmos conventions

Changed Dockerfile variables to use proper Atmos naming:
- DEFAULT_ATMOS_PROVIDER → ATMOS_AUTH_PROVIDER
- DEFAULT_ATMOS_IDENTITY → ATMOS_AUTH_IDENTITY

Also added ATMOS_IDENTITY env var which Atmos actually reads to
determine the default identity (as documented in auth env docs).

The previous naming (DEFAULT_*) didn't follow Atmos conventions and
could be confused with actual Atmos environment variables. The new
names make it clear these are Geodesic-specific build args used to
construct credential paths, while ATMOS_IDENTITY is the actual env
var that Atmos reads.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

* Add blog post introducing atmos auth feature

Created comprehensive announcement post for atmos auth release,
backdated to v1.194.1 release (Oct 13, 2025).

The post covers:
- The authentication problem platform teams face
- Why existing solutions (Leapp, aws-vault, etc.) fall short
- How atmos auth solves these problems
- That it can be used standalone, not just with full Atmos
- Configuration as code approach vs wiki-ops
- Getting started guide and examples

Emphasizes that this solves a problem teams face repeatedly,
inspired by aws-vault and aws2saml, but built natively into
Atmos for better integration and shared configuration.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>

---------

Co-authored-by: Claude <noreply@anthropic.com>
@github-actions github-actions bot added size/xl Extra large size PR and removed size/l Large size PR labels Oct 18, 2025
@mergify
Copy link

mergify bot commented Oct 18, 2025

Warning

This PR exceeds the recommended limit of 1,000 lines.

Large PRs are difficult to review and may be rejected due to their size.

Please verify that this PR does not address multiple issues.
Consider refactoring it into smaller, more focused PRs to facilitate a smoother review process.

coderabbitai[bot]
coderabbitai bot previously approved these changes Oct 18, 2025
Co-authored-by: Dan Miller <miller0daniel@gmail.com>
coderabbitai[bot]
coderabbitai bot previously approved these changes Oct 18, 2025
* Changes auto-committed by Conductor

* Changes auto-committed by Conductor

* Changes auto-committed by Conductor
coderabbitai[bot]
coderabbitai bot previously approved these changes Oct 19, 2025
Co-authored-by: Dan Miller <miller0daniel@gmail.com>
@osterman osterman merged commit 89a9252 into main Oct 20, 2025
54 checks passed
@osterman osterman deleted the docs/leapp-atmosauth-migration branch October 20, 2025 14:13
@github-actions
Copy link

These changes were released in v1.196.0-rc.0.

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

Labels

documentation Improvements or additions to documentation no-release Do not create a new release (wait for additional code changes) size/xl Extra large size PR

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants