Skip to content

Add template parameter for Kubernetes secret holding API token #276

@gctucker

Description

@gctucker

At the moment, the Kubernetes secret containing the API key is hard-coded in the job template:

        env:
        - name: API_TOKEN
          valueFrom:
            secretKeyRef:
              name: {{ "kci-api-jwt-staging" }}
              key: token

This probably should become a parameter in the API configuration in YAML, or rely on a convention based on the API configuration name. The current standard API configurations are:

api_configs:

  docker-host:
    url: http://172.17.0.1:8001

  staging.kernelci.org:
    url: https://staging.kernelci.org:9000

So we could have something like kci-api-jtw-{{ config }} e.g. kci-api-jwt-staging.kernelci.org. Maybe this could be a first step, and if we're hitting limitations such as a requirement to have multiple secret token names then this could be changed to a YAML configuration parameter instead.

Note: A similar but not identical issue needs to be resolved for the storage credentials, so maybe a common way of handling "secrets" would be good to make it easier for users to configure a whole system.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    Todo

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions