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

Catchup/20180312 #19

Merged
merged 49 commits into from
Mar 13, 2018
Merged

Conversation

nelsonjr
Copy link
Contributor

Syncing w/ changes from development downstream.

@nelsonjr nelsonjr requested a review from nat-henderson March 12, 2018 21:58
danawillow and others added 27 commits March 12, 2018 15:10
Change-Id: I50bdf45c002ffedfee0a521d0a308d7450dfdbf8
Ansible tasks are meant to represent an action (create an object, update it,
delete it). Virtual Resources do not alter infrastructure, just verify it.
We've decided that we should not create virtual objects at this time.

Change-Id: I0a0d6926d7184863155b441787843564a46abe4d
Ansible is setup to return the both the output only values, as well as the
inputted values. The documentation should reflect this.

Change-Id: I109c204adb3e74b34f5197c5bcb371c817913ae4
Only properties should be used to compare user-state to cloud-state. This
logic in Puppet is stored under the fetch_to_hash function, where a new
dictionary is created with only the requested parameters.

This is the Ansible equivalent.

Change-Id: I457890bc2bb7d18f6fadff1dba8322f98677050b
Change-Id: I2397a746c71b75737162af40c8ed23608679da92
Change-Id: Iafbdc56c8377b073218f486336f0a78170af6ca5
Change-Id: I047ca7c930d98357268d0dbf87ffc22bbbe0c7b2
Supports three different id formats.
Also generates the documentation on how to use the import feature.

Change-Id: Ia8e8c18b57e05a0bac5de4a58921e94c624db070
Change-Id: If51b48b1100eb24eecd840f2bf5a9f6fc6d88601
Change-Id: Ie40969abd5293b43c7651c11a1de9d5d52f124b1
Change-Id: Ib11beab34cdfac21058e82f9aca6a7ff309cab73
Change-Id: I02deb08f075e9784ec1a2f73d1b0f23d35b3e978
Change-Id: If7cf12d5f3aca488d10bf95ad404ec16fb2b90c9
Change-Id: Iea8e34d01077ac095eee21cac585dc0fa9b6f708
Change-Id: I759b5653ea97dc94a8abc3dc6fdb4f57676c3138
All Virtual objects that are ResourceRefs will not be treated as traditional
ResourceRefs. Instead, a lookup function will be used. Lookup functions take
in the name of a specific resource ('region', 'us-west1'), verify the object's
existence and then return a specific value. It may be the default value or a
manually specified value.

Change-Id: Ib8cc4496df955e6085359f4516cb0ad98f37ac06
Change-Id: I8eed0a68a2b4bf530c50c68ddbfadf019c4b8c57
Adding scopes manually into example files is bad duplication.

Change-Id: Ie178de069616001951c766b0455a1885cdf859dc
Each paragraph should be its own bullet on the YAML descriptions

Change-Id: Ic114eee3494163d331295615414beb0dfd22f704
NestedObjects should have their nested properties documented. This is a refactor
of all YAML building logic into a separate Ruby module. The new module will
build out a given YAML property block (according to DOCUMENTION/RETURNS) and
then recurse on NestedObjects as necessary.

Change-Id: Iaeee1c8cbe9a7d22cf48ffffc0f0b3e285038fd1
Change-Id: I3cb90812234ec8789a4951fa803419c07ac42b93
Also fixing a bug in effective_properties that deleted
original properties instead of filtering them.

This change causes no side effects on generated code based
on Terraform submodule at origin/master.

Change-Id: Ie5e5862570fb443c2983513ed86b544d02e5c0a7
Change-Id: I5d1ed8c4009d2ec742099508fd938bd8d443729f
This change affects extra empty lines in generated
Terraform module.

Change-Id: I75a410b2ec8e25f095e1dd1c1e703e3768d5b923
All input validation is handled by the AnsibleModule class (subclassed by
GcpModule for gcp_* modules). All AnsibleModule generation logic has been
moved to a separate file. This adds the creation of validation code for
NestedObjects and Arrays of arbitarty depth (including Arrays of NestedObjects)

Change-Id: I3207784bc27ad6d516f02214efafb02afea03201
Change-Id: I26694e8e05e128152f3232da7591517fd2949c3f
Change-Id: I37aa52d87580184cc9fbf48c6ad1edd6785e2c88
rambleraptor and others added 22 commits March 12, 2018 15:10
…ry depth)

This ResourceRef system supports NestedObjects + Arrays.

The parameters of the module need to be changed in place to allow the HTTP
requests to work. Each original ResourceRef parameter is a dictionary,
representing the referenced object. That dictionary should be overriden
by the imported value.

The set_value_for_resource function goes through a path and overrides the value.
The resourceref_handlers function builds out the set_value_for_resource
calls and generates the paths.

Change-Id: I4bee4068fbb6e9753d94afed7a81e8ad3ab105d2
Change-Id: I4b73c37bcfd3c315146785cb7f968ce757833a1d
Change-Id: I9e0a0800edfa5a3cae00329c3e435014dfce76c3
Change-Id: I16b5e6f878f2967367914180facad7be2d9477c9
Change-Id: Id8f47df66edb3aae2574a529be54cb11edc85658
Change-Id: Ia5f297e7831ac166b05686ab57a703d9b8a6d143
Change-Id: I094d3cb07e0474484217b4d3ca8c6653091c290b
Change-Id: I732c97f3fe8168a62152eb8292e46b12a1aa9735
Change-Id: Ic97df86ecb7c57b6a692d14340b81763318d0fe7
Change-Id: Id67614b705505b4c3b27a9f8dca6c05b66509f15
Change-Id: Iab3a25f4d306c39ddb92f1d1ee4ec795002919d9
Change-Id: Ib0673029c8a7926d74a18f8895cae7aa9e913e35
Change-Id: I15fdc0ee4baba6d37d3f8c4311bfc75fafcb3a5a
Change-Id: I1e07e90f40bd60fd0bfb9fcda7422b34aa193248
Also support DiffSuppressFunc and Validation for nested properties.

Change-Id: I508955d4e67903b9a3c212dee0a1cbdc27b28d11
Some of the GCP properties don't have the most intuitive or human-readable
names. Ansible, in particular, wanted some of the properties to have more
readable names.

This commit adds Ansible support for using these aliases. They will be defined
in the config on a per-object basis.

Change-Id: I214c64f34c8991f4cc0365cf5b017ef05be9733d
Change-Id: I293210d6de4606e82a29f0bfe5206adb2b1ded87
Change-Id: Iecaa3444834380a3bbe2ee87d792bfea19de8059
Change-Id: If52204af527d796e99c642e0366fc1f6cdfdbb5d
Change-Id: Ia707010a216a3eb0b6e34b2f8a02f74b58166989
Change-Id: I8d4b9dee1fb1eb329ec6f51e165fad099804bfe3
Change-Id: Id269151a245f71d7c3f38fa3b4af4848251bd43d
@nelsonjr nelsonjr merged commit a244664 into GoogleCloudPlatform:master Mar 13, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants