Make sure wrong plugin manifest file is not collected from cache
Building two versions of a gerrit plugin using the same buck would make buck use the cached manifest file from the previous build. With this change the result of git_describe() is used to determine archetype version, so the manifest file will be rebuilt. Change-Id: If5e7be8d7f11b965e973172f77fe7bfc93019f3a
This commit is contained in:
parent
b6b6ee280a
commit
aab703f6ca
@ -18,6 +18,7 @@ include_defs('//lib/auto/auto_value.defs')
|
|||||||
include_defs('//tools/gwt-constants.defs')
|
include_defs('//tools/gwt-constants.defs')
|
||||||
include_defs('//tools/java_doc.defs')
|
include_defs('//tools/java_doc.defs')
|
||||||
include_defs('//tools/java_sources.defs')
|
include_defs('//tools/java_sources.defs')
|
||||||
|
include_defs('//tools/git.defs')
|
||||||
import copy
|
import copy
|
||||||
|
|
||||||
# Set defaults on java rules:
|
# Set defaults on java rules:
|
||||||
@ -130,7 +131,7 @@ def gerrit_plugin(
|
|||||||
type = 'plugin',
|
type = 'plugin',
|
||||||
visibility = ['PUBLIC']):
|
visibility = ['PUBLIC']):
|
||||||
from multiprocessing import cpu_count
|
from multiprocessing import cpu_count
|
||||||
mf_cmd = 'v=\$(git describe HEAD);'
|
mf_cmd = 'v=%s;' % git_describe(name)
|
||||||
if manifest_file:
|
if manifest_file:
|
||||||
mf_src = [manifest_file]
|
mf_src = [manifest_file]
|
||||||
mf_cmd += 'sed "s:@VERSION@:$v:g" $SRCS >$OUT'
|
mf_cmd += 'sed "s:@VERSION@:$v:g" $SRCS >$OUT'
|
||||||
|
@ -12,10 +12,13 @@
|
|||||||
# See the License for the specific language governing permissions and
|
# See the License for the specific language governing permissions and
|
||||||
# limitations under the License.
|
# limitations under the License.
|
||||||
|
|
||||||
def git_describe():
|
def git_describe(plugin = None):
|
||||||
import subprocess
|
import subprocess
|
||||||
cmd = ['git', 'describe', '--match', 'v[0-9].*', '--dirty']
|
cmd = ['git', 'describe', '--match', 'v[0-9].*', '--dirty']
|
||||||
p = subprocess.Popen(cmd, stdout = subprocess.PIPE)
|
if not plugin:
|
||||||
|
p = subprocess.Popen(cmd, stdout = subprocess.PIPE)
|
||||||
|
else:
|
||||||
|
p = subprocess.Popen(cmd, stdout = subprocess.PIPE, cwd = 'plugins/%s' % plugin)
|
||||||
v = p.communicate()[0].strip()
|
v = p.communicate()[0].strip()
|
||||||
r = p.returncode
|
r = p.returncode
|
||||||
if r != 0:
|
if r != 0:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user