Skip to content

docs(abctl): expand docs with troubleshooting, flag reference, and scope limitations#74094

Draft
Ian Alton (ian-at-airbyte) wants to merge 2 commits intomasterfrom
devin/1772235015-abctl-docs-improvements
Draft

docs(abctl): expand docs with troubleshooting, flag reference, and scope limitations#74094
Ian Alton (ian-at-airbyte) wants to merge 2 commits intomasterfrom
devin/1772235015-abctl-docs-improvements

Conversation

@ian-at-airbyte
Copy link
Contributor

@ian-at-airbyte Ian Alton (ian-at-airbyte) commented Feb 27, 2026

What

Addresses gaps in abctl documentation identified through Kapa.ai chatbot conversations where users could not find answers to common questions:

  1. Installer script failures (e.g. Is a directory error)
  2. Customizing the abctl binary install location
  3. How to use --chart and --chart-version flags
  4. Whether abctl works with an existing Kubernetes cluster

How

docs/platform/deploying-airbyte/abctl/index.md:

  • Rewrote the "When to use abctl" paragraph to include scope limitation inline: abctl only manages its own kind cluster and can't target an existing Kubernetes cluster, with a link to the Helm chart deployment guide
  • Added "Customize the install location" subsection documenting DIR_INSTALL, RELEASE_TAG, and DEBUG env vars from the installer script
  • Added "Pin a specific Helm chart version" and "Install from a local Helm chart" usage examples under the install section
  • Expanded --chart and --chart-version descriptions in the reference table with fuller explanations and a link to ArtifactHub for finding chart versions

docs/platform/deploying-airbyte/troubleshoot-deploy.md:

  • Added new "Installer Script Errors" section before the existing "Common Errors" (which covers abctl local install runtime errors, not the installer script itself)
  • Documented the "Is a directory" error with debug workaround and alternative install methods
  • Documented "Permission denied" error with DIR_INSTALL workaround
  • Added installer env var reference table
  • Added FAQ entry: "Can I use abctl with an existing Kubernetes cluster?"

Review guide

  1. docs/platform/deploying-airbyte/abctl/index.md — scope limitation (inline in paragraph), install customization section, chart version examples, expanded flag descriptions
  2. docs/platform/deploying-airbyte/troubleshoot-deploy.md — new installer errors section and existing-cluster FAQ

Human review checklist:

  • Verify the claim that --chart-version is ignored when --chart is set (inferred from abctl README and typical Helm behavior — worth confirming against the Go source)
  • Confirm the installer env vars (DIR_INSTALL, RELEASE_TAG, DEBUG) still match the current abctl_install.sh

User Impact

Users and the Kapa.ai chatbot will have documentation to answer four previously unanswerable question categories. No runtime changes.

Can this PR be safely reverted and rolled back?

  • YES 💚

Link to Devin run: https://app.devin.ai/sessions/5c0047049398462797605f1fd644996d
Requested by: Ian Alton (@ian-at-airbyte)

…ope limitations

- Add installer script troubleshooting section (Is a directory error, permission denied)
- Document installer env vars (DIR_INSTALL, RELEASE_TAG, DEBUG)
- Add customize install location subsection with DIR_INSTALL example
- Expand --chart and --chart-version flag descriptions with usage examples
- Add explicit scope limitation: abctl only manages its own kind cluster
- Add FAQ entry about existing Kubernetes cluster support

Co-Authored-By: ian.alton@airbyte.io <ian.alton@airbyte.io>
@devin-ai-integration
Copy link
Contributor

🤖 Devin AI Engineer

I'll be helping with this pull request! Here's what you should know:

✅ I will automatically:

  • Address comments on this PR. Add '(aside)' to your comment to have me ignore it.
  • Look at CI failures and help fix them

Note: I can only respond to comments from users who have write access to this repository.

⚙️ Control Options:

  • Disable automatic comment and CI monitoring

@github-actions
Copy link
Contributor

👋 Greetings, Airbyte Team Member!

Here are some helpful tips and reminders for your convenience.

💡 Show Tips and Tricks

PR Slash Commands

Airbyte Maintainers (that's you!) can execute the following slash commands on your PR:

  • 🛠️ Quick Fixes
    • /format-fix - Fixes most formatting issues.
    • /bump-version - Bumps connector versions, scraping changelog description from the PR title.
  • ❇️ AI Testing and Review (internal link: AI-SDLC Docs):
    • /ai-prove-fix - Runs prerelease readiness checks, including testing against customer connections.
    • /ai-canary-prerelease - Rolls out prerelease to 5-10 connections for canary testing.
    • /ai-review - AI-powered PR review for connector safety and quality gates.
  • 🚀 Connector Releases:
    • /publish-connectors-prerelease - Publishes pre-release connector builds (tagged as {version}-preview.{git-sha}) for all modified connectors in the PR.
    • /bump-progressive-rollout-version - Bumps connector version with an RC suffix (2.16.10-rc.1) for progressive rollouts (enableProgressiveRollout: true).
      • Example: /bump-progressive-rollout-version changelog="Add new feature for progressive rollout"
  • ☕️ JVM connectors:
    • /update-connector-cdk-version connector=<CONNECTOR_NAME> - Updates the specified connector to the latest CDK version.
      Example: /update-connector-cdk-version connector=destination-bigquery
    • /bump-bulk-cdk-version bump=patch changelog='foo' - Bump the Bulk CDK's version. bump can be major/minor/patch.
  • 🐍 Python connectors:
    • /poe connector source-example lock - Run the Poe lock task on the source-example connector, committing the results back to the branch.
    • /poe source example lock - Alias for /poe connector source-example lock.
    • /poe source example use-cdk-branch my/branch - Pin the source-example CDK reference to the branch name specified.
    • /poe source example use-cdk-latest - Update the source-example CDK dependency to the latest available version.
  • ⚙️ Admin commands:
    • /force-merge reason="<REASON>" - Force merges the PR using admin privileges, bypassing CI checks. Requires a reason.
      Example: /force-merge reason="CI is flaky, tests pass locally"
📚 Show Repo Guidance

Helpful Resources

📝 Edit this welcome message.

@github-actions
Copy link
Contributor

github-actions bot commented Feb 27, 2026

Deploy preview for airbyte-docs ready!

✅ Preview
https://airbyte-docs-ozbmtgbu1-airbyte-growth.vercel.app

Built with commit d23cc50.
This pull request is being automatically deployed with vercel-action

Comment on lines 20 to 25
You use abctl to run Airbyte on a machine that isn't running a Kubernetes cluster, but is running Docker. Normally, you don't use abctl to manage enterprise deployments, because they use dedicated Kubernetes infrastructure. However, it's possible to use abctl this way if you want to.

:::warning
abctl only manages its own kind cluster. It cannot install Airbyte on an existing Kubernetes cluster. If you already have a Kubernetes cluster, use the [Helm chart deployment guide](../chart-v2-community.mdx) instead.
:::

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Let's combine these ideas into one. No need for a warning.

"You use abctl to run Airbyte on a machine that isn't running a Kubernetes cluster, but is running Docker. abctl only manages its own kind cluster. It can't install Airbyte on an existing Kubernetes cluster. If you already have a Kubernetes cluster, use the Helm chart deployment guide instead."

Copy link
Contributor

Choose a reason for hiding this comment

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

Done — merged the scope limitation into the paragraph and removed the :::warning box, as suggested.


Devin session

| `DEBUG` | unset | Set to any value to enable verbose installer output. |

:::note
`DIR_INSTALL` controls only where the **abctl binary** lives. Airbyte state data (kubeconfig, cluster data) is stored separately at `~/.airbyte/abctl/` and is not affected by this setting. There is currently no flag to relocate the data directory.
Copy link
Contributor Author

Choose a reason for hiding this comment

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

Suggested change
`DIR_INSTALL` controls only where the **abctl binary** lives. Airbyte state data (kubeconfig, cluster data) is stored separately at `~/.airbyte/abctl/` and is not affected by this setting. There is currently no flag to relocate the data directory.
`DIR_INSTALL` controls only where the **abctl binary** lives. Airbyte state data (kubeconfig, cluster data) is stored separately at `~/.airbyte/abctl/. It's not affected by this setting and you can't relocate it.

Copy link
Contributor

Choose a reason for hiding this comment

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

Updated to use the suggested wording.


Devin session

abctl local install --chart-version 0.422.2 --values values.yaml --secret secret.yaml --port 8000
```
The `--chart-version` value is the Helm chart version, not the Airbyte platform version. To find available versions, see the [Airbyte Helm chart releases](https://github.com/airbytehq/airbyte-platform/releases).
Copy link
Contributor Author

Choose a reason for hiding this comment

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

I don't think this URL shows helm chart versions. Do we not have a centralized list of them?

Copy link
Contributor

Choose a reason for hiding this comment

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

Good catch — that URL shows platform releases, not Helm chart versions. Updated to link to the ArtifactHub page which has the full list of chart versions: https://artifacthub.io/packages/helm/airbyte/airbyte


Devin session

…art versions URL, update wording

Co-Authored-By: ian.alton@airbyte.io <ian.alton@airbyte.io>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant