Skip to content

Conversation

@tashian
Copy link
Contributor

@tashian tashian commented Jan 29, 2026

Summary

  • Block creation of new Linked CA deployments
  • Point users to Step CA Pro for Linked CA features
  • Document migration workflow using step-ca export --token and step-ca import

Changes

  • command/ca/init.go:
    • Remove "linked" from --deployment-type flag options
    • Return clear error when --deployment-type=linked is used
    • Remove "Linked" from interactive deployment type selection
    • Update help text to point users to Step CA Pro
  • CHANGELOG.md: Added deprecation notice with complete migration instructions

Migration Workflow

For users migrating from Linked CA to standalone mode:

# 1. Export from linked CA (while CA is running)
step-ca export $(step path)/config/ca.json --token $STEP_CA_TOKEN > export.json

# 2. Stop the CA

# 3. Update ca.json:
#    - Remove the authority.linkedca section
#    - Ensure authority.enableAdmin: true
#    - Ensure db is configured

# 4. Import provisioners and admins
step-ca import $(step path)/config/ca.json export.json

# 5. Start the CA without --token
step-ca $(step path)/config/ca.json

Behavior Summary

Scenario Before After
step ca init --deployment-type=linked Creates linked CA Returns error with migration guidance
step-ca --token=xxx (existing) Works silently Works but shows deprecation warning
Interactive step ca init Shows Standalone/Linked/Hosted Shows Standalone/Hosted only
RA mode with linked Allowed Now only standalone is valid for RA

Context

This is phase 1 of removing Linked CA from open-source step-ca. The linked deployment type is moving to Step CA Pro.

  • Release N (this PR): Block new linked CA creation, provide migration tools
  • Release N+2 or N+3: Remove linked CA code entirely from certificates repo

Related certificates PR: smallstep/certificates#2554

Test plan

  • make build passes
  • Tests pass
  • Manual test: step ca init --deployment-type=linked returns clear error
  • Manual test: Interactive step ca init shows only Standalone/Hosted options

🤖 Generated with Claude Code

Remove support for creating new Linked CA deployments:
- Remove "linked" from --deployment-type flag options
- Return clear error when --deployment-type=linked is used
- Remove "Linked" from interactive deployment type selection
- Update help text to point users to Step CA Pro

Existing Linked CAs can still run (via certificates repo) but
new ones cannot be created in open-source step-ca.

This is phase 1 of removing Linked CA from open-source step-ca.
A future release will remove the functionality entirely.

Co-Authored-By: Claude Opus 4.5 <[email protected]>
@github-actions github-actions bot added the needs triage Waiting for discussion / prioritization by team label Jan 29, 2026
tashian added a commit to smallstep/docs that referenced this pull request Jan 29, 2026
Update documentation to clarify that linked CA functionality is now
available exclusively through Step CA Pro, not open-source step-ca.

Related PRs:
- smallstep/certificates#2554
- smallstep/cli#1559

PRO-331

Co-Authored-By: Claude Opus 4.5 <[email protected]>
tashian and others added 2 commits January 29, 2026 19:56
Add complete migration workflow using the new step-ca import command
to the Linked CA deprecation section.

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Cover the linked deployment type deprecation error and other
deployment type validation paths.

Co-Authored-By: Claude Opus 4.5 <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs triage Waiting for discussion / prioritization by team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants