The third parameter specifies the tag, commit or revision number from
which to build it in the source repository.
+If the commit version starts with a !, that version is not built. Instead,
+everything after the ! is used as a reason why it can't be built. The
+purpose of this feature is to allow non-buildable releases (e.g. the source
+is not published) to be flagged, so the scripts don't generate repeated
+messages about them. (And also to record the information for review later).
+
In addition to the three, always required, parameters described above,
further parameters can be added (in name=value format) to apply further
configuration to the build. These are:
dest_unsigned = dest + "_unsigned"
if os.path.exists(dest):
- print "Version " + thisbuild['version'] + " already exists"
+ print "..version " + thisbuild['version'] + " already exists"
+ elif thisbuild['commit'].startswith('!'):
+ print ("..skipping version " + thisbuild['version'] + " - " +
+ thisbuild['commit'][1:])
else:
- print "Building version " + thisbuild['version']
+ print "..building version " + thisbuild['version']
if not got_source:
+ ") " + app['source'])
warnings += 1
+ # If we don't have the market version, check if there is a build
+ # with a commit ID starting with '!' - this means we can't build it
+ # for some reason, and don't want hassling about it...
+ if not gotmarketver and app['marketvercode'] != '0':
+ for build in app['builds']:
+ if build['vercode'] == app['marketvercode']:
+ gotmarketver = True
+
+ # Output a message of harassment if we don't have the market version:
if not gotmarketver and app['marketvercode'] != '0':
if app['usebuilt']:
addr = app['source']