← Back to team overview

openlp-core team mailing list archive

[Merge] lp:~tomasgroth/openlp/packaging-tag-override into lp:openlp/packaging

 

Tomas Groth has proposed merging lp:~tomasgroth/openlp/packaging-tag-override into lp:openlp/packaging.

Commit message:
Add an option for providing tag and revision to avoid using bzr. Useful on Appveyor where bzr does not work.

Requested reviews:
  OpenLP Core (openlp-core)

For more details, see:
https://code.launchpad.net/~tomasgroth/openlp/packaging-tag-override/+merge/349434
-- 
Your team OpenLP Core is requested to review the proposed merge of lp:~tomasgroth/openlp/packaging-tag-override into lp:openlp/packaging.
=== modified file 'builders/builder.py'
--- builders/builder.py	2017-03-28 00:05:46 +0000
+++ builders/builder.py	2018-07-12 20:11:54 +0000
@@ -160,6 +160,8 @@
         parser.add_argument('--skip-translations', action='store_true', default=False,
                             help='Do NOT update the language translation files')
         parser.add_argument('--debug', action='store_true', default=False, help='Create a debug build')
+        parser.add_argument('--tag-override', metavar='<tag>-bzr<revision>', default=None,
+                            help='Override tag and revision, should be in format <tag>-bzr<revision>')
         self.add_extra_args(parser)
         self.args = parser.parse_args()
 
@@ -297,17 +299,20 @@
         """
         self._print('Writing version file...')
         if not self.args.release:
-            # This is a development build, get the tag and revision
-            output = self._bzr('tags', self.branch_path, err_msg='Error running bzr tags')
-            lines = output.splitlines()
-            if len(lines) == 0:
-                tag = '0.0.0'
-                revision = '0'
+            if self.args.tag_override:
+                self.version = self.args.tag_override
             else:
-                tag, revision = lines[-1].split()
-            output = self._bzr('log', self.branch_path, ['--line', '-r', '-1'], 'Error running bzr log')
-            revision = output.split(':')[0]
-            self.version = '{tag}-bzr{revision}'.format(tag=tag, revision=revision)
+                # This is a development build, get the tag and revision
+                output = self._bzr('tags', self.branch_path, err_msg='Error running bzr tags')
+                lines = output.splitlines()
+                if len(lines) == 0:
+                    tag = '0.0.0'
+                    revision = '0'
+                else:
+                    tag, revision = lines[-1].split()
+                output = self._bzr('log', self.branch_path, ['--line', '-r', '-1'], 'Error running bzr log')
+                revision = output.split(':')[0]
+                self.version = '{tag}-bzr{revision}'.format(tag=tag, revision=revision)
         # Write the version to the version file
         with open(os.path.join(self.dist_path, '.version'), 'w') as version_file:
             version_file.write(str(self.version))


Follow ups