Browse Source

Adding caching of buildcontainer

Torkel Ödegaard 10 năm trước cách đây
mục cha
commit
0a82b75f2a
3 tập tin đã thay đổi với 20 bổ sung7 xóa
  1. 6 1
      circle.yml
  2. 9 6
      docker/buildcontainer/build_circle.sh
  3. 5 0
      docker/buildcontainer/run_circle.sh

+ 6 - 1
circle.yml

@@ -7,6 +7,11 @@ machine:
     REPO_PATH: "${ORG_PATH}/grafana"
 
 dependencies:
+  cache_directories:
+    - "~/docker"
+  pre:
+    ./docker/buildcontainer/build_circle.sh
+
   override:
     - rm -rf ${GOPATH}/src/${REPO_PATH}
     - mkdir -p ${GOPATH}/src/${ORG_PATH}
@@ -25,4 +30,4 @@ deployment:
     branch: develop
     owner: grafana
     commands:
-      - ./docker/buildcontainer/build_circle.sh
+      - ./docker/buildcontainer/run_circle.sh

+ 9 - 6
docker/buildcontainer/build_circle.sh

@@ -1,10 +1,13 @@
 #!/bin/bash
 
-docker kill gfbuild
-docker rm gfbuild
+docker info && docker version
+mkdir -p ~/docker
+
+# cache some Docker images to make builds faster
+if [[ -e ~/docker/centos.tar ]]; then
+  docker load -i ~/docker/centos.tar;
+else
+  docker build --tag "grafana/buildcontainer" docker/buildcontainer
+fi
 
-docker build --tag "grafana/buildcontainer" docker/buildcontainer
 
-docker run -i -t \
-  -v /home/ubuntu/.go_workspace:/go \
-  --name gfbuild grafana/buildcontainer

+ 5 - 0
docker/buildcontainer/run_circle.sh

@@ -0,0 +1,5 @@
+#!/bin/bash
+
+docker run -i -t \
+  -v /home/ubuntu/.go_workspace:/go \
+  --name gfbuild grafana/buildcontainer