[Proposal] Add ability to override application commands in Dapr Compose configuration files
I maintainer di solito rispondono entro 6 giorni
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
Direzione di ricerca
Inizia esaminando il lavoro sulla funzionalità Dapr Compose a cui si fa riferimento nell’issue 1123 e i tre approcci proposti in questa issue. Conferma quale approccio scelgono i maintainer e identifica i punti di ingresso rilevanti per la configurazione e i comandi prima di definire l’ambito dell’implementazione. Done deve includere un modo documentato per controllare i comandi di avvio delle applicazioni e un comportamento chiaro per le applicazioni normali, modificate, assenti e saltate.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Describe the proposal
This proposal is related to the Dapr Compose feature work currently underway.
Tooling that integrates the Dapr Compose feature will likely use Dapr to manage startup of most services and applications, by directly invoking the Dapr Compose command. In certain situations, however, tooling may need to alter or eliminate the commands for certain applications. For example, when debugging a .NET application, the application must be started via the .NET debugger, outside of a traditional dapr run. Such tooling needs a way to inform the Dapr Compose feature of which applications to start normally, which applications have an altered command, which applications have no command (but still need the sidecar), and which applications should not be started at all.
There are several ways this could be done:
- Tooling simply points Dapr Compose to a different (likely generated file): this is the simplest approach but suffers from a significant drawback in that troubleshooting startup issues becomes difficult, as such generated files tend to be ephemeral, randomly names, located apart from the applications themselves, and mixed with other such generated files.
- Dapr Compose allows configuration "layering" and tooling points to the original configuration file and an "override" file: this approach is similar to Docker Compose, where configuration files are successively layered to create a final configuration model. Advantages are that it's a familiar approach and the overrides are easier to identify by users (because each file only contains the changes from the original). Disadvantages are similar to the item above; locating the override files can be more difficult.
- Dapr Compose allows the command properties of each application section to be overridden via command line arguments: this model is likely the simplest for tooling to implement and the user to understand as the overrides become part of the logged command line with no risk of losing an ephemeral override file. Downsides are the override applies only to the command (and not any other portion of the configuration); each additional property desired to change in the future must be exposed as a command line argument, which adds complexity (especially given the 1:many relationship of applications to configuration files).
There may also be other options that I haven't considered.
Of these, I believe (2) or (3) to be the better options. Option (2) feels like the best compromise between flexibility for tooling, familiarity and observability by users, and ease implementation within the Dapr Compose feature.
Release Note
RELEASE NOTE:
- Lingua principale
- Go
- Stelle
- 353
- Fork
- 220
- Merge medio
- 6g 16h
- PR unite (30g)
- 1
Preparare l'ambiente
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.
Altre issue di dapr/cli
-
kind/bug
Difficoltà 3/5 1-2 giorni Idoneità per principianti 68/100
dapr/cli#1700 · 1 commento · 1 reazione ·
I maintainer di solito rispondono entro 6 giorni
-
good first issue kind/proposal
Difficoltà 5/5 Più di una settimana Idoneità per principianti 42/100
I maintainer di solito rispondono entro 6 giorni
-
good first issue kind/proposal
Difficoltà 3/5 1-2 giorni Idoneità per principianti 35/100
I maintainer di solito rispondono entro 6 giorni
-
Docs (Automation) - Dapr CLIForse di nuovo libera @mikeee l’ha presa 560 giorni fa e non c’è nessuna pull request aperta. ApertaP1 pinned
dapr/cli#1507 · 3 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 6 giorni
-
Update the CLI install script release sourceForse di nuovo libera @mikeee l’ha presa 734 giorni fa e non c’è nessuna pull request aperta. Apertakind/bug pinned
dapr/cli#1454 · 8 commenti · 1 assegnatario ·
I maintainer di solito rispondono entro 6 giorni
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
gruntwork-io/boilerplate#329 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
prime-radiant-inc/evener#3291 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
Netcracker/qubership-apihub-backend#582 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 86/100
I maintainer di solito rispondono entro 1 giorno