-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
Partial updates on Ansible, Puppet and Chef #373
Conversation
I am a robot that works on MagicModules PRs! I built this PR into one or more PRs on other repositories, and when those are closed, this PR will also be merged and closed. |
I am (still) a robot that works on MagicModules PRs! I just wanted to let you know that your changes (as of commit 1497538) have been included in your existing downstream PRs. |
Is there any easy way to see the generated code for a PR? |
After the magician runs, it'll give a list of PRs with the generated code. If you look up a couple comments, you'll see the Magician message with a link to (link redacted) |
I added in Puppet support for partial updates too. I started on Chef, but it seems like it'll be a lot trickier because we don't have an easy way to do property diffs. |
Here's an example of a Terraform test that tests update: https://github.com/terraform-providers/terraform-provider-google/blob/master/google/resource_compute_disk_test.go#L247. The Terraform libraries give us the ability to have multiple |
16367ce
to
45c1417
Compare
@@ -0,0 +1,23 @@ | |||
<% update_props = properties_by_custom_update(object.all_user_properties) -%> |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'd like to start putting the shared Puppet+Chef code inside a puppetchef
folder to clean up the templates/ directory. Any objections?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
SGTM.
6dee6ce
to
00260e5
Compare
api/type.rb
Outdated
# Represents a fingerprint. A fingerprint is an output-only | ||
# field used for optimistic locking during updates. | ||
class Fingerprint < String | ||
class Fingerprint < FetchedExternal |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hm, what does that do to the Terraform output code?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This shouldn't do anything.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Great!
0053480
to
d470196
Compare
I am (still) a robot that works on MagicModules PRs! I just wanted to let you know that your changes (as of commit ee93eca) have been included in your existing downstream PRs. |
49115f2
to
1633e6e
Compare
I am a robot that works on MagicModules PRs! I built this PR into one or more PRs on other repositories, and when those are closed, this PR will also be merged and closed. |
3da41a3
to
413c298
Compare
I am (still) a robot that works on MagicModules PRs! I just wanted to let you know that your changes (as of commit 5045044) have been included in your existing downstream PRs. |
Tracked submodules are build/puppet/_bundle build/puppet/auth build/puppet/bigquery build/puppet/compute build/puppet/sql build/puppet/storage build/puppet/spanner build/puppet/container build/puppet/dns build/puppet/pubsub build/puppet/resourcemanager build/chef/_bundle build/chef/auth build/chef/compute build/chef/sql build/chef/storage build/chef/spanner build/chef/container build/chef/dns build/chef/iam build/terraform build/ansible.
Woop woop! This is huge. :) |
This has been too long coming.
How does Terraform do integration tests on updates? I can do a manual test to verify that everything doesn't crash + burn, but I'd like something more automated in the future.
[all]
Partial updates on A/C/P
[terraform]
[puppet]
Partial updates
[puppet-compute]
[puppet-container]
[puppet-dns]
[puppet-logging]
[puppet-pubsub]
[puppet-resourcemanager]
[puppet-sql]
[puppet-storage]
[chef]
Partial updates
[chef-compute]
[chef-container]
[chef-dns]
[chef-logging]
[chef-sql]
[chef-storage]
[ansible]
Partial updates