Skip to content

[HCA DCP] Clean up unused dev and cc-ma-dev site-configs, relocate makeConfig to ma-dev #4820

@frano-m

Description

@frano-m

Background

site-config/hca-dcp/dev and site-config/hca-dcp/cc-ma-dev are no longer in use as deployed environments. Their content is still imported by other configs and runtime code, which keeps them around but makes the relationship confusing:

  • hca-dcp/dev/config.ts is the home of makeConfig, which is imported by hca-dcp/ma-dev, hca-dcp/ma-prod, hca-dcp/prod, and hca-dcp/cc-ma-dev for the base config factory.
  • hca-dcp/cc-ma-dev/config.ts is the home of makeManagedAccessConfig, which is imported by hca-dcp/ma-dev and hca-dcp/ma-prod to layer in authentication, the managed-access category-group config, the auth-enabled header, and the managed-access entities/export overrides.
  • hca-dcp/dev/ content (export, detail, index, etc.) is also imported across lungmap/dev/* (5 files) and a couple of app/viewModelBuilders/azul/hca-dcp/common/* files plus app/config/config.ts.

Currently prod builds without the managed-access overlay, so it doesn't pick up the auth wiring that ma-dev/ma-prod get from makeManagedAccessConfig.

Goal

Consolidate the actively-deployed HCA DCP env hierarchy onto ma-dev and ma-prod (the actual UCSC-hosted deployments), so deprecated dev and cc-ma-dev are no longer the home of shared code.

Scope

  • Move makeConfig from hca-dcp/dev/config.ts into hca-dcp/ma-dev/config.ts so prod (and ma-prod) import it from the actually-deployed dev env.
  • Fold makeManagedAccessConfig (currently in cc-ma-dev/config.ts) into hca-dcp/ma-dev/config.ts. Verify the new ma-dev makeConfig flow includes all the fields that the managed-access function currently adds — specifically the authentication wiring (auth providers + services, authenticationEnabled on header, managed-access category-group config, managed-access entities config, managed-access export overrides). It's load-bearing for ma-dev / ma-prod; do not drop fields silently.
  • Update all importers of hca-dcp/dev/* and hca-dcp/cc-ma-dev/* to point at the new locations under ma-dev. Known consumers:
    • site-config/hca-dcp/ma-dev/config.ts
    • site-config/hca-dcp/ma-prod/config.ts
    • site-config/hca-dcp/prod/config.ts
    • site-config/lungmap/dev/* (5 files) — re-pointed at the new home
    • app/viewModelBuilders/azul/hca-dcp/common/viewModelBuilders.ts
    • app/viewModelBuilders/azul/hca-dcp/common/projectMapper/projectEdits/projectEdits.ts
    • app/config/config.ts
  • Decide what to do with hca-dcp/dev/ and hca-dcp/cc-ma-dev/ directories once the shared code has moved — delete entirely, or leave shells in place if some content (e.g. hca-dcp/dev/scripts/get-cellxgene-projects.ts) still needs a home.

Out of scope

  • Behaviour changes to the deployed envs (ma-dev, ma-prod, prod) — this is a pure code-organisation refactor.
  • Lungmap restructuring beyond updating import paths to follow the moved code.
  • Whether prod should pick up the managed-access overlay (separate question; today it doesn't, and that's preserved).

Verification

  • npm run build-dev:hca-dcp, build-cc-ma-dev:hca-dcp, build-ma-dev:hca-dcp, build-ma-prod:hca-dcp, build-prod:hca-dcp, build-dev:lungmap, build-prod:lungmap all succeed.
  • npm run lint and tsc --noEmit clean.
  • Login still works on ma-dev (the authorization code flow path) and ma-prod (implicit flow) — auth fields didn't get dropped in the move.
  • Visual smoke against the deployed ma-dev / ma-prod confirms no regressions in managed-access entity views.

Metadata

Metadata

Assignees

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