Commit graph

5706 commits

Author SHA1 Message Date
Mikhail Shilkov
356fe195af
Extensions to support input collection initializers with union types (#5938) 2020-12-14 20:33:53 +01:00
Luke Hoban
8f9054f56c Prepare for v2.15.6 release 2020-12-12 13:04:38 -08:00
Levi Blackstone
54d6703fee
Temporarily disable resource ref support (#5932)
Disable resource ref support until https://github.com/pulumi/pulumi-kubernetes/issues/1405
is fixed. This bug currently affects Python users with recent versions of the pulumi SDK
who are using the pulumi-kubernetes provider.
2020-12-12 12:02:45 -08:00
Evan Boyle
069f9f28cf
Fix bug that could cause Go SDK to drop dependencies (#5930)
* fix bug that could cause Go SDK to drop dependencies

* changelog
2020-12-11 16:27:11 -08:00
Komal
fed47e7334
[codegen/docs] - Fix html for property types (#5929) 2020-12-11 12:01:50 -08:00
Levi Blackstone
d3c75afce1
[codegen/go] Fix Input/Output methods for Go resources (#5916) 2020-12-11 11:49:08 -07:00
stack72
93e621aef6 Prepare for v2.15.5 release 2020-12-11 11:49:50 +00:00
Justin Van Patten
160220bc4a
[sdk/dotnet] Fix deserializing resources (#5921)
This change implements getResource in the mock monitor. This uncovered some issues deserializing resources, which this change also addresses.
2020-12-10 22:58:08 -08:00
Justin Van Patten
afd5ad6a97
[sdk/python] Implement getResource in the mock monitor (#5919) 2020-12-10 15:23:00 -08:00
Levi Blackstone
1674e0c0e4
Fix lint issue 2020-12-10 13:18:27 -07:00
Pat Gavlin
43c2507058
Allow display output to be explicitly redirected. (#5887)
This is intended to make it easier to write tests for components (e.g.
the backends) that consume these packages.
2020-12-10 11:39:01 -08:00
Levi Blackstone
f8382a57f4
Improve marshaling error message (#5915) 2020-12-10 12:11:54 -07:00
Levi Blackstone
4d48ee0517
Enable resource reference feature by default (#5905)
* Enable resource reference feature by default

Unless the PULUMI_DISABLE_RESOURCE_REFERENCES flag
is explicitly set to a truthy value, the resource reference feature is now
enabled by default.

* Set AcceptResources in the language SDKs

This can be disabled by setting the `PULUMI_DISABLE_RESOURCE_REFERENCES` environment variable to a truthy value.

Co-authored-by: Justin Van Patten <jvp@justinvp.com>
2020-12-10 11:21:05 -07:00
Justin Van Patten
918615f072
[sdk/nodejs] Implement getResource in the mock monitor (#5914)
Otherwise, unit tests for programs that reference resources that have been registered with `registerResourceModule` fail with unhandled exceptions.
2020-12-10 09:30:34 -08:00
Justin Van Patten
4747be7b9f
[sdk/nodejs] Use log.error to log uncaught errors (#5910)
`log.error` will call the engine's `log` gRPC endpoint (if the engine is available; otherwise it will write to `console.error`) with `LogSeverity.ERROR`, which tell the engine to stop processing further resource operations.

Without this, any uncaught errors (such as input validation errors done inside `apply`) would be written to stderr, but wouldn't actually result in an update error.
2020-12-10 08:53:25 -08:00
Paul Stack
3994fa8c22
Prevent panic when using pulumi import with local backend (#5906)
Fixes: #5876
2020-12-10 13:31:45 +00:00
Komal
cba68b0874
Fix union types in resource docs (#5909) 2020-12-09 18:18:34 -08:00
Mikhail Shilkov
cab39dcfa0
[dotnet] Resource package registration in .NET (attributes) (#5875)
* Resource package registration in .NET
* Refactor to attribute-based discovery
* Refactor to derived attributes
2020-12-09 23:28:58 +01:00
Komal
193b1f7d3b
Remove optional identifier before splitting type string. (#5907) 2020-12-09 12:20:11 -08:00
Pat Gavlin
a193836682
Fix new resource recording. (#5897)
Record new resources after their operations have been run rather than
before in order to ensure that all state is available and appropriately
marked as secret.

Fixes #5803.
2020-12-08 19:21:58 -08:00
Luke Hoban
b45b3ed543
Re-apply #5857 (#5893)
This re-applies the fix in 5857 to make credentials.json writes concurrency safe.

The original fix used `path.Dir` instead of `filepath.Dir` - which led to not placing the temp file in the same folder (and drive) as the renamed file target.  This led to errors on Windows environments where the working directory was on a different drive than the `~/.pulumi` directory.  The change to use `filepath.Dir` instead ensures that even on Windows, the true directory containing the credentials file is used for the temp file as well.

Fixes #3877.
2020-12-08 17:38:59 -08:00
Komal
62abd821e9
Update run-docs-gen to use v3 of create-pull-request (#5899) 2020-12-08 15:30:05 -08:00
Komal
999c6fbd33
[codegen/docs] - Improve resource doc titles (#5894) 2020-12-08 15:04:36 -08:00
Aylei
faebaa0dc5
[ciutil] Correct system name of Jenkins CI (#5891)
Signed-off-by: Aylei <rayingecho@gmail.com>
2020-12-08 18:36:31 +00:00
stack72
d804b7d99c Prepare for v2.15.4 release 2020-12-08 14:32:15 +00:00
stack72
4c4a4733e8 Fixing up the go deps as this was breaking the publish step 2020-12-08 14:30:21 +00:00
stack72
7393f80b43 DEBUG when trying to understand why master sdks are classed as dirty for dev builds 2020-12-08 13:20:46 +00:00
Paul Stack
4f5b3c8522
Ensure we have an import error before using in import path (#5884)
Without this, we can panic
2020-12-08 00:43:35 +00:00
Vivek Lakshmanan
f81a4d28a5
Merge pull request #5886 from pulumi/vl/WindowsBuild
Fix windows publish
2020-12-07 16:05:45 -08:00
Vivek Lakshmanan
3ec7dbeded Fix windows build 2020-12-07 15:58:30 -08:00
Vivek Lakshmanan
aba03b8594
Merge pull request #5874 from pulumi/vl/Windows
Shim python interpreter for windows if interpreter uses reparse points
2020-12-07 15:13:21 -08:00
Vivek Lakshmanan
4e144e666c Add changelog entry 2020-12-07 14:17:45 -08:00
Vivek Lakshmanan
3ea87776a0 Add copyright notice 2020-12-07 14:17:45 -08:00
Vivek Lakshmanan
77f2e0fa3f go mod 2020-12-07 14:17:45 -08:00
Vivek Lakshmanan
ed0d427958 Add a python shim script to work around https://github.com/golang/go/issues/42919 2020-12-07 14:17:45 -08:00
Vivek Lakshmanan
0aa4ba4d44 Check for python among execution aliases on Windows 2020-12-07 14:17:38 -08:00
Paul Stack
8396030578
Enable command dispatch workflow for dealing with PRs (#5851)
There are a few things happening here:

- Rename the command dispatch release events to be prefixed with trigger-
- Introduce a new command-dispatch event

  This new event listens for a trigger term in a comment e.g. /run-acceptance-tests

  This trigger term is *only* needed when the PR is from a fork! When the trigger term is posted
  then the run-build-and-acceptance-tests.yml event is fired

- run-build-and-acceptance-tests.yml

  If the user runs the code from a pulumi based branch, then the tests and builds will work as normal
  If this file is being run via respository_dispatch then it will be able to run the test and builds
  and also post a comment back to the PR with the link to the test run

It's important to say that PRs affecting the codegen and resource docs paths will only fire from a
pulumi based branch - there is currently no command dispatch events for these codegen and resource PRs!
2020-12-07 19:29:04 +00:00
stack72
890a81ac4f Prepare for v2.15.3 release 2020-12-07 18:34:46 +00:00
Luke Hoban
df8f01dba7
Revert #5857 (#5880)
Fixes #5879.
2020-12-07 10:06:41 -08:00
stack72
223f6501eb Prepare for v2.15.2 release 2020-12-07 12:48:25 +00:00
Vivek Lakshmanan
3377978a1d Use os.Lstat instead of os.Stat 2020-12-06 22:49:25 -08:00
Joe Duffy
a5c30f1547
Properly resize arrays when adding (#5872)
* Properly resize arrays when adding

The current logic attempts to update the array but, because
append may need to allocate a new array with adequate space,
the code can currently leave dest referring to the old,
under-sized array. The solution is to use the set(dest)
logic that already exists and is used for the IsNull case.

Added a test case that would fail before this fix and now passes.

This fixes pulumi/pulumi#5871.

* Add CHANGELOG entry
2020-12-06 21:23:50 +00:00
stack72
a70cb41731 Prepare for v2.15.1 release 2020-12-04 20:06:10 +00:00
Sean Fausett
15941d58d9
Bump Grpc NuGet packages to 2.34.0 (#5862)
* Bump Grpc NuGet packages to 2.34.0

https://github.com/grpc/grpc/releases/tag/v1.34.0

* Remove redundant package reference

Transitive via project reference.
2020-12-04 16:58:18 +01:00
Paul Stack
12dd0767ac
Ensure we can rotate pulumi passphrase secrets providers (#5865)
Fixes: #5452

When the user is requesting to change the secrets provider to a
passphrase provider, we now calculate that has been requested.

This means, we will prompt for a new passphrase for use in encrypting
the stack.

```
pulumi stack change-secrets-provider passphrase
Enter your passphrase to unlock config/secrets
    (set PULUMI_CONFIG_PASSPHRASE or PULUMI_CONFIG_PASSPHRASE_FILE to remember):
Enter your new passphrase to protect config/secrets:
Re-enter your new passphrase to confirm:
Migrating old configuration and state to new secrets provider
Enter your passphrase to unlock config/secrets
    (set PULUMI_CONFIG_PASSPHRASE or PULUMI_CONFIG_PASSPHRASE_FILE to remember):
```
2020-12-04 15:21:51 +00:00
Justin Van Patten
5ab051cd97
Implement GetRequiredPlugins for Python (#5787)
Implement GetRequiredPlugins for Python, which determines the plugins
required by the program.

Also, if the `virtualenv` runtime option is set, and the specified
virtual directory is missing or empty, automatically create it and
install dependencies into it.
2020-12-03 19:22:16 -08:00
Luke Hoban
9e955241fc
Make credentials.json file writes concurrency safe (#5857)
Running `pulumi` operations in parallel could occasionally result in truncating the `~/.pulumi/credentials.json` file and reading that truncated file from another process before the content could be written.

Instead, use `os.Rename` to atomically replace the file contents.

Concurrent `pulumi` operations could still compete for who gets to write the file first, and could lead to surprising results in some extreme cases.   But we should not see the corrupted file contents any longer.

Fixes #3877.
2020-12-03 15:07:55 -08:00
Justin Van Patten
260620430c
[codegen/(nodejs|python)] package/module registration with version info (#5839)
Generate ResourcePackage and ResourceModule implementations and
registrations. A ResourcePackage is generated for any module that
includes a provider resource (which should be the root module only), and
a ResourceModule is generated for any module that includes a resource.

And add version info to Python registrations.
2020-12-02 13:45:25 -08:00
stack72
911eec4d55 Prepare for v2.15.0 release 2020-12-02 20:15:29 +00:00
Justin Van Patten
ea1b962999
Revert "Enable resource reference feature by default" (#5850)
To de-risk the Pulumi v2.15.0 release, temporarily revert 679d40950f. Use of resource references will require `PULUMI_EXPERIMENTAL_RESOURCE_REFERENCES=1` to be set until the feature has been enabled by default.
2020-12-02 08:39:21 -08:00