Skip to content

Conversation

@vazudew
Copy link
Contributor

@vazudew vazudew commented Oct 24, 2025

Proposed changes

Installing ESO Operator via Helm on k8s, needed exact Chart Version and to install all CRDs used. So fixed.
Fix: #16379

Unreleased product version (optional)

Related issues (optional)

@claude
Copy link
Contributor

claude bot commented Oct 24, 2025

Review of PR #16380

Thanks for contributing to fix the External Secrets Operator installation! I've reviewed the changes and have some observations:

Technical accuracy ✓

The Helm command syntax is correct and the parameters are valid:

  • --set installCRDs=true ensures the Custom Resource Definitions are installed
  • --version 0.10.4 pins to a specific chart version

Concerns

1. Version pinning to 0.10.4 (line 48)

Version 0.10.4 appears to be quite old. External Secrets Operator has had many releases since then. Pinning to an older version in a tutorial could:

  • Expose users to known security vulnerabilities
  • Prevent users from accessing newer features and bug fixes
  • Create maintenance burden when the tutorial eventually needs updating

Suggestion:
Consider either:

  • Using the latest stable version (check the External Secrets Operator releases)
  • Not pinning to a specific version (let Helm use the latest from the repo)
  • If 0.10.4 is required for compatibility with a specific Pulumi ESC version, add a comment explaining why
helm upgrade --install external-secrets external-secrets/external-secrets \
    --namespace external-secrets \
    --set installCRDs=true \
    --create-namespace \
    --wait

2. Missing context for readers

The tutorial doesn't explain why --set installCRDs=true is necessary. Adding a brief comment or note would help users understand the configuration.

Testing recommendation

Since this changes installation instructions in a tutorial, please verify:

  • The specified version (0.10.4) is still available in the Helm repository
  • The installation completes successfully with these parameters
  • The rest of the tutorial steps work correctly with this version

Mention me (@claude) if you'd like additional reviews or help addressing these concerns!

Copy link
Contributor

@stooj stooj left a comment

Choose a reason for hiding this comment

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

Where does the version number (0.10.0) come from?

Can we include a paragraph about finding the correct version number to use, then update the code sample with a placeholder version number instead?

--version <VERSION_NUMBER>

That means when the version number changes in 6 months we're not still instructing users to install an old version.

@pulumi-bot
Copy link
Collaborator

@vazudew
Copy link
Contributor Author

vazudew commented Oct 27, 2025

I executed the commands, k8s objects with a colleague. Updated the sample code for namespaces

@pulumi-bot
Copy link
Collaborator

@vazudew vazudew requested a review from stooj October 27, 2025 13:49
Copy link
Contributor

@stooj stooj left a comment

Choose a reason for hiding this comment

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

A couple of small comments before this can be merged.

#### Create ClusterSecretStore

Now you can create a [ClusterSecretStore](https://external-secrets.io/main/api/clustersecretstore/) resource that will tell External Secrets Operator to use Pulumi ESC as a secret provider.
You can create a [ClusterSecretStore](https://external-secrets.io/main/api/clustersecretstore/) resource that will tell External Secrets Operator to use Pulumi ESC as a secret provider.
Copy link
Contributor

Choose a reason for hiding this comment

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

Rearrange this so the reader reads their instructions first in case they aren't paying close attention.

Something like:

You can create a SecretStore resource that will tell the External Secrets Operator to use Pulumi ESC as a secret provider for this namespace. If you want to increase the scope of the whole cluster you can use a ClusterSecretStore 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.

changed the section, accordingly :)

- secretKey: esc-secret
remoteRef:
key: hello
- secretKey: esc-secret
Copy link
Contributor

Choose a reason for hiding this comment

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

Can you please lint this yaml? There has been extra indentation added, so check it's still valid.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

woow, good catch. The error was due to copy paste issue. Updated

latest master branch is merged to local branch.
It will be easy for merging onto origin master
@pulumi-bot
Copy link
Collaborator

@pulumi-bot
Copy link
Collaborator

Copy link
Contributor

@stooj stooj left a comment

Choose a reason for hiding this comment

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

Just a couple of grammar fixes

You can create a [SecretStore](https://external-secrets.io/main/api/secretstore/) resource to notify External Secrets Operator to use Pulumi ESC as a secret provider for a specific namespace.

If you want to limit the access by namespace, you can create a [SecretStore](https://external-secrets.io/main/api/secretstore/) resource instead, which is scoped to a single namespace.
However if you want to expand the scope to entire cluster, you can use a [ClusterSecretStore](https://external-secrets.io/main/api/clustersecretstore/) resource, instead.
Copy link
Contributor

Choose a reason for hiding this comment

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

Grammar fixes:

However, if you want to expand the scope to the entire cluster you can use a ClusterSecretStore resource instead.

#### Create ClusterSecretStore

Now you can create a [ClusterSecretStore](https://external-secrets.io/main/api/clustersecretstore/) resource that will tell External Secrets Operator to use Pulumi ESC as a secret provider.
You can create a [SecretStore](https://external-secrets.io/main/api/secretstore/) resource to notify External Secrets Operator to use Pulumi ESC as a secret provider for a specific namespace.
Copy link
Contributor

@stooj stooj Oct 28, 2025

Choose a reason for hiding this comment

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

Grammar fixes:

You can create a SecretStore resource to notify the External Secrets Operator to use Pulumi ESC as a secret provider for a specific namespace.

Please replace `${PULUMI_ORG}`, `${ESC_PROJECT}`, `${ESC_ENV}` with your Pulumi organization, project, and environment names.
Please replace `${PULUMI_ORG_NAME}`, `${ESC_PROJECT_NAME}`, `${ESC_ENV_NAME}` with your Pulumi organization, project, and environment names.

For demo purposes, we assume that we already have an [ESC environment](/docs/esc/get-started/create-environment/) `my-org/my-project/my-env` with a secret `my-secret` that we want to manage using External Secrets Operator.
Copy link
Contributor

Choose a reason for hiding this comment

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

Grammar fix:

using the External Secrets Operator.

@pulumi-bot
Copy link
Collaborator

Copy link
Contributor

@stooj stooj left a comment

Choose a reason for hiding this comment

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

Almost there!

You can create a [SecretStore](https://external-secrets.io/main/api/secretstore/) resource to notify the External Secrets Operator to use Pulumi ESC as a secret provider for a specific namespace.

However if you want to expand the scope to entire cluster, you can use a [ClusterSecretStore](https://external-secrets.io/main/api/clustersecretstore/) resource, instead.
However, if you want to expand the scope to entire cluster, you can use a [ClusterSecretStore](https://external-secrets.io/main/api/clustersecretstore/) resource instead.
Copy link
Contributor

Choose a reason for hiding this comment

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

One last comma to remove 😁

scope to entire cluster, you can use a

scope to the entire cluster you can use a

Copy link
Contributor

Choose a reason for hiding this comment

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

And a the to add.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

me thinks, "scope to entire cluster, " is correct, because you need a short pause there ? But i can remove it, once you confirm the removal.

The to be added for "ClusterSecretStore"? we have been using article "a" for ClusterSecretStore. ? we have to replace all "a" s to "the" ? please confirm

Copy link
Contributor

@stooj stooj Oct 28, 2025

Choose a reason for hiding this comment

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

If you've been using a then use an entire cluster, sounds good.

Copy link
Contributor

Choose a reason for hiding this comment

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

And you've convinced me about the comma 😁 Keep the comma.

@pulumi-bot
Copy link
Collaborator

Copy link
Contributor

@stooj stooj left a comment

Choose a reason for hiding this comment

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

LGTM

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.

Update Integration with Extermal Secretes Operator (ESO) Tutorials for ESC

4 participants