]> code.ossystems Code Review - openembedded-core.git/commitdiff
icecc.bbclass: Add environment version
authorJoshua Watt <jpewhacker@gmail.com>
Mon, 19 Feb 2018 22:30:21 +0000 (16:30 -0600)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Sat, 24 Feb 2018 10:31:35 +0000 (10:31 +0000)
Adds a version to the environment which can be used to invalidate any
previous environments on the remote compile nodes

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Ross Burton <ross.burton@intel.com>
meta/classes/icecc.bbclass

index 2bf6cdb003d42e3c2d060e2fa5c315b45189ef7e..bfab61dfa3663d62eb18ab9f68c3ef51bc3dc135 100644 (file)
@@ -34,6 +34,15 @@ BB_HASHBASE_WHITELIST += "ICECC_PARALLEL_MAKE ICECC_DISABLED ICECC_USER_PACKAGE_
 
 ICECC_ENV_EXEC ?= "${STAGING_BINDIR_NATIVE}/icecc-create-env"
 
+# This version can be incremented when changes are made to the environment that
+# invalidate the version on the compile nodes. Changing it will cause a new
+# environment to be created.
+#
+# A useful thing to do for testing Icecream changes locally is to add a
+# subversion in local.conf:
+#  ICECC_ENV_VERSION_append = "-my-ver-1"
+ICECC_ENV_VERSION = "1"
+
 # Default to disabling the caret workaround, If set to "1" in local.conf, icecc
 # will locally recompile any files that have warnings, which can adversely
 # affect performance.
@@ -203,7 +212,11 @@ def icecc_version(bb, d):
 
     import socket
     ice_dir = icecc_dir(bb, d)
-    tar_file = os.path.join(ice_dir, archive_name + "-@VERSION@-" + socket.gethostname() + '.tar.gz')
+    tar_file = os.path.join(ice_dir, "{archive}-{version}-@VERSION@-{hostname}.tar.gz".format(
+        archive=archive_name,
+        version=d.getVar('ICECC_ENV_VERSION', True),
+        hostname=socket.gethostname()
+        ))
 
     return tar_file