Skip to content
This repository has been archived by the owner on Oct 11, 2023. It is now read-only.

Add --no-build option to up command #309

Open
dahovey opened this issue Apr 6, 2020 · 0 comments
Open

Add --no-build option to up command #309

dahovey opened this issue Apr 6, 2020 · 0 comments

Comments

@dahovey
Copy link

dahovey commented Apr 6, 2020

Is your feature request related to a problem? Please describe.

Yes. Two values are generated by the Dev Spaces tooling:

  • Ingress host name (i.e. $(spacePrefix)$(rootSpacePrefix)livestock-api$(hostSuffix) from azds.yaml)
  • Helm Release Name (i.e. azds-bb1e4a-master-app1-component1 where bb1e4a is a generated value by Dev Spaces)

I have run into all manner of conflicts with development using Dev Spaces, then having pipelines that update the same Dev Space component:

  • k8s deployment selectors are immutable, since the Helm release name is used as label selector.
  • Helm errors because resources are already existing (i.e. secrets), when not using the exact same release name that Dev Spaces tooling used.
  • Errors during cicd when using KubernetesManifest "bake & deploy" steps after debugging service using Dev Spaces, since resources were not created using kubectl apply ... but instead were created by Dev Spaces using helm.

Describe the solution you'd like

Add a flag to up command that uses azds.yaml configuration file to upgrade/install Helm release, but does not build docker image. Something like:

azds up --no-build

The output would only be:

Using dev space 'master' with target 'aks-fun-with-dev-spaces'
Installing Helm chart...2s

As a bonus, when using proposed --no-build option the trailing arguments (after --) would be passed to helm, not as startup commands. Without this an optional values file could be used in azds.yaml:

...
  values:
  - values.dev.yaml?
  - secrets.dev.yaml?
  - values.cicd.yaml?

The values.cicd.yaml would be created during pipeline execution.

Describe alternatives you've considered

  • Manually form ingress host during cicd pipeline.
  • Manually form helm release name to match Dev Space tooling (help needed here).
  • Manually run helm upgrade --install ... with generated values.

These alternatives are possible but they could easily become brittle:

  • Helm/tiller server version that is used by AZDS could change.
  • The helm release name could change, that Dev Spaces uses.

Additional context

See: #296

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant