demml / demml/opsml

Ability to migrate staging artifacts to prod

Open
#55 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
Rust
Stars
40
Forks
3
PR merge metrics
No merged PRs in 30d

Description

### Description

Because opsml runs on the premise that each server should be assigned to a specific environment (i.e. you need to run a staging server and a prod server), a user needs to run the workflow once in staging and in prod in order to populate the registry.

This is the desired behavior; **however**, there are some cases where a DS only wants to train a model in a jupyter notebook for instance (which may only exist in staging) and wishes to migrate the model from staging to prod.

Proposed change:

Allow a user in prod to migrate a card to prod.

Things to consider/implement:

- A user must create a username and pass and have permissions to edit the prod repo
- The staging URI will need to be set as an env var in prod
- Migration should initially only be available via UI and command lint
- Migration routes should only exist in prod server
- Because version matching should be 1:1, we must check if that version already exists in prod (do we fail or force a new version?)
- All artifacts associated with card will need to be copied to new destination.
- Service accounts will need access to both staging and prod storage locations.
- Registry records will need to be pulled from staging and inserted into prod.

Contributor guide

Open the contributing guide

Research direction

No files or tests are named. Start by tracing the prod server's UI and command-line entry points, then map how registry records and associated artifacts move between staging and prod; done requires authenticated, authorized migration with storage access and a decided policy for existing versions.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
backend, cli
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.