Specify individual manifest paths for workflow
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 35/100
Research direction
Start at the generate-workflow command path and trace how --destination, --variable, and manifest validation are handled. Verify the behavior with multiple manifest paths outside a destination/manifests directory, including the workflow location. Done means individual manifests are accepted and the expected workflow is generated without requiring the default directory structure.
Written by the indexing model from the issue text.
Description
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
manifestsdirectory under the destination, containingdeployment.yamlandservice.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
manifestsdirectory 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
manifestsdirectory 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).
- Dominant language
- Go
- Stars
- 644
- Forks
- 74
- PR merge metrics
- No merged PRs in 30d
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from Azure/draft
-
Difficulty 3/5 1-2 days Newbie friendliness 38/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 42/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 45/100
-
Difficulty 5/5 Over a week Newbie friendliness 25/100
Similar issues
-
Difficulty 1/5 Under an hour Newbie friendliness 60/100
github/gh-aw-mcpg#13748 ·
-
agentic-workflows
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
-
needs-triage
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
googleapis/librarian#7670 · 2 comments ·