Skip to content
This repository has been archived by the owner on Sep 21, 2021. It is now read-only.

Docker Swarm Implementation #982

Merged
merged 37 commits into from
Jun 10, 2019
Merged

Docker Swarm Implementation #982

merged 37 commits into from
Jun 10, 2019

Conversation

diemol
Copy link
Contributor

@diemol diemol commented Jun 2, 2019

Comes from #907, thanks to @yosserO and @tstern
Running all CI

yosserO and others added 30 commits June 2, 2019 17:05
@diemol diemol mentioned this pull request Jun 2, 2019
9 tasks
@codecov-io
Copy link

Codecov Report

Merging #982 into master will decrease coverage by 4.01%.
The diff coverage is 3.95%.

@@             Coverage Diff             @@
##             master    #982      +/-   ##
===========================================
- Coverage     58.51%   54.5%   -4.02%     
- Complexity      642     646       +4     
===========================================
  Files            54      56       +2     
  Lines          4127    4455     +328     
  Branches        370     413      +43     
===========================================
+ Hits           2415    2428      +13     
- Misses         1493    1804     +311     
- Partials        219     223       +4

@diemol
Copy link
Contributor Author

diemol commented Jun 2, 2019

@yosserO @tstern
Things look good to me, I am just missing documentation for end users. What we can do is to merge this to master, release the feature as beta, and in a subsequent PR you could add documentation.

I'll also appreciatte if you can hangout on the #zalenium channel in the Selenium Slack, in case people have questions.

What do you think?

@yosserO
Copy link
Contributor

yosserO commented Jun 3, 2019

Hi Diego,
Thank you for reviewing the PR.
We will create a PR for the documentation next week. We are already in the zalenium and Selenium Slack Channels. If there are questions related to docker swarm, please just mention us in the comment so we can get a notification.

@trinhpham
Copy link

Really eager to be one of the first users :)
My question is: when and where can I get the beta build?

Copy link

@trinhpham trinhpham left a comment

Choose a reason for hiding this comment

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

The approach of creating new service when need to create new container is not as good as pre-defining the service then update it scaling.
Refer: https://docs.docker.com/engine/swarm/swarm-tutorial/scale-service/

final ServiceSpec serviceSpec = buildServiceSpec(taskSpec, nodePort, noVncPort);

try {
ServiceCreateResponse service = SwarmUtilities.createService(serviceSpec);

Choose a reason for hiding this comment

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

I think it should be better if we pre-define the worker services, then update theirs scaling like https://docs.docker.com/engine/swarm/swarm-tutorial/scale-service/

Copy link
Contributor

@yosserO yosserO Jun 7, 2019

Choose a reason for hiding this comment

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

Hi @trinhpham ,

Service scaling was our first Approach for creating and deleting Browser tasks.

The problem was: When scaling down the number of replicas, it doesn't took in account which task is not active. It killed containers that were actually running tests and made the tests fail. We found no way to specify the task to shutdown explicitly when scaling down the number of replicas.

moby/swarmkit#2264

If we scale the number of replicas up instead of creating new services. We will have to scale them down when the tests end. And this will lead to a wrong behaviour.

Choose a reason for hiding this comment

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

Got your idea. Thanks for explaining it to me :)

@diemol
Copy link
Contributor Author

diemol commented Jun 10, 2019

Ok, let's merge this and do a release!

@diemol diemol merged commit 48567d2 into master Jun 10, 2019
@diemol diemol deleted the pr-907-swarm branch June 10, 2019 17:48
@yosserO
Copy link
Contributor

yosserO commented Jun 13, 2019

@trinhpham

Really eager to be one of the first users :)
My question is: when and where can I get the beta build?

We created a pull request to add documentation: #984

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants