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

Integration test for multi-activity agreement #350

Merged
merged 4 commits into from
Apr 27, 2021

Conversation

azawlocki
Copy link
Contributor

@azawlocki azawlocki commented Apr 23, 2021

This PR contains an integration test case that uses goth. It tests that multiple activities can be run within the same agreement.

Other changes:

  1. Option to override goth configuration values via command line (ported @zakaprov commit golemfactory/yagna@66b275c from yagna); use it to force yagna version to 0.6.x.
  2. Extend batch timeout from 2 to 10 minutes in blender.py, to take into account the time needed to download the VM image.

@azawlocki azawlocki requested review from a team and filipgolem April 23, 2021 15:33
@azawlocki azawlocki self-assigned this Apr 23, 2021
@azawlocki azawlocki requested a review from kmazurek April 27, 2021 08:13
# may require more time for the first task if it needs to download a VM image
# first. Once downloaded, the VM image will be cached and other tasks that use
# that image will be computed faster.
yield ctx.commit(timeout=timedelta(minutes=10))
Copy link
Contributor

Choose a reason for hiding this comment

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

The requestor will have to wait 10 minutes if any provider is broken (there are currently providers that are signing agreements and then doing nothing).

Copy link
Contributor Author

Choose a reason for hiding this comment

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

True. But the problem with the timeout being too low is recurring and sometimes affects all providers (for example it happened after 0.6.3 yagna release, when many providers needed to refresh their VM images and were unable to do so for a long time since the activities were interrupted by our blender.py requestor due to 2 minute timeouts).

@@ -105,7 +105,7 @@ ya-market = "0.1.0"
[tool.poe.tasks]
test = "pytest --cov=yapapi --ignore tests/goth"
goth-assets = "python -m goth create-assets tests/goth/assets"
goth-tests = "pytest -svx tests/goth"
goth-tests = "pytest -svx tests/goth --config-override docker-compose.build-environment.release-tag=0.6."
Copy link
Contributor

Choose a reason for hiding this comment

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

Why is this parameter used?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

It's used to enforce using yagna release 0.6.x for the tests.

@azawlocki azawlocki merged commit 9396f94 into master Apr 27, 2021
@azawlocki azawlocki deleted the az/test-multiactivity-agreement branch April 27, 2021 15:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants