...
1#!/usr/bin/env python
2# -*- coding: utf-8 -*-
3import os
4import re
5import subprocess
6from cpt.packager import ConanMultiPackager
7
8
9
10def get_branch():
11 try:
12 for line in subprocess.check_output("git branch", shell=True).decode().splitlines():
13 line = line.strip()
14 if line.startswith("*") and " (HEAD detached" not in line:
15 return line.replace("*", "", 1).strip()
16 return ""
17 except Exception:
18 pass
19 return ""
20
21
22def get_version():
23 version = get_branch()
24 match = re.search(r"v(\d+\.\d+\.\d+.*)", version)
25 if match:
26 return match.group(1)
27 return version
28
29
30def get_reference(username):
31 return "flatbuffers/{}@google/stable".format(get_version())
32
33
34if __name__ == "__main__":
35 login_username = os.getenv("CONAN_LOGIN_USERNAME", "aardappel")
36 username = os.getenv("CONAN_USERNAME", "google")
37 upload = os.getenv("CONAN_UPLOAD", "https://api.bintray.com/conan/aardappel/flatbuffers")
38 stable_branch_pattern = os.getenv("CONAN_STABLE_BRANCH_PATTERN", r"v\d+\.\d+\.\d+.*")
39 test_folder = os.getenv("CPT_TEST_FOLDER", os.path.join("conan", "test_package"))
40 upload_only_when_stable = os.getenv("CONAN_UPLOAD_ONLY_WHEN_STABLE", True)
41
42 builder = ConanMultiPackager(reference=get_reference(username),
43 username=username,
44 login_username=login_username,
45 upload=upload,
46 stable_branch_pattern=stable_branch_pattern,
47 upload_only_when_stable=upload_only_when_stable,
48 test_folder=test_folder)
49 builder.add_common_builds(pure_c=False)
50 builder.run()
View as plain text