Hello, running Zuul version: 2.1.1.dev131, I want to configure multiple gerrit connections, so gerrit account reporting back will differ based on pipeline. Having just one gerrit account (connection) works without problems.
Original /etc/zuul/zuul.conf contained just one gerrit connection as below >> [gerrit] server=review.openstack.org user=intel-nfv-ci sshkey=/var/lib/zuul/ssh/id_rsa >> "gerrit" is used in /etc/zuul/layout/layout.conf and everything works well. I thought the solution is to add additional connection section into /etc/zuul/zuul.conf and use connection in laoyut.yaml itself. I have troubles with that. After adding next section, e.g. my_gerrit into /etc/zuul/zuul.conf >> [my_gerrit] server=review.openstack.org user=intel-networking-ci sshkey=/var/lib/zuul/ssh/[email protected] >> and using "my_gerrit" in /etc/zuul/layout/layout.yaml zuul refuses to start, and also validation via zuul-server -t fails. I ended with configuration of /etc/zuul/zuul.conf as follows (I added "connection" string and "driver" parameter to both my gerrit connections) >> [connection gerrit] driver=gerrit server=review.openstack.org user=intel-nfv-ci sshkey=/var/lib/zuul/ssh/id_rsa [connection my_gerrit] driver=gerrit server=review.openstack.org user=intel-networking-ci sshkey=/var/lib/zuul/ssh/[email protected] >> No change. Still, zuul-server doesn't know about "my_gerrit" So now, I have /etc/zuul/zuul.conf with 2 gerrit connections defined, but the 2nd - my_gerrit I am unable to use in /etc/zuul/layout/layout.yaml excerpt from working /etc/zuul/layout/layout.yaml >> source: gerrit trigger: gerrit: - event: patchset-created success: gerrit: verified: 1 >> This works well. excerpt from non-working /etc/zuul/layout/layout.yaml >> source: gerrit trigger: gerrit: - event: patchset-created success: my_gerrit: verified: 1 >> zuul-server -t Traceback (most recent call last): File "/usr/local/bin/zuul-server", line 10, in <module> sys.exit(main()) File "/usr/local/lib/python2.7/dist-packages/zuul/cmd/server.py", line 218, in main sys.exit(server.test_config(path)) File "/usr/local/lib/python2.7/dist-packages/zuul/cmd/server.py", line 96, in test_config self.connections) File "/usr/local/lib/python2.7/dist-packages/zuul/scheduler.py", line 286, in testConfig return self._parseConfig(config_path, connections) File "/usr/local/lib/python2.7/dist-packages/zuul/scheduler.py", line 402, in _parseConfig validator.validate(data, connections) File "/usr/local/lib/python2.7/dist-packages/zuul/layoutvalidator.py", line 328, in validate schema(data) File "/usr/local/lib/python2.7/dist-packages/voluptuous.py", line 337, in __call__ return self._compiled([], data) File "/usr/local/lib/python2.7/dist-packages/voluptuous.py", line 635, in validate_dict return base_validate(path, iteritems(data), out) File "/usr/local/lib/python2.7/dist-packages/voluptuous.py", line 471, in validate_mapping raise MultipleInvalid(errors) voluptuous.MultipleInvalid: extra keys not allowed @ data['pipelines'][0]['success']['my_gerrit'] I tried to modify, source:, trigger:, success: seems anything except 1st gerrit connection "gerrit" is not knownn to zuul. excerpt from non-working /etc/zuul/layout/layout.yaml >> source: my_gerrit trigger: my_gerrit: - event: patchset-created success: gerrit: verified: 1 >> zuul-server -t Traceback (most recent call last): File "/usr/local/bin/zuul-server", line 10, in <module> sys.exit(main()) File "/usr/local/lib/python2.7/dist-packages/zuul/cmd/server.py", line 218, in main sys.exit(server.test_config(path)) File "/usr/local/lib/python2.7/dist-packages/zuul/cmd/server.py", line 96, in test_config self.connections) File "/usr/local/lib/python2.7/dist-packages/zuul/scheduler.py", line 286, in testConfig return self._parseConfig(config_path, connections) File "/usr/local/lib/python2.7/dist-packages/zuul/scheduler.py", line 444, in _parseConfig params) File "/usr/local/lib/python2.7/dist-packages/zuul/scheduler.py", line 384, in _getReporterDriver return self._getDriver('reporter', connection_name, driver_config) File "/usr/local/lib/python2.7/dist-packages/zuul/scheduler.py", line 369, in _getDriver driver = drivers[dtype][driver_name].split(':') KeyError: 'my_gerrit' I tried vice versa, to keep just "my_gerrit" in /etc/zuul/zuul.conf I got similar issue - that zuul does not know "gerrit" now zuul-server -t Traceback (most recent call last): File "/usr/local/bin/zuul-server", line 10, in <module> sys.exit(main()) File "/usr/local/lib/python2.7/dist-packages/zuul/cmd/server.py", line 218, in main sys.exit(server.test_config(path)) File "/usr/local/lib/python2.7/dist-packages/zuul/cmd/server.py", line 96, in test_config self.connections) File "/usr/local/lib/python2.7/dist-packages/zuul/scheduler.py", line 286, in testConfig return self._parseConfig(config_path, connections) File "/usr/local/lib/python2.7/dist-packages/zuul/scheduler.py", line 402, in _parseConfig validator.validate(data, connections) File "/usr/local/lib/python2.7/dist-packages/zuul/layoutvalidator.py", line 328, in validate schema(data) File "/usr/local/lib/python2.7/dist-packages/voluptuous.py", line 337, in __call__ return self._compiled([], data) File "/usr/local/lib/python2.7/dist-packages/voluptuous.py", line 635, in validate_dict return base_validate(path, iteritems(data), out) File "/usr/local/lib/python2.7/dist-packages/voluptuous.py", line 471, in validate_mapping raise MultipleInvalid(errors) voluptuous.MultipleInvalid: extra keys not allowed @ data['pipelines'][0]['success']['gerrit'] Is it known this scenario shouldn't work or am I doing something wrong? Any ideas? Thanks, Vaclav -------------------------------------------------------------- Intel Research and Development Ireland Limited Registered in Ireland Registered Office: Collinstown Industrial Park, Leixlip, County Kildare Registered Number: 308263 This e-mail and any attachments may contain confidential material for the sole use of the intended recipient(s). Any review or distribution by others is strictly prohibited. If you are not the intended recipient, please contact the sender and delete all copies.
_______________________________________________ OpenStack-Infra mailing list [email protected] http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-infra
