Skip to content
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

Recover lost typings #2

Closed
joeduffy opened this issue Jul 21, 2017 · 6 comments
Closed

Recover lost typings #2

joeduffy opened this issue Jul 21, 2017 · 6 comments
Assignees

Comments

@joeduffy
Copy link
Member

After switching to the Terraform provider, we lost a fair number of strong typing niceties. Once we pop up for air, we should attempt to recover as many of them as possible. See the commit pulumi/pulumi@5eb8edc for a good reference of what it used to look like. Essentially any enums in that file are missing, and I'm sure many of the "capability-like" views have been lost in favor of weak IDs.

@joeduffy
Copy link
Member Author

joeduffy commented Aug 4, 2017

We should probably do this soon to avoid heavy churn in all consumers later on.

@ericrudder ericrudder added this to the 0.5 milestone Aug 4, 2017
@joeduffy joeduffy removed this from the 0.5 milestone Aug 19, 2017
@lukehoban
Copy link
Contributor

lukehoban commented Oct 17, 2017

We've stayed in a middle ground here where most stuff doesn't add strongly typed wrappers, but a few things do.

I actually wonder whether we want to just go back to not trying to project strong types onto the raw projections. That will simplify a lot of these cases, and give us (and users) a lot more flexibility. It's not quite as pretty, but in practice as we've built larger things (my work on containers, @mmdriley 's work on porting our CFN template, and @joeduffy + @mmdriley work on LM code), this hasn't felt like a cost (and indeed has helped ensure we don't hit too many roadblocks).

Does it make sense to go back to a simple(r) project of Terraform here, and lave strong typing for folks who want to build components and layers on top?

See also pulumi/pulumi#83.

@joeduffy
Copy link
Member Author

Let's decide what to do here as part of #130.

@joeduffy joeduffy added this to the 0.11 milestone Feb 12, 2018
@lukehoban
Copy link
Contributor

We have a plan for how to approach this as part of https://github.com/pulumi/design/blob/master/meetings/2018/2018-02-20.md#pulumiaws. Given that we can add this strong typing without breaking changes - we will take these on a more case-by-case basis.

@lukehoban
Copy link
Contributor

At this point, this is tracking finding some way to proactively identify and map strongly-typed proeprty references for AWS and TF providers generally.

Frankly, we've heard very little user feedback on this, and through many rounds of discussion have come up with no great ideas for how to get to "great" coverage on strongly typed references - so our investments have been very incremental, leading to unpredictable ability to pass strongly typed references. At this point, we really need to proposal for how to get to (and stay at) 90%+ coverage on strongly typed references or I would suggest we should not be trying to drive this further - as being at 50% coverage is likely worse than being at ~0% in terms of API consistency.

@lukehoban lukehoban modified the milestones: 0.20, 0.22 Dec 9, 2018
@jen20 jen20 removed this from the 0.22 milestone Mar 22, 2019
@lukehoban
Copy link
Contributor

I'm going to close this out - we've done a lot of work in and around this - and we'll continue to do more. But we have no near-term plan to do anything radically different in a structured way. And we broadly are adding these as incremental additions that preserve compatibility.

corymhall added a commit that referenced this issue Jul 11, 2024
# This is the 1st commit message:

Fix import resources with provider default tags

We have special logic around applying default provider tags to
resources. This logic only applied to the `Check` call which means it
was not applied when you were importing resources. This PR extends that
logic to also run during the `Read` call.

fix #4030, fix 4080

# This is the commit message #2:

skip test

# This is the commit message #3:

fixing test

# This is the commit message #4:

Adding more tests

# This is the commit message #5:

Upgrade pulumi-terraform-bridge to v3.86.0 (#4160)

This PR was generated via `$ upgrade-provider pulumi/pulumi-aws
--kind=bridge --pr-reviewers=guineveresaenger`.

Fixes #4091
Fixes #4137

---

- Upgrading pulumi-terraform-bridge from v3.85.0 to v3.86.0.
- Upgrading pulumi-terraform-bridge/pf from v0.38.0 to v0.39.0.
# This is the commit message #6:

chore: run upstream provider-lint (#4120)

This adds a step for running the upstream `provider-lint` make target.

As part of this I had to fix some of the patches which violated some
lint rules.

**0009-Add-ECR-credentials_data_source.patch**
- `ForceNew` does not apply to data sources

**0032-DisableTagSchemaCheck-for-PF-provider.patch**
- Schema have to have a `Type`
- Also needed to add a ignore for `S013` which forces `Computed`,
  `Optional` or `Required` to be set. Looks like it can't recognize the
  `tagsComputed` var

**0034-Fail-fast-when-PF-resources-are-dropped.patch**
- Added a lint ignore for a rule which doesn't allow panics

**0050-Normalize-retentionDays-in-aws_controltower_landing_.patch**
- This test doesn't actually need a region or partition so replacing
  with a placeholder

closes #4110
# This is the commit message #7:

fix: CVE-2024-24791 (#4175)

Fixes #4163

Upgrades minimally required Go versions to those unaffected by
CVE-2024-24791.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants