Skip to content
This repository was archived by the owner on Feb 25, 2025. It is now read-only.

Use container and GKE to accelerate build #5897

Merged
merged 3 commits into from
Jul 30, 2018
Merged

Conversation

liyuqian
Copy link
Contributor

@liyuqian liyuqian commented Jul 28, 2018

This reduces the build time from 5 minutes to 3 minutes as we no longer need to cold start a GCE instance.

Moreover, we can now compile the host engine using this container.

@liyuqian liyuqian force-pushed the container branch 2 times, most recently from 5726338 to 61c9f22 Compare July 28, 2018 04:52
@liyuqian liyuqian force-pushed the container branch 5 times, most recently from ddecd57 to 1165628 Compare July 28, 2018 16:44
.cirrus.yml Outdated
memory: 32Gb
disk: 60
namespace: default
cpu: 16

Choose a reason for hiding this comment

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

if your build-16-cluster cluster consists of 16 cores VMs then you can't use all 16 cores. There are some system pods are running. You probably want to change it to 14.

.cirrus.yml Outdated
zone: us-central1-a
namespace: default
cpu: 14 # can't use all 16-cores; system pods needs cores too
memory: 60Gb

Choose a reason for hiding this comment

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

Forgot to mention that the same applies for memory. you can't use all of n1-standard-16's memory.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Thank you @fkorotkov ! That solves the problem.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

One more question @fkorotkov : I recently updated the container image and expect Cirrus to pickup the new image by checking the digest. But it seems that Cirrus won't update the image unless that I change the image name or tag?

Choose a reason for hiding this comment

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

Yeah. You kubernetes node already had the image with 0.1 tag. Use 'latest' tag so it will always try to pull it.

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 seems that I have to create a 'latest' tag in order to use it. Is this a special tag that Cirrus will always try to pull it if the digest is different, instead of using the image with the same name?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@fkorotkov it seems that Cirrus won't pull the latest 'latest' tag image if I updated it.

Choose a reason for hiding this comment

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

This tag affect which pull policy will be picked for a Kubernetes Job that represents the task.

By deafuult it's IfNotPresented which means Kunernetes won't pull an image of a particular tag is already pulled. latest tag will set the policy to Always which should always check for an updated image.

@liyuqian liyuqian force-pushed the container branch 12 times, most recently from 48ac7ff to ce221cd Compare July 30, 2018 17:22
@liyuqian liyuqian changed the title [wip] Try container Use container and GKE to accelerate build Jul 30, 2018
@liyuqian liyuqian requested a review from gspencergoog July 30, 2018 17:51
@liyuqian liyuqian merged commit cd85329 into flutter:master Jul 30, 2018
liyuqian added a commit to liyuqian/flutter that referenced this pull request Jul 31, 2018
91ff524 Roll src/third_party/skia 74c6ed3d1f17..1935aa3d27cd (11 commits) (flutter/engine#5911)
d06e9e8 Deprecate -[FlutterDartProject initFromDefaultSourceForConfiguration] (flutter/engine#18886) (flutter#5858)
3e6b681 Roll src/third_party/skia 0bf5408286ea..74c6ed3d1f17 (1 commits) (flutter/engine#5910)
5b09e14 Roll src/third_party/skia 946a162a5239..0bf5408286ea (1 commits) (flutter/engine#5909)
236d633 Add word movement granularities to android (flutter/engine#5902)
5ae8240 Roll src/third_party/skia f7dcd76c552a..946a162a5239 (3 commits) (flutter/engine#5908)
0c8fda2 Remove the "VSYNC" trace event on Fuchsia (flutter/engine#5907)
430ca29 Roll src/third_party/skia 62501c12c83e..f7dcd76c552a (5 commits) (flutter/engine#5906)
10effc7 Replace travis with cirrus (flutter/engine#5899)
cd85329 Use container and GKE to accelerate build (flutter/engine#5897)
659e49e Add docker container generation scripts (flutter/engine#5898)
9336082 Roll src/third_party/skia c06b8a4e0ca3..62501c12c83e (11 commits) (flutter/engine#5905)
46b7793 Clear the EGL context only if our context is currently active (flutter/engine#5895)
2f4a022 Return proper JSON-RPC error responses from service protocol failures (flutter/engine#5889)
d34eb1d Roll src/third_party/skia 227424b57d28..c06b8a4e0ca3 (22 commits) (flutter/engine#5904)
@liyuqian liyuqian deleted the container branch September 12, 2018 22:17
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants