Auto-generate low/high level AWS wrappers#121
Merged
Conversation
mattBrzezinski
commented
Mar 30, 2020
| # Returns | ||
| - `latest_versions::Dict[]`: List of the latest AWS Service definitions | ||
| """ | ||
| function _filter_latest_service_version(services::Array) |
Member
Author
There was a problem hiding this comment.
I feel like this could be done better, but I spent some time on it but wasn't able to use list comprehension for this and decided to make it more explicit.
Member
There was a problem hiding this comment.
It's pretty common to drop the type assertion and just expect the input is iterable
Member
Author
|
Some of the docstrings need to be updated, especially for the input/output types, I'll be re-working these. |
nicoleepp
reviewed
Mar 31, 2020
omus
reviewed
Apr 2, 2020
| $(join(service_definitions, "\n")) | ||
|
|
||
| end | ||
| """ |
Member
There was a problem hiding this comment.
May be easier to read if you write this like this:
template = """
# This file is auto-generated by AWSMetadata.jl
module AWSServices
include("AWS.jl")
$(join(service_definitions, "\n"))
end
"""| # Returns | ||
| - `latest_versions::Dict[]`: List of the latest AWS Service definitions | ||
| """ | ||
| function _filter_latest_service_version(services::Array) |
Member
There was a problem hiding this comment.
It's pretty common to drop the type assertion and just expect the input is iterable
mattBrzezinski
force-pushed
the
MB/service-generation
branch
from
April 2, 2020 17:23
a3c4699 to
169254e
Compare
- Removed dependency on DataStructures in favour of OrderedCollections - Moved `src/metadata.json` to `deps/metadata.json` - Added comment stating that files in `src/services/*` are auto-generated
mattBrzezinski
force-pushed
the
MB/service-generation
branch
from
April 2, 2020 17:24
169254e to
d6166d1
Compare
omus
reviewed
Apr 2, 2020
omus
reviewed
Apr 2, 2020
nicoleepp
reviewed
Apr 2, 2020
mattBrzezinski
force-pushed
the
MB/service-generation
branch
from
April 2, 2020 21:30
fe3cd9f to
d04d976
Compare
mattBrzezinski
force-pushed
the
MB/service-generation
branch
from
April 2, 2020 21:39
d04d976 to
f1292ae
Compare
omus
reviewed
Apr 3, 2020
omus
left a comment
Member
There was a problem hiding this comment.
Overall looking good. Did one more pass and found some minor things.
omus
approved these changes
Apr 3, 2020
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Overview
This merge request generates the low and high level wrappers for AWS Services in Julia, and is the initial MR for the new state of AWS in Julia. The design document for this can be found at, mattBrzezinski/JuliaCloud-AWS-State.
Note: This is targeting a feature branch
v1where we will build up the new version before releasing it.Components
src/AWS.jl:AWSCore.jlcurrently)test/AWS.jlfor a use case)src/AWSMetadata.jl:src/AWSMetadataUtilities.jl:AWSMetadata.jlsrc/AWSServices.jl:services/*:metadata.json:.normal.jsonfilename, sha hash, and version for knowing when to update or create new wrappersHow to review this merge request
The best way to review this merge request would be to look at each commit individually. Skip commit 2af1ec824 as it is only auto-generated files.
Next steps towards a better AWS world
We need to port over AWSCredentials.jl, AWSConfig.jl, and begin to re-write the functions which make the requests themselves (along with utilities for them):