-
Notifications
You must be signed in to change notification settings - Fork 125
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
Add pulumi-xenorchestra community package #6763
Conversation
Hey @gCyrille, thanks a lot for adding this new provider! 🚀 I’ll work through this checklist to confirm it’s ready to go in. Checklist
|
I believe yes, you'll need it to be a png or it will get rejected by NuGet (the dotnet package manager) |
Hi @flostadler, do you need a contact email address? If so, I can give you the email of our devops team who will provide support. Otherwise it can be me. |
@gCyrille the email of the devops team sounds good, thanks! Here's a preview of the rendered registry page1 for the xenorchestra provider. The SVG icon renders correctly in the registry, but as @mjeffryes pointed out, I'd recommend using a png instead because NuGet needs one anyways. In general the docs are looking good and the provider can be installed by following the instructions. I see you left a TODO for adding the dotnet SDK, installation instructions and example. Once that's added we should be good to add the provider to the registry. Footnotes
|
I made a new release (v1.4.1) that include a valid logo (png 100x100) |
Regarding the dotnet SDK, there was a bug with wrong type conversion in previous releases (a I don't know if we can fix this in the near future. Is it possible to publish the provider without dotnet ? |
@gCyrille the issue with 64bit integers requires pulumi/pulumi#14242 to be resolved. But this requires some deeper changes to the state and wire protocols. I don't think a near future fix for this is realistic. One possible workaround for provider authors is to change the offending properties to be string encoded numbers instead. (Note, javascript also does not support the full 64bit width. There the maximum safe integer is 2^53 - 1, see). We do have a policy that new providers should have SDKs published in all Pulumi languages and that the examples on the docs pages support all Pulumi languages as well. Would you be willing to publish a dotnet SDK or is the 32bit limitation severe/destructive enough to omit the whole SDK? |
@flostadler The 32bit limitation is severe because it limits the VM disk sizes to 2GB. We would like to push the provider without dotnet support, it seems better than a buggy dotnet sdk. |
@gCyrille I've brought this up internally, but we've decided to stick to the rule of requiring dotnet SDKs. I'm sorry! What do you think about overriding the RAM properties in pulumi and changing them from ints to strings? The added benefit here would be that you can also accept units to allow things like specifying "8GB". |
If it's possible to override the property in Pulumi to allow format like "8GB" that would be great! How can I do that? Can you share some documentation? |
We don't have docs for that afaik (passing that feedback along internally to the right team). You'd need to overwrite the type here: https://github.com/vatesfr/pulumi-xenorchestra/blob/f74f675c6d154e834a54213c372e28fb540371f3/provider/resources.go#L127 e.g. this would turn into something like this: "xenorchestra_vm": {
Tok: tfbridge.MakeResource(mainPkg, mainMod, "Vm"),
Fields: map[string]*tfbridge.SchemaInfo{
"memory_max": {
Type: "string",
Transform: func(pv resource.PropertyValue) (resource.PropertyValue, error) { /** Convert the string representation to an int **/},
},
},
}, Alternatively, you could just change the type to "xenorchestra_vm": {
Tok: tfbridge.MakeResource(mainPkg, mainMod, "Vm"),
Fields: map[string]*tfbridge.SchemaInfo{
"memory_max": {
Type: "number",
},
},
}, Happy to help (feel free to ping me on the community slack) if you need some help here |
@flostadler Thanks for the help. |
Awesome @gCyrille, taking a look now! |
Here's the new preview: http://registry--origin-pr-6852-10fdf90e.s3-website.us-west-2.amazonaws.com/registry/packages/xenorchestra/ Working through the checklist now |
@flostadler the examples for the Dotnet are missing from the preview. Do I need to fix something? |
@gCyrille You're fast! Was just about to bring that up. The language chooser for dotnet needs to be called Here's an example from another provider: https://github.com/pulumi/registry/blob/master/themes/default/content/registry/packages/talos/_index.md?plain=1 |
Just noticed one more thing, the |
It should be good in v1.5.2 I confirm for the licenses, that no code of Xen Orchestra has found its way into the provider :) |
Thanks @gCyrille, I'm currently confirming the addition of the xenorchestra package internally and will let you know ASAP what the next steps are |
Description
Hello,
I work for vatesfr and here is the PR to add the pulumi-xenorchestra provider plugin to the community package list. We recently released the v1.4.0
I'm not sure if it's ready, but I tried to follow the "Authoring and publishing Pulumi package" guide.
Edit: I checked the list below and I am not sure about this:
Help/Reviews are welcome to improve the package :)
Thanks
Adding a new package?
If this pull request adds a new package, please verify/document:
Cloud
,Infrastructure
,Network
,Database
,Monitoring
, orUtility
)./docs/_index.md
) that includes:layout
set topackage
./docs/installation-configuration.md
) that includes:pulumi config set
.v
that corresponds with a valid GitHub release and published package SDKs (in NPM, PyPi, and NuGet)