Skip to content

Comments

[BEAM-3906] Automate Validation Aganist Python Wheel#4943

Merged
aaltay merged 1 commit intoapache:masterfrom
yifanzou:BEAM-3906/Automate_Validation_Against_Python_Wheel
Aug 1, 2018
Merged

[BEAM-3906] Automate Validation Aganist Python Wheel#4943
aaltay merged 1 commit intoapache:masterfrom
yifanzou:BEAM-3906/Automate_Validation_Against_Python_Wheel

Conversation

@yifanzou
Copy link
Contributor

@yifanzou yifanzou commented Mar 23, 2018

DESCRIPTION HERE

In the 2.4.0 release, we have added Wheel files for Python SDK. Changes in this pull request aim to automate the Quickstarts and MobileGaming examples to make an easy release validation process.

General workflow:

  1. download & validate sha512 and gpg keys
  2. setup virtualenv & install python sdk (tar)
  3. run wordcount and streaming wordcount on core runners (direct, dataflow)
  4. run userscore, leader_board and hourly_team_score on core runnres
  5. repeat from the step 2 to validate wheel versions.

Major changes:

  1. change herachy of python automation shell scripts, release/src/main/groovy -> release/src/main/python-release
  2. Functionalize each steps of quickstart and mobile-gaming validation in purpose of reusing code for wheel validations.
  3. Add validations for wheel files.

r: @aaltay

Follow this checklist to help us incorporate your contribution quickly and easily:

  • Make sure there is a JIRA issue filed for the change (usually before you start working on it). Trivial changes like typos do not require a JIRA issue. Your pull request should address just this issue, without pulling in other changes.
  • Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue.
  • Write a pull request description that is detailed enough to understand:
    • What the pull request does
    • Why it does it
    • How it does it
    • Why this approach
  • Each commit in the pull request should have a meaningful subject line and body.
  • Run mvn clean verify to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
  • If this contribution is large, please file an Apache Individual Contributor License Agreement.

@yifanzou yifanzou force-pushed the BEAM-3906/Automate_Validation_Against_Python_Wheel branch 15 times, most recently from e5347c7 to 68dfefc Compare March 27, 2018 05:28
@yifanzou
Copy link
Contributor Author

+R: @aaltay
Major changes:
1. change directory of python automation shell scripts, release/src/main/groovy -> release/src/main/python-release
2. Functionalize each steps of quickstart and mobile-gaming validation in purpose of reusing code for wheel validations.
3. Add validations for wheel files.

@aaltay
Copy link
Member

aaltay commented Mar 27, 2018

@yifanzou My understanding is that this PR is currently blocked on https://issues.apache.org/jira/browse/BEAM-3933. Is this correct?

@yifanzou
Copy link
Contributor Author

@aaltay yes.

@yifanzou yifanzou force-pushed the BEAM-3906/Automate_Validation_Against_Python_Wheel branch from 68dfefc to aa6108f Compare April 19, 2018 04:59
@yifanzou yifanzou force-pushed the BEAM-3906/Automate_Validation_Against_Python_Wheel branch 10 times, most recently from f3a90f6 to 7cfa5ed Compare May 15, 2018 16:13
@tvalentyn
Copy link
Contributor

https://issues.apache.org/jira/browse/BEAM-3933 is resolved. Why is this blocked until 2.5.0 release? Can this PR be used for 2.5.0 validation?

@yifanzou yifanzou force-pushed the BEAM-3906/Automate_Validation_Against_Python_Wheel branch 3 times, most recently from e4168ac to 3adbb7d Compare June 26, 2018 00:23
@swegner
Copy link
Contributor

swegner commented Jun 26, 2018

FYI, #5757 re-introduces path-filtered triggering for pre-commits. Please merge in master before running Seed Job.

@yifanzou
Copy link
Contributor Author

Run Python ReleaseCandidate

@yifanzou yifanzou force-pushed the BEAM-3906/Automate_Validation_Against_Python_Wheel branch from 3adbb7d to cb9d278 Compare June 26, 2018 20:31
@yifanzou
Copy link
Contributor Author

Run Seed Job

@yifanzou
Copy link
Contributor Author

@aaltay The blocker bug was resolved and we used this PR in 2.5 RC verification. Please review it and feel free to put comments.

Overview of this PR:
In the 2.4.0 release, we have added Wheel files for Python SDK. Changes in this pull request aim to automate the Quickstarts and MobileGaming examples to make an easy release validation process.

General workflow:
download & validate sha512 and gpg keys
setup virtualenv & install python sdk (tar)
run wordcount and streaming wordcount on core runners (direct, dataflow)
run userscore, leader_board and hourly_team_score on core runnres
repeat from the step 2 to validate wheel versions.

Major changes:
change directory hierarchy of python automation shell scripts, release/src/main/groovy -> release/src/main/python-release
Functionalize each steps of quickstart and mobile-gaming validation in purpose of reusing code for wheel validations.
Add validations for wheel files.

@yifanzou yifanzou force-pushed the BEAM-3906/Automate_Validation_Against_Python_Wheel branch from cb9d278 to ab199ca Compare July 13, 2018 18:27
@yifanzou
Copy link
Contributor Author

@aaltay PTAL. Thanks~

@echauchot echauchot removed their request for review July 16, 2018 07:55
@lgajowy lgajowy removed their request for review July 16, 2018 08:47
Copy link
Member

@aaltay aaltay left a comment

Choose a reason for hiding this comment

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

Overview looks good.

I would like @boyuanzz to make a pass first because she has been recently doing related work.

--dataset=$DATASET \
--input=gs://$BUCKET_NAME/5000_gaming_data.csv

verify_user_score "direct"
Copy link
Member

Choose a reason for hiding this comment

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

What does this line do? (Similar comment for a few other calls inside functions to the wrapping function.)

Copy link
Contributor Author

@yifanzou yifanzou Jul 26, 2018

Choose a reason for hiding this comment

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

These lines call the helper functions in the python_release_automation_utils.sh to verify results of example pipelines (e.g verifying whether output files were created properly, checking if expected keywords show in the results, etc).

Copy link
Member

Choose a reason for hiding this comment

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

Got it. For future PRs try be consistent in naming. (E.g verify_userscore_direct vs verify_user_score. Use either userscore or user_score consistently.)

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Thanks. I'll pay attention to it.

# Python RC configurations
VERSION=$(get_version)
RC_STAGING_URL="https://dist.apache.org/repos/dist/dev/beam/$VERSION/"
BEAM_PYTHON_SDK_ZIP="apache-beam-$VERSION-source-release.zip"
Copy link
Contributor

Choose a reason for hiding this comment

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

For BEAM_PYTHON_SDK_ZIP, you can use apache-beam-$VERSION.zip, like 2.5.0

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@boyuanzz done. PTAL, thanks~

@yifanzou yifanzou force-pushed the BEAM-3906/Automate_Validation_Against_Python_Wheel branch 2 times, most recently from 621cfc7 to ee9bc2c Compare July 26, 2018 19:11
@boyuanzz
Copy link
Contributor

LGTM. Thanks for automating these!

@yifanzou
Copy link
Contributor Author

@aaltay @boyuanzz Any other comments on this PR?

Copy link
Contributor

@boyuanzz boyuanzz left a comment

Choose a reason for hiding this comment

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

LGTM, thank you Yifan.

@yifanzou yifanzou force-pushed the BEAM-3906/Automate_Validation_Against_Python_Wheel branch 2 times, most recently from 901cdcf to 73965f4 Compare August 1, 2018 17:25
@yifanzou yifanzou force-pushed the BEAM-3906/Automate_Validation_Against_Python_Wheel branch from 73965f4 to 9e52923 Compare August 1, 2018 17:35
@yifanzou
Copy link
Contributor Author

yifanzou commented Aug 1, 2018

Run Seed Job

@yifanzou
Copy link
Contributor Author

yifanzou commented Aug 1, 2018

Run Python ReleaseCandidate

@aaltay aaltay merged commit de38a09 into apache:master Aug 1, 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