Thread
#yaml
    b

    bright-orange-69401

    1 week ago
    📦 Component Packages 📦 Is it possible to develop my own Component Package (developed in Python) and use those components in a Pulumi YAML project ? Imagine I create a
    nuage:Function
    component, how would Pulumi YAML know about it ? Don't I need to somehow install it ? Maybe as a Pulumi plugin ?
    l

    limited-rainbow-51650

    1 week ago
    Hello @bright-orange-69401, every Pulumi plugin is centered around the Pulumi schema. This describes the available configuration options each resource has, which type it should be, etc. Our YAML engine reads this schema to find out if the given properties are correct.
    b

    bright-orange-69401

    1 week ago
    Assuming my components are private and not on the Pulumi registry, then I’d need to pulumi plugin install —server To install my component package from my GitHub release Is that correct ?
    l

    limited-rainbow-51650

    1 week ago
    In the Pulumi Schema, you can configure the download URL for your plugin binary. Since v3.35.3, we have explicit github support (which uses the Github API). If you have a
    GITHUB_TOKEN
    configured as an env variable, a Github release from a private repo should work automatically.https://www.pulumi.com/docs/guides/pulumi-packages/how-to-author/#support-for-github-releases
    b

    bright-orange-69401

    1 week ago
    @limited-rainbow-51650 I'm not sure I understand how you let a blank (new) Pulumi project know about our Component Package You mentioned that everything is in the schema, but how would a new Pulumi project know about this schema ? Surely we'd have to download/install something first, correct ?
    l

    limited-rainbow-51650

    1 week ago
    @bright-orange-69401 we lack documentation for this on our website, but for the YAML engine, you have to repeat the download url in your YAML setup. Here is a small example:https://github.com/pulumi/pulumi-yaml/blob/60bfab81632daf5cb945e04b57412dc135fed4d[…]-providers.pp/yaml/aws-resource-options-multiple-providers.yaml