Skip to content

Replace hardcoded image: ...:develop references with version variables #332

@djuarezgf

Description

@djuarezgf

Problem

Currently, some services define their Docker image using a hardcoded :develop tag, like:

image: samply/some-service:develop

This approach makes it harder to manage versions consistently across different environments.

Proposal

We propose replacing hardcoded image tags with environment-specific variables. These variables are already defined in files under the versions/ directory. For example:

versions/prod

FOCUS_TAG=main
BEAM_TAG=main
BLAZE_TAG=0.32
POSTGRES_TAG=15.13-alpine

Each environment (acceptance, prod, test) has its own file that defines the necessary variables.

Example change

Instead of:

image: docker.verbis.dkfz.de/cache/samply/teiler-dashboard:develop

Use:

image: docker.verbis.dkfz.de/cache/samply/teiler-dashboard:${TEILER_DASHBOARD_TAG}

Tasks

  • Identify all image: ...:develop references across the project.
  • Replace them with the appropriate variable substitution (e.g., ${TEILER_DASHBOARD_TAG}).
  • Ensure that the correct environment-specific file from the versions/ folder is loaded during deployment or CI.
  • Test the setup to ensure the substitutions work correctly in all environments.

Benefits

  • Cleaner separation of code and environment-specific configuration
  • Centralized version management
  • Easier updates and rollbacks per environment
  • Improved reproducibility and deployment stability

Feel free to share feedback or suggestions about this approach.

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