Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Specify individual manifest paths for workflow #325

Open
peterbom opened this issue Jun 25, 2024 · 0 comments
Open

Specify individual manifest paths for workflow #325

peterbom opened this issue Jun 25, 2024 · 0 comments

Comments

@peterbom
Copy link

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

When using Automated Deployments in the Azure Portal, I can select manifest files (e.g. deployment.yaml, service.yaml) individually (and they can be located anywhere in my repository). Draft is more limited, because it expects:

  • A manifests directory under the destination, containing deployment.yaml and service.yaml.
  • The destination to be the repository root (the folder that contains .github).

This means it doesn't easily support repositories containing more than one service, or project structures which don't conform to the folder structure generated by draft create.

We can almost manage individual file selection like this:

draft generate-workflow \
  --branch main \
  --build-context-path ./src/order-service \
  --cluster-name testcluster \
  --container-name order-service \
  --deploy-type manifests \
  --destination ./src/order-service \
  --registry-name testacr \
  --resource-group test-rg \
  --variable DEPLOYMENTMANIFESTPATH=./src/order-service/manifests/deployment.yaml\n./src/order-service/manifests/service.yaml \
  --variable BUILDCONTEXTPATH=./src/order-service

(I believe the Azure/k8s-deploy GitHub action supports newline-separated manifest paths, because that's what Automated Deployments generates.)

But this approach:

  • Fails if there is no manifests directory under the destination
  • Nests the workflow file under the ./src/order-service

Describe the solution you'd like

It would be great if Draft could:

  • support specifying multiple individual manifest files
  • if they are specified, remove the validation that checks for specific files within a manifests directory under the destination

Additional context

This would be really useful for the AKS VS Code extension. Along with #324, I think this would bring enable the extension to provide an experience equivalent to Automated Deployments and still use Draft under the hood (currently it needs to use its own templates to support that experience).

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

No branches or pull requests

1 participant