コード例 #1
0
ファイル: build.py プロジェクト: osechet/conan-qt
def main():
    """
    Main function.
    """

    builder = ConanMultiPackager(username="******", channel="testing")
    builder.add_common_builds()
    filtered_builds = []
    for settings, options, env_vars, build_requires in builder.builds:
        if settings["compiler"] == "Visual Studio":
            if settings["compiler.runtime"] == "MT" or settings["compiler.runtime"] == "MTd":
                # Ignore MT runtime
                continue
        if settings["arch"] != "x86_64":
            continue

        filtered_builds.append([settings, options, env_vars, build_requires])

    builder.builds = filtered_builds
    builder.run()
コード例 #2
0
ファイル: build.py プロジェクト: lasote/conan-littlecms
from conan.packager import ConanMultiPackager
import platform


if __name__ == "__main__":
    builder = ConanMultiPackager()
    builder.add_common_builds(shared_option_name="littlecms:shared", pure_c=True)
    builder.run()
コード例 #3
0
ファイル: build.py プロジェクト: memsharded/conan-sdl2
from conan.packager import ConanMultiPackager
import platform

if __name__ == "__main__":
   builder = ConanMultiPackager()
#    builder.add_common_builds(shared_option_name="SDL2:shared", pure_c=True)
#    if platform.system() == "Darwin":
#        # Remove static builds in OSx
#        static_builds = []
#       for build in builder.builds:
#            if build[1]["SDL2:shared"]:
#                static_builds.append([build[0], {}])
#            
#        builder.builds = static_builds
#      
   builder.run() # Will upload just the recipe
    
コード例 #4
0
    def test_upload(self):
        runner = MockRunner()
        runner.output = "arepo: myurl"
        builder = ConanMultiPackager(username="******",
                                     channel="testing",
                                     reference="Hello/0.1",
                                     password="******",
                                     upload="myurl",
                                     visual_versions=[],
                                     gcc_versions=[],
                                     apple_clang_versions=[],
                                     runner=runner,
                                     remotes="myurl, otherurl",
                                     platform_info=platform_mock_for("Darwin"))
        builder.add_common_builds()
        builder.run()

        # Duplicated upload remote puts upload repo first (in the remotes order)
        self.assertEqual(runner.calls[0:3], [
            'conan remote add remote0 otherurl --insert',
            'conan remote add upload_repo myurl --insert', 'conan remote list'
        ])

        # Now check that the upload remote order is preserved if we specify it in the remotes
        runner = MockRunner()
        builder = ConanMultiPackager(username="******",
                                     channel="testing",
                                     reference="Hello/0.1",
                                     password="******",
                                     upload="myurl",
                                     visual_versions=[],
                                     gcc_versions=[],
                                     apple_clang_versions=[],
                                     runner=runner,
                                     remotes="otherurl, myurl, moreurl",
                                     platform_info=platform_mock_for("Darwin"))
        builder.add_common_builds()
        builder.run()

        # Duplicated upload remote puts upload repo first (in the remotes order)
        self.assertEqual(runner.calls[0:3], [
            'conan remote add remote0 moreurl --insert',
            'conan remote add upload_repo myurl --insert',
            'conan remote add remote2 otherurl --insert'
        ])

        self.assertEqual(
            runner.calls[-1],
            'conan upload Hello/0.1@pepe/testing --retry 3 --all --force '
            '--confirm -r=upload_repo')

        runner = MockRunner()
        builder = ConanMultiPackager(username="******",
                                     channel="testing",
                                     reference="Hello/0.1",
                                     password="******",
                                     upload="myurl",
                                     visual_versions=[],
                                     gcc_versions=[],
                                     apple_clang_versions=[],
                                     runner=runner,
                                     remotes="otherurl",
                                     platform_info=platform_mock_for("Darwin"))
        builder.add_common_builds()
        builder.run()

        self.assertEqual(runner.calls[0:3], [
            'conan remote add remote0 otherurl --insert', 'conan remote list',
            'conan remote add upload_repo myurl'
        ])

        self.assertEqual(
            runner.calls[-1],
            'conan upload Hello/0.1@pepe/testing --retry 3 --all '
            '--force --confirm -r=upload_repo')
コード例 #5
0
ファイル: build.py プロジェクト: dendisuhubdy/conan-leptonica
from conan.packager import ConanMultiPackager
import platform

if __name__ == "__main__":
    builder = ConanMultiPackager()
    builder.add_common_builds(shared_option_name="zlib:shared", pure_c=True)
    builder.run()
コード例 #6
0
    if 'CONAN_BASE_PROFILE_ARCHBUILD' in os.environ:
        os.system("conan profile update settings.arch_build=\"%s\" ./ci-profile" % os.environ['CONAN_BASE_PROFILE_ARCHBUILD'])

    if 'CONAN_BASE_PROFILE_COMPILER' in os.environ:
        os.system("conan profile update settings.compiler=\"%s\" ./ci-profile" % os.environ['CONAN_BASE_PROFILE_COMPILER'])

    if 'CONAN_BASE_PROFILE_COMPILER_VERSION' in os.environ:
        os.system("conan profile update settings.compiler.version=\"%s\" ./ci-profile" % os.environ['CONAN_BASE_PROFILE_COMPILER_VERSION'])

    if 'CONAN_BASE_PROFILE_COMPILER_LIBCXX' in os.environ:
        os.system("conan profile update settings.compiler.libcxx=\"%s\" ./ci-profile" % os.environ['CONAN_BASE_PROFILE_COMPILER_LIBCXX'])

    if 'CONAN_BASE_PROFILE_BUILDTYPE' in os.environ:
        os.system("conan profile update settings.build_type=\"%s\" ./ci-profile" % os.environ['CONAN_BASE_PROFILE_BUILDTYPE'])

    if 'CONAN_OPTIONS' in os.environ:
        for option in os.environ['CONAN_OPTIONS'].split(','):
            os.system("conan profile update options.%s ./ci-profile" % option)

    user_name = "user"
    user_channel = "testing"
    if 'CONAN_USERNAME' in os.environ:
        user_name = os.environ['CONAN_USERNAME']

    if 'CONAN_CHANNEL' in os.environ:
        user_channel = os.environ['CONAN_CHANNEL']
    
    builder = ConanMultiPackager(build_policy="outdated", upload_retry=3, upload_only_recipe=True)
    builder.add()
    builder.run(os.path.abspath("./ci-profile"))
コード例 #7
0
    def test_check_credentials(self):

        runner = MockRunner()
        runner.output = "arepo: myurl"
        builder = ConanMultiPackager(username="******",
                                     channel="testing",
                                     reference="Hello/0.1",
                                     password="******",
                                     upload="myurl",
                                     visual_versions=[],
                                     gcc_versions=[],
                                     apple_clang_versions=[],
                                     runner=runner,
                                     platform_info=platform_mock_for("Darwin"))
        builder.add_common_builds()
        builder.run()

        # When activated, check credentials before to create the profiles
        self.assertEqual(runner.calls[0], 'conan remote add upload_repo myurl')
        self.assertEqual(runner.calls[2],
                         'conan user pepe -p="password" -r=upload_repo')
        self.assertIn(
            "conan create",
            runner.calls[-2])  # Not login again before upload its cached
        self.assertEqual(
            runner.calls[-1],
            "conan upload Hello/0.1@pepe/testing --retry 3 --all --force --confirm "
            "-r=upload_repo")

        runner = MockRunner()
        builder = ConanMultiPackager(username="******",
                                     channel="testing",
                                     reference="Hello/0.1",
                                     password="******",
                                     visual_versions=[],
                                     gcc_versions=[],
                                     apple_clang_versions=[],
                                     runner=runner,
                                     remotes="otherurl",
                                     platform_info=platform_mock_for("Darwin"))
        builder.add_common_builds()
        builder.run()

        # When upload is not required, credentials verification must be avoided
        self.assertFalse(
            'conan user pepe -p="password" -r=upload_repo' in runner.calls)
        self.assertFalse(
            'conan upload Hello/0.1@pepe/testing --retry 3 '
            '--all --force --confirm -r=upload_repo' in runner.calls)

        # If we skip the credentials check, the login will be performed just before the upload
        builder = ConanMultiPackager(username="******",
                                     channel="testing",
                                     reference="Hello/0.1",
                                     password="******",
                                     upload="myurl",
                                     visual_versions=[],
                                     gcc_versions=[],
                                     apple_clang_versions=[],
                                     runner=runner,
                                     platform_info=platform_mock_for("Darwin"),
                                     skip_check_credentials=True)
        builder.add_common_builds()
        builder.run()
        self.assertEqual(runner.calls[-2],
                         'conan user pepe -p="password" -r=upload_repo')
        self.assertEqual(
            runner.calls[-1],
            "conan upload Hello/0.1@pepe/testing --retry 3 --all --force --confirm "
            "-r=upload_repo")
コード例 #8
0
from conan.packager import ConanMultiPackager
import platform

if __name__ == "__main__":
   builder = ConanMultiPackager()
   builder.add_common_builds(shared_option_name="SDL2:shared", pure_c=True)
#    if platform.system() == "Darwin":
#        # Remove static builds in OSx
#        static_builds = []
#       for build in builder.builds:
#            if build[1]["SDL2:shared"]:
#                static_builds.append([build[0], {}])
#            
#        builder.builds = static_builds
#      
   builder.run() # Will upload just the recipe
    
コード例 #9
0
ファイル: build.py プロジェクト: khdkhd/conan-igloo
def build():
    builder = ConanMultiPackager(build_policy="missing")
    builder.add_common_builds(pure_c=False, shared_option_name=False)
    builder.remove_build_if(
        lambda build: build.settings["compiler.libcxx"] == "libstdc++")
    builder.run()