-
Notifications
You must be signed in to change notification settings - Fork 6k
Use container and GKE to accelerate build #5897
Conversation
5726338
to
61c9f22
Compare
ddecd57
to
1165628
Compare
.cirrus.yml
Outdated
memory: 32Gb | ||
disk: 60 | ||
namespace: default | ||
cpu: 16 |
There was a problem hiding this comment.
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 |
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
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?
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
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?
There was a problem hiding this comment.
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.
There was a problem hiding this comment.
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.
48ac7ff
to
ce221cd
Compare
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)
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.