Skip to content

feat: add Ionoscloud provider #7377

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

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

rmocanu-ionos
Copy link

@rmocanu-ionos rmocanu-ionos commented Apr 28, 2025

hello, Pulumi team. This PR adds the Ionoscloud provider package to the pulumi registry. This package allows users to provision Ionoscloud resources that are also available in our terraform provider here.

  • Released your package with a version prefixed with v (e.g. v0.1.0). The
    part after the leading v must be valid semver 2.0.
  • Published an SDK for your provider in:
    • Typescript
    • Python
    • Go
    • C#
    • Java (optional)
  • Have checked in a schema.json that matches the location of the schemaFile
    specified in /community-packages/package-list.json.
  • Have a /docs/_index.md and /docs/installation-configuration.md filled
    out in your repo.
  • /docs/installation-configuration.md links to all published SDKs.
  • /docs/index.md shows an example of using your provider in each language.

@rmocanu-ionos rmocanu-ionos requested a review from a team as a code owner April 28, 2025 09:22
@rmocanu-ionos rmocanu-ionos changed the title Generated docs feat: add Ionoscloud provider Apr 28, 2025
@flostadler
Copy link
Contributor

flostadler commented Apr 28, 2025

Hey @rmocanu-ionos, thanks a lot for your interest in adding a new package to our registry!
Can you please fill out this form so we have contact details of the maintainers: https://forms.gle/ar3A5AUckZ282ZZ7A

For reference, I'll be using this checklist to confirm the provider is correctly showing up in the registry:

  • Pulumi has appropriate contact information from the provider maintainer

    If the provider is community maintained (maintained by a person, not a company), then a GitHub handle is sufficient

    If the provider is maintained by a company, Pulumi needs a contact person at the maintaining company.

  • The package will generate accurate documentation:

    1. Check out the PR under review and run:
    $ make bin/resourcedocsgen
    $ ./bin/resourcedocsgen metadata from-github \
            --repoSlug '<repoSlug>' \
            --schemaFile '<schemaFile>' \
            --version '<version>'

    Here <repoSlug> and <schemaFile> should match exactly the values added to /community-packages/package-list.json.

    This will generate metadata for the provider locally.

    1. Push the metadata files into a PR (either back to the PR under review or a new PR).

    After pushing the provider to CI and waiting for a preview site:

    • Confirm that that CI passes for the PR with the metadata files.

    • Click through the site preview and confirm that the docs (for the new provider) render as expected.

    • The registry renders a valid logo for the new provider.

  • Hand-written docs are complete and accurate:

    • Validate that you can install the new provider with the instructions found in /docs/installation-configuration.md.

    Maintainers should run the pulumi plugin install resource <name> <version> --server <pluginDownloadURL> command specified in the /docs/installation-configuration.md and see a provider be downloaded.

    • /docs/installation-configuration.md contains a link to the published SDK in each language (i.e. TypeScript, Python, Go and C#).

    • /docs/_index.md contains a minimal example in every supported language.

    • /docs/_index.md contains a brief explanation of what the package does.

  • There is a published version:

    • The repository has a version tag prefixed with v that corresponds with a valid GitHub release
    • Each published SDK has a matching release
  • A CODEOWNER has approved the PR.

@flostadler flostadler self-assigned this Apr 28, 2025

The Pulumi `Ionoscloud` provider is available as a package in most Pulumi languages:

* JavaScript/TypeScript: [`@ovhcloud/pulumi-ovh`](https://www.npmjs.com/package/@ionos-cloud/sdk-pulumi)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The text of this link should probably be @ionos-cloud/sdk-pulumi

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@rmocanu-ionos just checking in, do you want to continue with with adding the provider to the registry?

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hey, yes, we want to. Sorry, I was under the impression that you need to do something to run the workflow for this pr or something. Should I make a new tag with this change?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, please release a new version of the provider with this fix and then I’ll take it from here!

Copy link
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I made a new release (v0.2.2) with the change, should I regenerate the docs and add the changes to this pr?

Copy link
Contributor

@flostadler flostadler May 12, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No that's fine, I'll need to create a separate PR for verification anyways

@flostadler
Copy link
Contributor

@rmocanu-ionos please also remember to fill out the form I mentioned in the comment above: #7377 (comment)

@flostadler
Copy link
Contributor

flostadler commented May 12, 2025

@rmocanu-ionos here's a preview version of how the IonosCloud provider will look like in the registry: http://registry--origin-pr-7539-dc0b4ddb.s3-website.us-west-2.amazonaws.com/registry/packages/ionoscloud/

One thing I've noticed is that you do not have a logoUrl in your schema. Because of that, the registry doesn't display a logo for your provider. Can you please add one here: https://github.com/ionos-cloud/pulumi-ionoscloud/blob/1a2210e5d02e79497c4d8e2e389d64863f90e2e6/provider/resources.go#L142

@flostadler flostadler added the awaiting-feedback Blocked on input from the author label May 12, 2025
@rmocanu-ionos
Copy link
Author

Hello, I have made a new release with the logo. Regarding the form I sent it to some colleagues and they are looking into it

@flostadler flostadler removed the awaiting-feedback Blocked on input from the author label May 14, 2025
@flostadler
Copy link
Contributor

@rmocanu-ionos this worked, the logo is shown in the registry now: http://registry--origin-pr-7539-fded80f6.s3-website.us-west-2.amazonaws.com/registry/packages/ionoscloud/

From a technical perspective this looks good. Please let me know once you've submitted the contact details!

@flostadler flostadler added the awaiting-feedback Blocked on input from the author label May 14, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
awaiting-feedback Blocked on input from the author
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants