Pulumi Xen Orchestra - News
-
Hello there, we released a new Pulumi Xen Orchestra provider !
It's worth noting that the work on this was started by some contributors from DESY, and that now we (Vates) commit to support and maintain it. This demonstrate the strength of joined work from both community and Vates on free and open source softwares
So what is offered is to declare your infrastructure as code, in
- C# / .NET
- Go
- Javascript or Typescript
- Python
- Yaml
(pick the one you prefer
)
And to deploy, maintain, and update it.
https://github.com/vatesfr/pulumi-xenorchestra/
https://www.pulumi.com/registry/packages/xenorchestra/
Release v2.1.0
This new version builds on the improvements to the Terraform Provider regarding the disk lifecycle of a VM (TF provider release).
Full Release Note: https://github.com/vatesfr/pulumi-xenorchestra/releases/tag/v2.1.0
Release v2.0.0
This release aims to ensure that the provider is up to date with the latest version of the pulumi-terraform-bridge. This will make it easier to follow new Pulumi versions.
The underlying Terraform provider XenOrchestra is updated to version 0.31.1, which fixes:
- Issues with blocked operations when creating VMs. #344
- A problem where the destroy_cloud_config_vdi_after_boot setting was ignored when the VM wasn't running. #345
As the major version number suggests, this release introduces changes that break compatibility with previous versions (mostly deprecated functions and resources that have been removed).
Find the release in the Pulumi registry: https://www.pulumi.com/registry/packages/xenorchestra/
Full Release Note: https://github.com/vatesfr/pulumi-xenorchestra/releases/tag/v2.0.0
Release v1.5.2
The provider is now available on the Pulumi official Registry
https://www.pulumi.com/registry/packages/xenorchestra/
We added example for Yaml in the documentation.
Full Release Note: https://github.com/vatesfr/pulumi-xenorchestra/releases/tag/v1.5.2
Release v1.5.0
The Pulumi Xen Orchestra provider is now available with Dotnet SDK!
- JavaScript/TypeScript:
@vates/pulumi-xenorchestra
- Python:
pulumi-xenorchestra
- Go:
github.com/vatesfr/pulumi-xenorchestra/sdk
- .NET:
Pulumi.Xenorchestra
What's Changed
- Feat: Add dotnet support
- Add docs for Dotnet SDK and unify examples
The Pulumi schema doesn't support u64 (or i64), so we convert to a float64, which should get us at least 2^52 bits of precision while minimizing the breaking change (int -> float) for our users.
List of properties to be updated from "integer" to "number"/float64:
Resources
- "xenorchestra:index/vm:Vm":
π‘
inputs: "memoryMax" type changed from "integer" to "number"π‘
properties: "memoryMax" type changed from "integer" to "number"
Types
π‘
"xenorchestra:index/VmDisk:VmDisk": properties: "size" type changed from "integer" to "number"
How to migrate Golang stack code
Replace
pulumi.Int(...)
withpulumi.Float64(...)
Other SDKs do not seem to be affected by the changes.
Full Release Note: https://github.com/vatesfr/pulumi-xenorchestra/releases/tag/v1.5.0
What's next?
Upgrade the Pulumi SDK and others libraries to the latest version and provider Java sdk.
If you are using Pulumi Xen Orchestra, please share your experiences and needs with us
-
C Cyrille referenced this topic on
-
Awesome ! Thanks Vates and DESY for all the work that went into this.
I'm really looking forward to use the pulumi provider when I get to the automation part of my tests (probably in a few months though).
-
Release v1.5.2
The provider is now available on the Pulumi official Registry
https://www.pulumi.com/registry/packages/xenorchestra/
We added example for Yaml in the documentation.
Full Release Note: https://github.com/vatesfr/pulumi-xenorchestra/releases/tag/v1.5.2
-
Release v2.0.0
This release aims to ensure that the provider is up to date with the latest version of the pulumi-terraform-bridge. This will make it easier to follow new Pulumi versions.
The underlying Terraform provider XenOrchestra is updated to version 0.31.1, which fixes:
- Issues with blocked operations when creating VMs. #344
- A problem where the
destroy_cloud_config_vdi_after_boot
setting was ignored when the VM wasn't running. #345
As the major version number suggests, this release introduces changes that break compatibility with previous versions (mostly deprecated functions and resources that have been removed).
Find the release in the Pulumi registry: https://www.pulumi.com/registry/packages/xenorchestra/
Full Release Note: https://github.com/vatesfr/pulumi-xenorchestra/releases/tag/v2.0.0
-
@Cyrille Thanks! Looking forward to using this, or something like this.
It would be awesome if there was a Youtube demo getting started video for yaml or typescript!
-
@andrewperry said in Pulumi Xen Orchestra - News:
@Cyrille Thanks! Looking forward to using this, or something like this.
It would be awesome if there was a Youtube demo getting started video for yaml or typescript!
Yes that would truly be awesome. Though it would be very good if this Pulumi Xen Orchestra provider had YAML support added please.
-
@john.c You can already use Yaml with the Xen Orchestra Pulumi provider
name: test-yaml description: A minimal Pulumi YAML program runtime: yaml config: { 'pulumi:tags': { value: { 'pulumi:template': yaml } } } variables: poolId: fn::invoke: function: xenorchestra:getXoaPool arguments: nameLabel: "Lab" return: id netId: fn::invoke: function: xenorchestra:getXoaNetwork arguments: nameLabel: "Lab" poolId: ${poolId} return: id localStorageId: fn::invoke: function: xenorchestra:getXoaStorageRepository arguments: nameLabel: "Local Storage" return: id templateId: fn::invoke: function: xenorchestra:getXoaTemplate arguments: nameLabel: "Debian 12 Cloud-init (Hub)" poolId: ${poolId} return: id resources: vm: type: xenorchestra:Vm properties: nameLabel: "Pulumi yaml test" nameDescription: "test with pulumi yaml provider" cpus: 1 memoryMax: 1073733632 template: ${templateId} tags: - pulumi cloudConfig: | #cloud-config ssh_authorized_keys: - *** disks: - nameLabel: "OS" size: 8294967296 srId: ${localStorageId} networks: - networkId: ${netId} powerState: "Running" outputs: poolId: ${poolId} vmIp: ${vm.ipv4Addresses}
Tell us if it ins't working
-
@Cyrille said in Pulumi Xen Orchestra - News:
@john.c You can already use Yaml with the Xen Orchestra Pulumi provider
name: test-yaml description: A minimal Pulumi YAML program runtime: yaml config: { 'pulumi:tags': { value: { 'pulumi:template': yaml } } } variables: poolId: fn::invoke: function: xenorchestra:getXoaPool arguments: nameLabel: "Lab" return: id netId: fn::invoke: function: xenorchestra:getXoaNetwork arguments: nameLabel: "Lab" poolId: ${poolId} return: id localStorageId: fn::invoke: function: xenorchestra:getXoaStorageRepository arguments: nameLabel: "Local Storage" return: id templateId: fn::invoke: function: xenorchestra:getXoaTemplate arguments: nameLabel: "Debian 12 Cloud-init (Hub)" poolId: ${poolId} return: id resources: vm: type: xenorchestra:Vm properties: nameLabel: "Pulumi yaml test" nameDescription: "test with pulumi yaml provider" cpus: 1 memoryMax: 1073733632 template: ${templateId} tags: - pulumi cloudConfig: | #cloud-config ssh_authorized_keys: - *** disks: - nameLabel: "OS" size: 8294967296 srId: ${localStorageId} networks: - networkId: ${netId} powerState: "Running" outputs: poolId: ${poolId} vmIp: ${vm.ipv4Addresses}
Tell us if it ins't working
Please update OP as itβs not mentioned there!
-
Release v2.1.0
This new version builds on the improvements to the Terraform Provider regarding the disk lifecycle of a VM (TF provider release).
Full Release Note: https://github.com/vatesfr/pulumi-xenorchestra/releases/tag/v2.1.0