Skip to content

Int value of "secret_ttl_seconds" in values.yaml causing init container to fail #51

@glendsoza

Description

@glendsoza

We attempted to set up the JFrog Credential Provider using Helm on an EKS environment. After installation, the DaemonSet pods failed to start, entering a CrashLoopBackOff during the initialization phase.

Observed Behavior
The pods remain in an error state:

NAME                                                        READY   STATUS                  RESTARTS         AGE
secret-provider-jfrog-credential-provider-daemonset-4dtgt   0/1     Init:CrashLoopBackOff   20 (4m36s ago)   82m
secret-provider-jfrog-credential-provider-daemonset-6vj8p   0/1     Init:CrashLoopBackOff   20 (4m39s ago)   82m
secret-provider-jfrog-credential-provider-daemonset-p8tkv   0/1     Init:CrashLoopBackOff   20 (4m52s ago)   82m

Logs
Init Container Logs:
The binary downloads and copies correctly, but the configuration update fails:

Downloading the jfrog-credential-provider binary (https://releases.jfrog.io/artifactory/run/jfrog-credentials-provider/1.0.0/jfrog-credential-provider-linux-amd64)
Successfully downloaded the jfrog-credential-provider binary from Artifactory
Making the jfrog-credential-provider binary executable
Copying the /etc/jfrog-provider.json configuration file to /host/etc/eks/image-credential-provider/jfrog-provider.json
Updating the kubelet configuration failed

Provider Debug Logs:
The failure is caused by a JSON unmarshalling error:

[JFROG CREDENTIALS PROVIDER] 2026/03/11 08:47:28 logger.go:40: [INFO] Google metadata server response status code: 404
[JFROG CREDENTIALS PROVIDER] 2026/03/11 08:47:28 logger.go:40: [INFO] Config backed up to /etc/eks/image-credential-provider/config.json.backup
[JFROG CREDENTIALS PROVIDER] 2026/03/11 08:47:28 logger.go:52: [EXIT] failed to parse JSON file /etc/eks/image-credential-provider/jfrog-provider.json: json: cannot unmarshal number into Go struct field EnvVar.env.value of type string

We manually updated our Helm values to wrap secret_ttl_seconds in quotes (changing the type from integer to string), which allowed the pods to initialize successfully.

Reporting this so the Helm chart or the provider's Go struct can be updated to handle numerical inputs more gracefully.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions