Skip to content

Add better-integ-test buildspec #1019

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

Merged
merged 1 commit into from
Jan 17, 2019
Merged

Add better-integ-test buildspec #1019

merged 1 commit into from
Jan 17, 2019

Conversation

zoewangg
Copy link
Contributor

@zoewangg zoewangg commented Jan 17, 2019

Description

Add better-integ-test buildspec to only trigger integ tests that are related to the changed files so that we can make integ tests as part of PR process.

  • Changes in core, codegen -> minimal required integ tests (s3, dynamodb, sqs). I chose those three services because they can cover xml, json, query protocols respectively. This is open to discussion.

  • Changes in netty-nio-client -> kinesis, s3, netty-nio-client

  • Changes in url-connection-client -> url-connection-client

  • Changes in apache-client -> apache-client, s3

  • Changes in individual service changes -> integ test in that service module

We can add more complex logic in the future as needed.

Testing

Tested it using CodeBuild and verified the core change in this PR I made triggered the minimal required integ tests. The job took 8 mins.

License

  • I confirm that this pull request can be released under the Apache 2 license

@codecov-io
Copy link

codecov-io commented Jan 17, 2019

Codecov Report

Merging #1019 into master will increase coverage by <.01%.
The diff coverage is n/a.

Impacted file tree graph

@@             Coverage Diff              @@
##             master    #1019      +/-   ##
============================================
+ Coverage     55.58%   55.59%   +<.01%     
- Complexity     4566     4567       +1     
============================================
  Files           810      810              
  Lines         27813    27813              
  Branches       2241     2241              
============================================
+ Hits          15461    15462       +1     
  Misses        11638    11638              
+ Partials        714      713       -1
Impacted Files Coverage Δ Complexity Δ
...are/amazon/awssdk/core/internal/util/Mimetype.java 80.48% <0%> (+2.43%) 15% <0%> (+1%) ⬆️

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 938a73b...ab8013e. Read the comment docs.

Copy link
Contributor

@spfink spfink left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Might be nice to include Kinesis to cover some of the H2 path on core or http client changes.

"""

# git diff HEAD~ HEAD --name-only
ret = Popen(["git", "diff", "HEAD~", "HEAD", "--name-only"], stdout=PIPE)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: can be git diff HEAD^ --name-only

return minimum_modules_to_test
elif top_directory== "services":
return path[1]

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There's no else clause so this can return None. Is that expected?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, this is expected. We don't need to run integ tests for changes in other modules such as build-tools

module = get_modules(d)
if isinstance(module, list):
modules.update(module)
elif module: modules.add(module)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: weird formatting here


if modules:
run_tests(modules)
else: print("No modules configured to run. Skipping integ tests")
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nit: weird formatting

@zoewangg zoewangg force-pushed the zoewang-betterIntegTest branch from 77c73f8 to 2bb5f00 Compare January 17, 2019 22:32
@zoewangg zoewangg force-pushed the zoewang-betterIntegTest branch from 2bb5f00 to ab8013e Compare January 17, 2019 22:51
@zoewangg zoewangg merged commit 3886bdf into master Jan 17, 2019
@zoewangg zoewangg deleted the zoewang-betterIntegTest branch January 17, 2019 23:15
aws-sdk-java-automation added a commit that referenced this pull request Nov 2, 2020
…c48d712a6

Pull request: release <- staging/aecc1551-e42a-4025-aeb3-7ebc48d712a6
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.

4 participants