pulumi

Pulumi - Infrastructure as Code in any programming language 🚀

APACHE-2.0 License

Downloads
4.6M
Stars
21.5K
Committers
278

Bot releases are visible (Hide)

pulumi - v3.32.0

Published by pulumi-bot over 2 years ago

Improvements

  • Pulumi Java support
  • Pulumi YAML support

Bug Fixes

pulumi - v3.31.1

Published by pulumi-bot over 2 years ago

Improvements

  • [dotnet] No longer roundtrips requests for the stack URN via the engine.
    #9515

Bug Fixes

  • [codegen/go] Enable obtaining resource outputs off a ResourceOutput.
    #9513

  • [codegen/go] Ensure that "plain" generates shallowly plain types.
    #9512

  • [codegen/nodejs] Fix enum naming when the enum name starts with _.
    #9453

  • [cli] Empty passphrases environment variables are now treated as if the variable was not set.
    #9490

  • [sdk/go] Fix awaits for outputs containing resources.
    #9106

  • [cli] Decode YAML mappings with numeric keys during diff.
    #9502

  • [cli] Fix an issue with explicit and default organization names in pulumi new
    #9514

pulumi - v3.31.0

Published by pulumi-bot over 2 years ago

Improvements

  • [auto/*] Add --save-plan and --plan options to automation API.
    #9391

  • [cli] "down" is now treated as an alias of "destroy".
    #9458

  • [go] Add Composite resource option allowing several options to be encapsulated into a "single" option.
    #9459

  • [codegen] - Support all Asset and Archive types.
    #9463

  • [cli] Display JSON/YAML property values as objects for creates, sames, and deletes.
    #9484

Bug Fixes

  • [codegen/go] - Ensure that plain properties are plain.
    #9430
    #9488

  • [cli] Fixed some context leaks where shutdown code wasn't correctly called.
    #9438

  • [cli] Do not render array diffs for unchanged elements without recorded values.
    #9448

  • [auto/go] Fixed the exit code reported by runPulumiCommandSync to be zero if the command runs successfully. Previously it returned -2 which could lead to confusing messages if the exit code was used for other errors, such as in Stack.Preview.
    #9443

  • [auto/go] Fixed a race condition that could cause Preview to fail with "failed to get preview summary".
    #9467

  • [backend/filestate] - Fix a bug creating stack.json.bak files.
    #9476

pulumi - v3.30.0

Published by pulumi-bot over 2 years ago

Improvements

  • [cli] Split invoke request protobufs, as monitors and providers take different arguments.
    #9323

  • [providers] - gRPC providers can now support an Attach method for debugging. The engine will attach to providers listed in the PULUMI_DEBUG_PROVIDERS environment variable. This should be of the form "providerName:port,otherProvider:port".
    #8979

Bug Fixes

  • [cli/plugin] - Dynamic provider binaries will now be found even if pulumi/bin is not on $PATH.
    #9396

  • [sdk/go] - Fail appropriatly for config.Try* and config.Require* where the
    key is present but of the wrong type.
    #9407

pulumi - v3.29.1

Published by pulumi-bot over 2 years ago

Improvements

  • [cli] - Installing of language specific project dependencies is now managed by the language plugins, not the pulumi cli.
    #9294

  • [cli] Warn users when there are pending operations but proceed with deployment
    #9293

  • [cli] Display more useful diffs for secrets that are not primitive values
    #9351

  • [cli] - Warn when additionalSecretOutputs is used to mark the id property as secret.
    #9360

  • [cli] Display richer diffs for texutal property values.
    #9376

  • [cli] Display richer diffs for JSON/YAML property values.
    #9380

Bug Fixes

  • [codegen/node] - Fix an issue with escaping deprecation messages.
    #9371

  • [cli] - StackReferences will now correctly use the service bulk decryption end point.
    #9373

pulumi - v3.28.0

Published by pulumi-bot over 2 years ago

Improvements

  • When a resource is aliased to an existing resource with a different URN, only store
    the alias of the existing resource in the statefile rather than storing all possible
    aliases.
    #9288

  • Clear pending operations during pulumi refresh or pulumi up -r.
    #8435

  • [cli] - pulumi whoami --verbose and pulumi about include a list of the current users organizations.
    #9211

Bug Fixes

  • [codegen/go] - Fix Go SDK function output to check for errors
    pulumi-aws#1872

  • [cli/engine] - Fix a panic due to Check returning nil while using update plans.
    #9304

pulumi - v3.27.0

Published by pulumi-bot over 2 years ago

Improvements

  • [cli] - Implement pulumi stack unselect.
    #9179

  • [language/dotnet] - Updated Pulumi dotnet packages to use grpc-dotnet instead of grpc.
    #9149

  • [cli/config] - Rename the config property in Pulumi.yaml to stackConfigDir. The config key will continue to be supported.
    #9145

  • [cli/plugins] Add support for downloading plugin from private Pulumi GitHub releases. This also drops the use of the GITHUB_ACTOR and GITHUB_PERSONAL_ACCESS_TOKEN environment variables for authenticating to github. Only GITHUB_TOKEN is now used, but this can be set to a personal access token.
    #9185

  • [cli] - Speed up pulumi stack --show-name by skipping unneeded snapshot loading.
    #9199

  • [cli/plugins] - Improved error message for missing plugins.
    #5208

  • [sdk/nodejs] - Take engines property into account when engine-strict appear in npmrc file
    #9249

Bug Fixes

  • [sdk/nodejs] - Fix uncaught error "ENOENT: no such file or directory" when an error occurs during the stack up.
    #9065

  • [sdk/nodejs] - Fix uncaught error "ENOENT: no such file or directory" when an error occurs during the stack preview.
    #9272

  • [sdk/go] - Fix a panic in pulumi.All when using pointer inputs.
    #9197

  • [cli/engine] - Fix a panic due to passing "" as the ID for a resource read.
    #9243

  • [cli/engine] - Fix a panic due to Check failing while using update plans.
    #9254

  • [cli] - Stack names correctly take org set-default into account when printing.
    #9240

pulumi - v3.26.1

Published by pulumi-bot over 2 years ago

Improvements

Bug Fixes

  • [cli/new] Fix an error message when the project name picked by default was already used.
    #9156
pulumi - v3.26.0

Published by pulumi-bot over 2 years ago

Improvements

  • [area/cli] - Implemented state rename command.
    #9098

  • [cli/plugins] pulumi plugin install can now look up the latest version of plugins on GitHub releases.
    #9012

  • [cli/backend] - pulumi cancel is now supported for the file state backend.
    #9100

  • [cli/import] - The import command no longer errors if resource properties do not validate. Instead the
    engine warns about property issues returned by the provider but then continues with the import and codegen
    as best it can. This should result in more resources being imported to the pulumi state and being able to
    generate some code, at the cost that the generated code may not work as is in an update. Users will have to
    edit the code to successfully run.
    #8922

  • [cli/import] - Code generation in pulumi import can now be disabled with the --generate-code=false flag.
    #9141

Bug Fixes

  • [sdk/python] - Fix build warnings. See
    #9011 for more details.
    #9139

  • [cli/backend] - Fixed an issue with non-atomicity when saving file state stacks.
    #9122

  • [sdk/go] - Fixed an issue where the RetainOnDelete resource option is not applied.
    #9147

pulumi - v3.25.1

Published by pulumi-bot over 2 years ago

Improvements

Bug Fixes

  • [sdk/nodejs] - Fix Node fs.rmdir DeprecationWarning for Node JS 15.X+
    #9044

  • [engine] - Fix deny default provider handling for Invokes and Reads.
    #9067

  • [codegen/go] - Fix secret codegen for input properties
    #9052

  • [sdk/nodejs] - PULUMI_NODEJS_TSCONFIG_PATH is now explicitly passed to tsnode for the tsconfig file.
    #9062

pulumi - v3.25.0

Published by pulumi-bot over 2 years ago

Improvements

  • [codegen/go] - Add GenerateProgramWithOpts function to enable configurable codegen options.
    #8997

  • [cli] - Enabled dot spinner for non-interactive mode
    #8996

  • [sdk] - Add RetainOnDelete as a resource option.
    #8746

  • [cli] - Adding completion as an alias to gen-completion
    #9006

  • [cli/plugins] Add support for downloading plugin from private GitHub releases.
    #8944

Bug Fixes

  • [sdk/go] - Normalize merge behavior for ResourceOptions, inline
    with other SDKs. See https://github.com/pulumi/pulumi/issues/8796 for more
    details.
    #8882

  • [sdk/go] - Correctly parse GoLang version.
    #8920

  • [sdk/go] - Fix git initialization in git_test.go
    #8924

  • [cli/go] - Fix git initialization in util_test.go
    #8924

  • [sdk/nodejs] - Fix nodejs function serialization module path to comply with package.json
    exports if exports is specified.
    #8893

  • [cli/python] - Parse a larger subset of PEP440 when guessing Pulumi package versions.
    #8958

  • [sdk/nodejs] - Allow disabling TypeScript typechecking
    #8981

  • [cli/backend] - Revert a change to file state locking that was causing stacks to stay locked.
    #8995

  • [cli] - Fix passphrase secrets provider prompting.
    #8986

  • [cli] - Fix an assert when replacing protected resources.
    #9004

pulumi - v3.24.1

Published by pulumi-bot over 2 years ago

Improvements

  • [codegen/go] - Implement go type conversions for optional string, boolean, int, and float32
    arguments, and changes our behavior for optional spilling from variable declaration hoisting to
    instead rewrite as calls to these functions. Fixes #8821.
    #8839

  • [sdk/go] Added new conversion functions for Read methods on resources exported at the top level
    of the Pulumi sdk. They are StringRef, BoolRef, IntRef, and Float64Ref. They are used for
    creating a pointer to the type they name, e.g.: StringRef takes string and returns *string.
    Data source methods which take optional strings, bools, ints, and float64 values can be set to
    the return value of these functions. These functions will appear in generated programs as well as
    future docs updates.

  • [sdk/nodejs] - Fix resource plugins advertising a pluginDownloadURL not being downloaded. This
    should allow resource plugins published via boilerplates to find and consume plugins published
    outside the registry. See: https://github.com/pulumi/pulumi/issues/8890 for the tracking issue to
    document this feature.

  • [cli] Experimental support for update plans. Only enabled when PULUMI_EXPERIMENTAL is
    set. This enables preview to save a plan of what the engine expects to happen in a file
    with --save-plan. That plan can then be read in by up with --plan and is used to ensure
    only the expected operations happen.
    #8448

  • [codegen] - Add language option to make codegen respect the Version field in
    the Pulumi package schema.
    #8881

  • [cli] - Support wildcards for pulumi up --target <urn> and similar commands.
    #8883.

  • [cli/import] - The import command now takes an extra argument --properties to instruct the engine which
    properties to use for the import. This can be used to import resources which the engine couldn't automaticly
    infer the correct property set for.
    #8846

  • [cli] Ensure defaultOrg is used as part of any stack name
    #8903

Bug Fixes

  • [codegen] - Correctly handle third party resource imports.
    #8861

  • [sdk/dotnet] - Normalize merge behavior for ComponentResourceOptions, inline
    with other SDKs. See https://github.com/pulumi/pulumi/issues/8796 for more
    details.
    #8838

  • [codegen/nodejs] - Respect compat modes when referencing external types.
    #8850

  • [cli] The engine will allow a resource to be replaced if either it's old or new state
    (or both) is not protected.
    #8873

  • [cli] - Fixed CLI duplicating prompt question.
    #8858

  • [cli] - pulumi plugin install --reinstall now always reinstalls plugins.
    #8892

  • [codegen/go] - Honor import aliases for external types/resources.
    #8833

  • [codegen/python] - Correctly reference external types/resources with same module name.
    #8910

  • [sdk/nodejs] - Correctly pickup provider as a member of providers.
    #8923

pulumi - v3.23.2

Published by pulumi-bot over 2 years ago

Improvements

Bug Fixes

  • [sdk/{nodejs,python}] - Remove sequence numbers from the dynamic provider interfaces.
    #8849
pulumi - v3.23.1

Published by pulumi-bot over 2 years ago

Improvements

Bug Fixes

  • [sdk/{nodejs,python}] - Remove sequence numbers from the dynamic provider interfaces.
    #8849
pulumi - v3.23.0

Published by pulumi-bot over 2 years ago

Improvements

  • [codegen/dotnet] - Add C# extension rootNamespace, allowing the user to
    replace Pulumi as the default C# global namespace in generated programs.
    The Company and Author fields of the .csproj file are now driven by
    schema.publisher.
    #8735

  • [cli] Download provider plugins from GitHub Releases
    #8785

  • [cli] Using a decryptAll functionality when deserializing a deployment. This will allow
    decryption of secrets stored in the Pulumi Service backend to happen in bulk for
    performance increase
    #8676

  • [sdk/dotnet] - Changed Output<T>.ToString() to return an informative message rather than just "Output`1[X]"
    #8767

  • [cli] Add the concept of sequence numbers to the engine and resource provider interface.
    #8631

  • [common] Allow names with hyphens.

  • [cli] - Add support for overriding plugin download URLs.
    #8798

  • [automation] - Add color option to stack up, preview, refresh, and destroy commands.
    #8811

  • [sdk/nodejs] - Support top-level default exports in ESM.
    #8766

  • [cli] - Allow disabling default providers via the Pulumi config.
    #8829

  • [cli] Add better error message for pulumi service rate limit responses
    #7963

Bug Fixes

  • [sdk/{python,nodejs}] - Prevent ResourceOptions.merge from promoting between the
    .provider and .providers fields. This changes the general behavior of merging
    for .provider and .providers, as described in #8796.
    Note that this is a breaking change in two ways:

    1. Passing a provider to a custom resource of the wrong package now
      produces a ValueError. In the past it would send to the provider, and
      generally crash the provider.
    2. Merging two ResourceOptions with provider set no longer hoists to providers.
      One provider will now take priority over the other. The new behavior reflects the
      common case for ResourceOptions.merge. To restore the old behavior, replace
      ResourceOptions(provider=FooProvider).merge(ResourceOptions(provider=BarProvider))
      with ResourceOptions(providers=[FooProvider]).merge(ResourceOptions(providers=[BarProvider])).
      #8770
  • [codegen/nodejs] - Generate an install script that runs pulumi plugin install with
    the --server flag when necessary.
    #8730

  • [cli] The engine will no longer try to replace resources that are protected as that entails a delete.
    #8810

  • [codegen/pcl] - Fix handling of function invokes without args
    #8805

pulumi - v3.21.0

Published by pulumi-bot over 2 years ago

Improvements

  • [engine] - Interpret pluginDownloadURL as the provider host url when
    downloading plugins.
    #8544

  • [sdk/dotnet] - InputMap and InputList can now be initialized
    with any value that implicitly converts to the collection type.
    These values are then automatically appended, for example:

      var list = new InputList<string>
      {
          "V1",
          Output.Create("V2"),
          new[] { "V3", "V4" },
          new List<string> { "V5", "V6" },
          Output.Create(ImmutableArray.Create("V7", "V8"))
      };
    

    This feature simplifies the syntax for constructing resources and
    specifying resource options such as the DependsOn option.

    #8498

Bug Fixes

  • [sdk/python] - Fixes an issue with stack outputs persisting after
    they are removed from the Pulumi program
    #8583

  • [auto/*] - Fixes stack.setConfig() breaking when trying to set
    values that look like flags (such as -value)
    #8518

  • [sdk/dotnet] - Don't throw converting value types that don't match schema
    #8628

  • [sdk/{go,nodejs,dotnet,python}] - Compute full set of aliases when both parent and child are aliased.
    #8627

  • [cli/import] - Fix import of resource with non-identifier map keys
    #8645

  • [backend/filestate] - Allow preview on locked stack
    #8642

pulumi - v3.22.1

Published by pulumi-bot almost 3 years ago

Improvements

  • [sdk/dotnet] - Add PluginDownloadURL as a resource option. When provided by
    the schema, PluginDownloadURL will be baked into new Resource and Invoke
    requests in generated SDKs.
    #8739

  • [sdk] - Allow property paths to accept [*] as sugar for ["*"].
    #8743

  • [sdk/dotnet] Add Union.Bimap function for converting both sides of a union at once.
    #8733

Bug Fixes

  • [sdk/dotnet] Allow Output<Union> to be converted to InputUnion.
    #8733

  • [cli/config] - Revert number handling in pulumi config.
    #8754

pulumi - v3.22.0

Published by pulumi-bot almost 3 years ago

Improvements

  • [sdk/{nodejs,go,python}] - Add PluginDownloadURL as a resource option. When provided by
    the schema, PluginDownloadURL will be baked into new Resource and Invoke
    requests in generated SDKs.
    #8698
    #8690
    #8692

Bug Fixes

  • [auto/python] - Fixes an issue with exception isolation in a
    sequence of inline programs that caused all inline programs to fail
    after the first one failed
    #8693
pulumi - v3.21.1

Published by pulumi-bot almost 3 years ago

Improvements

  • [sdk/go] - Add PluginDownloadURL as a resource option.
    #8555

  • [sdk/go] - Allow users to override enviromental variables for GetCommandResults.
    #8610

  • [sdk/nodejs] Support using native ES modules as Pulumi scripts
    #7764

  • [sdk/nodejs] Support a nodeargs option for passing node arguments to the Node language host
    #8655

Bug Fixes

  • [cli/engine] - Fix #3982, a bug
    where the engine ignored the final line of stdout/stderr if it didn't terminate
    with a newline.
    #8671

  • [nodejs/sdk] - GetRequiredPlugins: Return plugins even when there're errors.
    #8699

pulumi - v3.20.0

Published by pulumi-bot almost 3 years ago

Improvements

  • [codegen/go] - Do not generate unreferenced input types by default.
    #7943

  • [codegen/go] - Simplify the application of object defaults in generated SDKs.
    #8539

  • [codegen/{python,dotnet}] - Emit pulumi-plugin.json unconditionally.
    #8527
    #8532

  • [sdk/python] - Lookup Pulumi packages by searching for pulumi-plugin.json.
    Pulumi packages need not be prefixed by pulumi- anymore.
    #8515

  • [sdk/go] - Lookup packages by searching for pulumi-plugin.json.
    Pulumi packages need not be prefixed by github.com/pulumi/pulumi- anymore.
    #8516

  • [sdk/dotnet] - Lookup packages by searching for pulumi-plugin.json.
    Pulumi packages need not be prefixed by Pulumi. anymore.
    #8517

  • [sdk/go] - Emit pulumi-plugin.json
    #8530

  • [cli] - Always use locking in filestate backends. This feature was
    previously disabled by default and activated by setting the
    PULUMI_SELF_MANAGED_STATE_LOCKING=1 environment variable.
    #8565

  • [{cli,auto}] - Exclude language plugins from PULUMI_IGNORE_AMBIENT_PLUGINS.
    #8576

  • [sdk/dotnet] - Fixes a rare race condition that sporadically caused
    NullReferenceException to be raised when constructing resources
    #8495

  • [cli] Log secret decryption events when a project uses the Pulumi Service and a 3rd party secrets provider
    #8563

  • [schema] Do not validate against the metaschema in ImportSpec. Clients that need to
    validate input schemas should use the BindSpec API instead.
    #8543

Bug Fixes

  • [codegen/schema] - Error on type token names that are not allowed (schema.Name
    or specified in allowedPackageNames).
    #8538
    #8558

  • [codegen/go] - Fix ElementType for nested collection input and output types.
    #8535

  • [{codegen,sdk}/{python,dotnet,go}] - Use pulumi-plugin.json rather than pulumiplugin.json.
    #8593