posit-dev / posit-dev/rsconnect-python
Implement flags for targeting an execution environment during deployment
Nessuno ha ancora preso questa issue.
- Lingua principale
- Python
- Stelle
- 37
- Fork
- 28
- Merge medio
- 1g 3h
- PR unite (30g)
- 7
Descrizione
Connect 2025.04 allows setting environment.identifier in the bundle's manifest.json. This new field allows the content to target a specific execution environment when running on Connect. The existing environment.image field remains unchanged however the semantics are slightly different. An image selection is now treated the same as any other piece of matching criteria. Connect will choose any execution environment that uses the specified container image.
We should add an --environment-id flag to both deploy <app> and write-manifest <app> - the value is the guid of the target execution environment in Connect and it should be written to environment.identifier in the manifest.json.
We should also add arguments the following arguments to deploy <app>: --default-image and --default-environment-id. These arguments accepts an image name and an execution environment guid respectively, however instead of writing these to the manfiest.json, we should update the App record in Connect to set the app.default_image_name and app.default_environment_guid fields. This new workflow allows users to call deploy <app> --default-image='my/custom/image:latest' or deploy <app> --default-environment-id='<env-guid>' only once and the image/environment will continue to be used for subsequent deployments (as long as it isn't overwritten by another deployment). This means that the arguments doesn't need to be provided every time deploy <app> is called, which is how the current --image flag behaves. This is the same workflow used by the Connect dashboard.
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia dai punti di ingresso dei comandi deploy e write-manifest , quindi esamina come vengono gestiti il flag esistente --image e i campi dell’ambiente. Traccia il percorso di aggiornamento di Connect App per default_image_name e default_environment_guid. Il lavoro è completato quando i nuovi flag scrivono il valore richiesto nel manifest o rendono persistenti i valori predefiniti dell’App come specificato, con una copertura per entrambi i comandi e i workflow.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- api, cli
- Tipo di issue
- Funzionalità
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 38/100