Skip to content

Conversation

@prom3theu5
Copy link
Contributor

Description

Starting to roll in the expansions to the publishers, to allow output in the various target asset types.
Ignore a lot of the processing within the Output generators for now, lots of changes to come - this is more for transparency / visibility atm.

Checklist

  • Is this feature complete?
    • Yes. Ready to ship.
    • No. Follow-up changes expected.
  • Are you including unit tests for the changes and scenario tests if relevant?
    • Yes
    • No
  • Did you add public API?
    • Yes
      • If yes, did you have an API Review for it?
        • Yes
        • No
      • Did you add <remarks /> and <code /> elements on your triple slash comments?
        • Yes
        • No
    • No
  • Does the change make any security assumptions or guarantees?
    • Yes
      • If yes, have you done a threat model and had a security review?
        • Yes
        • No
    • No
  • Does the change require an update in our Aspire docs?

@dotnet-policy-service dotnet-policy-service bot added the community-contribution Indicates that the PR has been added by a community member label Mar 8, 2025
@davidfowl
Copy link
Member

davidfowl commented Mar 8, 2025

One of the things we will want to do is also look at modeling docker compose files, helm and k8s as resources much like how we do with the azure resources. (Cdk like objects for each)

@prom3theu5
Copy link
Contributor Author

prom3theu5 commented Mar 8, 2025

One of the things we will want to do is also look at modeling docker compose files, helm and k8s as resources much like how we do with the azure resources. (Cdk like objects for each)

Thats probably a good call. It would - in turn, eventually allow compose and helm charts etc to be added to an AppHost as templates etc much like bicep supports.
We'd probably have to build a similar abstraction with properties wrapped in things like YamlValue, YamlDictionaryOfT etc

If we eventually went the AppHost route for addition / inclusion of those though, the provisioner would be pretty "full on" in terms of effort ^^

@davidfowl
Copy link
Member

If we eventually went the AppHost route for addition / inclusion of those though, the provisioner would be pretty "full on" in terms of effort ^^

This is the plan 😄, but we should be incremental here so we can build up before we replicate the wrong pattern everywhere.

@davidfowl
Copy link
Member

Thoughts on https://cdk8s.io/ @prom3theu5 ?

@prom3theu5
Copy link
Contributor Author

prom3theu5 commented Mar 9, 2025

Thoughts on https://cdk8s.io/ @prom3theu5 ?

I am a fan. Also, c# support was recently added.
Personally, i've always tended to use Pulumi's Automation API though for C# based deployments when i'm asked to bundle things a dev team can use directly for things like local-dev etc Example / Docs

I've also been following: Timoni quite closely

But thats what we're going to eventually be able to replace with Aspire 😄

Are you thinking about including cdk8s projects in the AppHost?

@davidfowl
Copy link
Member

Are you thinking about including cdk8s projects in the AppHost?

Only if they had C# support and it was extensible (and not going to die 😄).

@davidfowl
Copy link
Member

We could contribute to it as well.

@prom3theu5
Copy link
Contributor Author

Are you thinking about including cdk8s projects in the AppHost?

Only if they had C# support and it was extensible (and not going to die 😄).

They do now - its not documented, but it was merged in 2 weeks ago ^^

@davidfowl davidfowl marked this pull request as ready for review March 9, 2025 17:21
@prom3theu5 prom3theu5 force-pushed the kube-publishing branch 2 times, most recently from 538b970 to ea5c963 Compare March 9, 2025 19:38
@davidfowl
Copy link
Member

These packages are in preview and we’ll keep it there until we get to a good approach. That said I’d like us to iterate on small commits, especially when we have something that we can try out.

what do you think is the next step here @prom3theu5? We should pick one end to end to flesh out the “problems” and interactions between the cli and publisher (including stare management and prompting etc)

@prom3theu5
Copy link
Contributor Author

prom3theu5 commented Mar 10, 2025

These packages are in preview and we’ll keep it there until we get to a good approach. That said I’d like us to iterate on small commits, especially when we have something that we can try out.

what do you think is the next step here @prom3theu5? We should pick one end to end to flesh out the “problems” and interactions between the cli and publisher (including stare management and prompting etc)

Yep!

Compose is the easiest to work through, once thats in place - its relatively quick to work through the rest, as long as the pattern is satisfactory
I've made a start firming that up - still a few issues i need to work through tomorrow night, but we are going to have to capture some input somehow if not all parameters and secrets have values set etc

@github-actions github-actions bot added the needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners label Mar 10, 2025
@prom3theu5 prom3theu5 changed the title WIP - K8s and Docker publishing WIP - Docker Compose publishing Mar 10, 2025
@danmoseley danmoseley added area-deployment and removed needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners labels Mar 11, 2025
@davidfowl davidfowl changed the title WIP - Docker Compose publishing Docker Compose publishing Mar 11, 2025
@davidfowl davidfowl merged commit 32f6eb1 into dotnet:main Mar 11, 2025
160 checks passed
@mitchdenny
Copy link
Member

Thanks for all your efforts @prom3theu5

@prom3theu5
Copy link
Contributor Author

Cheers Mitch 😃

@prom3theu5 prom3theu5 deleted the kube-publishing branch March 14, 2025 23:29
@github-actions github-actions bot locked and limited conversation to collaborators Apr 14, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

area-deployment community-contribution Indicates that the PR has been added by a community member

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants