[openstack-dev] [infra] [all] project pipeline definition should stay in project-config or project side ?

Ghanshyam Mann gmann at ghanshyammann.com
Wed Feb 14 00:28:06 UTC 2018


On Wed, Feb 14, 2018 at 12:06 AM, Paul Belanger <pabelanger at redhat.com> wrote:
> On Tue, Feb 13, 2018 at 11:05:34PM +0900, gmann wrote:
>> Hi Infra Team,
>>
>> I have 1 quick question on zuulv3 jobs and their migration part. From
>> zuulv3 doc [1], it is clear about migrating the job definition and use
>> those among cross repo pipeline etc.
>>
>> But I did not find clear recommendation that whether project's
>> pipeline definition should stay in project-config or we should move
>> that to project side.
>>
>> IMO,
>> 'template' part(which has system level jobs) can stay in
>> project-config. For example below part-
>>
>> https://github.com/openstack-infra/project-config/blob/e2b82623a4ab60261b37a91e311118301927b9b6/zuul.d/projects.yaml#L10507-L10523
>>
>> Other pipeline definition- 'check', 'gate', 'experimental' etc should
>> be move to project repo, mainly this list-
>> https://github.com/openstack-infra/project-config/blob/master/zuul.d/projects.yaml#L10524-L11019
>>
>> If we move those past as mentioned above then, we can have a
>> consolidated place to control the project pipeline for
>> 'irrelevant-files', specific branch etc
>>
>> ..1 https://docs.openstack.org/infra/manual/zuulv3.html
>>
> As it works today, pipeline stanza needs to be in a config project[1]
> (project-config) repo. So what you are suggestion will not work. This was done
> to allow zuul admins to control which pipelines are setup / configured.
>
> I am mostly curious why a project would need to modify a pipeline configuration
> or duplicate it into all projects, over having it central located in
> project-config.

pipeline stanza  and configuration stay in project-config. I mean list
of jobs defined in each pipeline for specific project for example
here[2]. Now we have list of jobs for each pipeline in 2 places, one
in project-config [2] and second in project repo[3].

Issue in having it in 2 places:
- No single place to check what all jobs project will run with what conditions
- If we need to modify the list of jobs in pipeline or change other
bits like irrelevant-files etc then it has to be done in
project-config. So no full control by project side.

>
> [1] https://docs.openstack.org/infra/zuul/user/config.html#pipeline

..2  https://github.com/openstack-infra/project-config/blob/ba2b7fb5dfee02ff11dde877c973b40815ab7838/zuul.d/projects.yaml#L10524-L11019
..3 https://github.com/openstack/nova/blob/87036b4b27945b6ae34b57e6ee15dd76eb7f726a/.zuul.yaml#L104-L119

>>
>> -gmann
>>
>> __________________________________________________________________________
>> OpenStack Development Mailing List (not for usage questions)
>> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
>> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
> __________________________________________________________________________
> OpenStack Development Mailing List (not for usage questions)
> Unsubscribe: OpenStack-dev-request at lists.openstack.org?subject:unsubscribe
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev



More information about the OpenStack-dev mailing list