Esempio n. 1
0
def schedule(c):
    force_sched = s_force(
        name="force-build-" + PROJECT_NAME,
        cb=FORCE_CODEBASE,
        builders=[PROJECT_NAME],
        properties=[
            util.NestedParameter(name="options", label="Build Options", layout="vertical", fields=[
                util.StringParameter(name="force_feature", label="feature-branch to build:",
                                     default="", size=80),
                util.BooleanParameter(name="force_build_clean", label="force a make clean",
                                      default=False),
                util.BooleanParameter(name="force_complete_rebuild",
                                      label="force complete rebuild and fresh git clone",
                                      default=False),
            ])
        ]
    )

    c['schedulers'].extend([
        s_abranch(PROJECT_NAME + '-sched', CODEBASE, [PROJECT_NAME],
                  change_filter=util.ChangeFilter(branch_fn=trigger_branch_match),
                  treeStableTimer=5 * 60),
        force_sched,
        s_trigger('trigger-' + PROJECT_NAME, CODEBASE, [PROJECT_NAME]),
    ])
Esempio n. 2
0
def schedule(c):
    force_sched = s_force(
        name="force-build-" + PROJECT_NAME,
        cb=FORCE_CODEBASE,
        builders=[PROJECT_NAME],
        properties=[
            util.NestedParameter(name="options", label="Build Options", layout="vertical", fields=[
                util.BooleanParameter(name="force_build_clean", label="force a make clean",
                                      default=False),
                util.BooleanParameter(name="force_complete_rebuild",
                                      label="force complete rebuild and fresh git clone",
                                      default=False),
            ])
        ]
    )

    c['schedulers'].extend([
        s_abranch(PROJECT_NAME + '-sched', CODEBASE, [PROJECT_NAME],
                  change_filter=filter.ChangeFilter(branch_re=TRIGGER_BRANCHES),
                  treeStableTimer=5 * 60),
        force_sched,
        s_trigger('trigger-' + PROJECT_NAME, CODEBASE, [PROJECT_NAME]),
        # TODO: Fix nightly scheduler (currently not working)
        #s_nightly('nightly-sched-' + PROJECT_NAME, CODEBASE,
        #          [PROJECT_NAME],
        #          hour=22, minute=0)
    ])
Esempio n. 3
0
def getLntSchedulers():
    project = "lnt"
    lnt_builders = [
        "publish-lnt-sphinx-docs",
    ]
    return [
        schedulers.SingleBranchScheduler(
            name="lnt-scheduler",
            treeStableTimer=kwargs.get('treeStableTimer', None),
            reason="Merge to LNT github {} branch".format(filter_branch),
            builderNames=lnt_builders,
            change_filter=util.ChangeFilter(project_fn=project,
                                            branch=filter_branch)),
        schedulers.ForceScheduler(
            name="force-build-scheduler",
            label="Force Build",
            buttonName="Force Build",
            reason=util.ChoiceStringParameter(
                name="reason",
                label="reason:",
                required=True,
                choices=[
                    "Build a particular revision",
                    "Force clean build",
                    "Narrow down blamelist",
                ],
                default="Build a particular revision"),
            builderNames=lnt_builders,
            codebases=[
                util.CodebaseParameter(
                    codebase="",
                    branch=util.FixedParameter(name="branch", default=_branch),
                    revision=util.StringParameter(name="revision",
                                                  label="revision:",
                                                  size=45,
                                                  default=''),
                    repository=util.FixedParameter(name="repository",
                                                   default=_repourl),
                    project=util.FixedParameter(name="project",
                                                default=project))
            ],
            properties=[
                util.BooleanParameter(
                    name="clean",
                    label="Clean source code and build directory",
                    default=False),
                util.BooleanParameter(name="clean_obj",
                                      label="Clean build directory",
                                      default=False)
            ]),
    ]
Esempio n. 4
0
def getForceSchedulers(builders):
    # Walk over all builders and collect their names.
    scheduler_builders = [builder.name for builder in builders]

    # Create the force schedulers.
    return [
        schedulers.ForceScheduler(
            name="force-build-scheduler",
            label="Force Build",
            buttonName="Force Build",
            reason=util.ChoiceStringParameter(
                name="reason",
                label="reason:",
                required=True,
                choices=[
                    "Build a particular revision",
                    "Force clean build",
                    "Narrow down blamelist",
                ],
                default="Build a particular revision"),
            builderNames=scheduler_builders,
            codebases=[
                util.CodebaseParameter(
                    codebase="",
                    branch=util.FixedParameter(name="branch", default=_branch),
                    revision=util.StringParameter(name="revision",
                                                  label="revision:",
                                                  size=45,
                                                  default=''),
                    repository=util.FixedParameter(name="repository",
                                                   default=_repourl),
                    project=util.FixedParameter(
                        name="project",
                        default="llvm"  # All projects depend on llvm
                    ))
            ],
            properties=[
                util.BooleanParameter(
                    name="clean",
                    label="Clean source code and build directory",
                    default=False),
                util.BooleanParameter(name="clean_obj",
                                      label="Clean build directory",
                                      default=False)
            ])
    ]
Esempio n. 5
0
def getPropertyes():
    return [
        util.BooleanParameter(name='Windows',
                              label='Windows version project',
                              default=True),
        util.BooleanParameter(name='Linux',
                              label='Linux version project',
                              default=True),
        util.BooleanParameter(name='Android',
                              label='Android version project',
                              default=True),
        util.BooleanParameter(name='clean',
                              label='clean old build ',
                              default=True),
        util.BooleanParameter(name='deploy',
                              label='deploy project',
                              default=True),
        util.BooleanParameter(name='test', label='test project ',
                              default=True),
        util.BooleanParameter(name='release',
                              label='release project',
                              default=False),
        util.StringParameter(name='copyFolder',
                             label='Folder with buildet data',
                             default="Distro"),
    ]
Esempio n. 6
0
def getPropertyes():
    return [
        util.BooleanParameter(
            name = 'Windows',
            label = 'Windows version Qt',
            default = True
        ),

        util.BooleanParameter(
            name = 'Linux',
            label = 'Linux version Qt',
            default = True
        ),

        util.BooleanParameter(
            name = 'Android',
            label = 'Android version Qt',
            default = True
        )
    ]
Esempio n. 7
0
    def getGlobalSchedulers(self, platforms):
        ret = list()
        change_filter = util.ChangeFilter(
            repository=[self.baseurl, self.giturl], branch=self.branch)

        # Fetch scheduler (triggered by event source)
        ret.append(
            schedulers.SingleBranchScheduler(
                name=self.names['sch-sb'],
                change_filter=change_filter,
                # Wait for 5 minutes before starting build
                treeStableTimer=300,
                builderNames=[self.names['bld-fetch']]))

        # Nightly scheduler (started by time)
        # It's triggered after regular builds to take note of the last fetched source
        # Note that build is not started by trigger
        # We cleanup after it because we just generated a new package
        if self.nightly is not None:
            ret.append(
                schedulers.NightlyTriggerable(name=self.names['sch-nightly'],
                                              branch=self.branch,
                                              builderNames=[
                                                  self.names['bld-nightly'],
                                                  self.names['bld-clean']
                                              ],
                                              hour=self.nightly[0],
                                              minute=self.nightly[1],
                                              onlyIfChanged=True))

        # All compiling builders
        comp_builders = list(self.names['bld-platform'](p for p in platforms
                                                        if p.canBuild(self)))

        # Global build scheduler (triggered by fetch build and nightly build)
        ret.append(
            schedulers.Triggerable(name=self.names['sch-build'],
                                   builderNames=comp_builders))

        # Force schedulers
        if self.enable_force:
            ret.append(
                schedulers.ForceScheduler(
                    name=self.names['sch-force-id-fetch'],
                    buttonName=self.names['sch-force-name-fetch'],
                    label=self.names['sch-force-name-fetch'],
                    reason=util.StringParameter(name="reason",
                                                label="Reason:",
                                                required=True,
                                                size=80),
                    builderNames=[self.names['bld-fetch']],
                    codebases=[util.CodebaseParameter(codebase='', hide=True)],
                    properties=[
                        util.BooleanParameter(name="clean",
                                              label="Clean",
                                              default=False),
                        util.BooleanParameter(name="package",
                                              label="Package",
                                              default=False),
                    ]))
            ret.append(
                schedulers.ForceScheduler(
                    name=self.names['sch-force-id-build'],
                    buttonName=self.names['sch-force-name-build'],
                    label=self.names['sch-force-name-build'],
                    reason=util.StringParameter(name="reason",
                                                label="Reason:",
                                                required=True,
                                                size=80),
                    builderNames=comp_builders,
                    codebases=[util.CodebaseParameter(codebase='', hide=True)],
                    properties=[
                        util.BooleanParameter(name="clean",
                                              label="Clean",
                                              default=False),
                        util.BooleanParameter(name="package",
                                              label="Package",
                                              default=False),
                    ]))
            ret.append(
                schedulers.ForceScheduler(
                    name=self.names['sch-force-id-clean'],
                    buttonName=self.names['sch-force-name-clean'],
                    label=self.names['sch-force-name-clean'],
                    reason=util.StringParameter(name="reason", hide=True),
                    builderNames=[self.names['bld-clean']],
                    codebases=[util.CodebaseParameter(codebase='', hide=True)],
                    properties=[
                        util.BooleanParameter(name="dry_run",
                                              label="Dry run",
                                              default=False),
                    ]))

        return ret
Esempio n. 8
0
def appendTestRunId(default=True):
    return util.BooleanParameter(
        name="appendTestRunId",
        label="Append test run id to the name of the test",
        default=default)
Esempio n. 9
0
def buildBoxCheckbox(box):
    """Creates a checkbox parameter for a given box"""
    return util.BooleanParameter(name=box, label=box, default=True)
Esempio n. 10
0
def getPropertyes():
    return [
        util.BooleanParameter(name='stopForce',
                              label='Stop Force',
                              default=False)
    ]
Esempio n. 11
0
        # Note: we deliberately leave the name argument to empty strings for
        # the NestedParameter classes below because parameter namespacing is
        # way too cumbersome to manage in the build factories.
        util.NestedParameter(
            name="",
            layout="tabs",
            fields=[
                util.NestedParameter(
                    name="",
                    label="Source tree checkout",
                    layout="vertical",
                    fields=[
                        util.BooleanParameter(
                            name="use_local_manifest",
                            label="Use the repo local manifest below",
                            default=False,
                        ),
                        util.TextParameter(
                            name="local_manifest_xml",
                            label=
                            "Local manifest to apply changes to the source tree",
                            default=r"""
<manifest>
  <!--
    This is an example of a local-manifest file: tweak it to your needs.
    You can find examples below that use dummy values and that illustrate the
    operations you may want to do with such a local-manifest file:
  -->

  <!-- How to declare an additional Git remote you can use futher down: -->