Tuesday, 2018-11-20

pabelangerianw: np, I think in large changes like that we need to get some sort of sign-off on other zuul operators. I am not sure how best do do that right now.00:30
clarkbpabelanger: I dont think that would be practical. And even small.changes like the ssh port one had to be reverted00:33
clarkbtesting is likely the only practical way to address this00:34
ianwyeah, if we just make sure we stress both paths now we know they're in use00:44
logan-i saw talk about the ability to freeze zuul-jobs to a tag or sha, that would have helped reduce the revert urgency.. but yeah better testing and/or 3pci seem like good things to target also00:44
*** rlandy is now known as rlandy|bbl00:52
logan-and yep ianw.. id think its pretty necessary to test a path with _no_ site variables defined in case there are others waiting to break things aside from the traceroute one.00:54
openstackgerritMerged openstack-infra/zuul-jobs master: Revert "validate-host: retry network tests and include unbound logs"  https://review.openstack.org/61884402:16
openstackgerritneilsun proposed openstack-infra/zuul master: Add type check for zuul conf  https://review.openstack.org/59191703:31
*** chandankumar has joined #zuul04:55
*** chandankumar is now known as chkumar|ruck04:56
*** bjackman has joined #zuul05:16
*** rlandy|bbl is now known as rlandy05:26
*** chkumar|ruck has quit IRC06:37
*** spsurya has joined #zuul06:39
*** rlandy has quit IRC06:39
*** bjackman has quit IRC07:13
*** chandankumar has joined #zuul07:14
*** chandankumar is now known as chkumar|ruck07:14
*** pcaruana has joined #zuul07:20
*** quiquell|off is now known as quiquell07:28
*** pcaruana has quit IRC07:34
*** bjackman has joined #zuul07:36
*** pcaruana has joined #zuul07:40
bjackmanIf you define a secret and an ansible role in a trusted project, and then a job in an untrusted project, and the role refers to the secret, is there any reason why the job shouldn't be able to import the role?07:42
bjackmanOr would that be insecure because of something about the way ansible works?07:43
*** snapiri has joined #zuul07:45
*** quiquell is now known as quiquell|brb07:46
tristanCbjackman: secrets are not attached to roles, so an untrusted project's job can use the role, but it would have to provide its own secret07:50
*** chandankumar has joined #zuul07:52
*** chkumar|ruck has quit IRC07:56
*** chandankumar is now known as chkumar|ruck07:57
bjackmantristanC, Right OK07:57
bjackmanWhat I'm trying to figure out is whether I can have an untrusted project mostly define its own configuration, but just "call" into something in a trusted project when it needs to use an API key07:58
tristanCbjackman: job using secrets has to be defined in config projects... perhaps the config project's job could read the trusted project configuration and call the api key using task defined in the config project?08:03
*** themroc has joined #zuul08:06
*** quiquell|brb is now known as quiquell08:06
tristanCi meant, to be defined in the same* project08:07
*** gtema has joined #zuul08:26
tristanCbjackman: fwiw we just published a blog post about using secret in zuul: https://www.softwarefactory-project.io/zuul-hands-on-part-5-job-secrets.html08:28
AJaegerbjackman: What I hear from you would allow a job in an untrused project to get a secret - and that's a no-go for us. We don't want a job to leak a secret like with "echo $secret" in a job. So, you might need to move both together into the config project.08:50
AJaegerbjackman: keep in mind you can use the job in the untrusted project - but you cannot define it there...08:51
*** jpena|off is now known as jpena08:53
openstackgerritTristan Cacqueray proposed openstack-infra/zuul master: executor: enable zuul_return to update Ansible inventory  https://review.openstack.org/59009208:56
*** goern has joined #zuul09:11
*** gtema has quit IRC09:19
*** snapiri has quit IRC09:36
quiquellAJaeger, tristanC: Can I configure zuul to hold nodes at its yaml files? or is just a zuul client option ?09:44
*** snapiri has joined #zuul09:45
tristanCquiquell: it's just a zuul client option, though there is a spec to enable auto hold action through rest api: https://review.openstack.org/56232109:46
*** hashar has joined #zuul09:58
bjackmantristanC, Awesome will have a read10:10
bjackmanAJaeger, Got it. But I wondered if the secret was only accessible from the tasks defined in the role (and the role is defined in the project containing the secret) then perhaps it would be safe10:11
bjackmanAJaeger, I will just define the job in the trusted project and use it from the untrusted project. It would have been nice to have the details of the tests be defined in the same repo as the code under test, but no biggie10:12
*** chkumar246 has joined #zuul10:13
tristanCtobiash: it seems like prometheus is not suitable for some of the zuul metrics, the per-job,per-project,per-pipeline,per-tenant (e.g. .SUCCESS) and per-branch,per-project,per-tenant (e.g. .resident_time) may yield too many labels and the /metrics endpoint response time is impacted...10:14
*** chkumar|ruck has quit IRC10:15
tristanCdocumentation says that cardinality over 100 should be moved away from the monitoring ( https://prometheus.io/docs/practices/instrumentation/#do-not-overuse-labels )10:16
*** chkumar246 is now known as chkumar|ruck10:18
*** gtema has joined #zuul10:23
*** sshnaidm has quit IRC10:50
*** chkumar246 has joined #zuul10:54
*** chkumar|ruck has quit IRC10:57
*** goncalo has quit IRC11:01
openstackgerritFabien Boucher proposed openstack-infra/zuul-jobs master: DNM - Negative test - Validate host role - Check third party CI SF  https://review.openstack.org/61898811:10
tobiashtristanC: we don't see real problems with that at our scale right now (using statsd_exporter)11:15
tobiashtristanC: the argumentation in your link is that this can become a problem if you have hundreds of labels and scrape that for hundreds of servers11:17
tobiashthe zuul metrics will be scraped only for one instance11:17
openstackgerritFabien Boucher proposed openstack-infra/zuul-jobs master: DNM - Validate the validate-host via the SF third party CI  https://review.openstack.org/61898911:18
fboianw: pabelanger logan- We just added the validate-host role in the test-basic-roles job of the SF third party CI for zuul-jobs. Here is the negative test https://review.openstack.org/618988 with the ianw's change (the CI catch the failure) and the positive test https://review.openstack.org/618989 (current master) that pass the CI.11:22
*** chkumar246 is now known as chkumar|ruck11:30
*** sshnaidm has joined #zuul11:41
*** chkumar246 has joined #zuul11:53
*** chkumar|ruck has quit IRC11:56
tristanCtobiash: using this test: http://paste.openstack.org/show/735721/ , the metrics endpoints output 6.5MB and localhost curl takes almost a second to complete...12:00
tristanCtobiash: the culpit is that metrics doesn't expire, so we may need to implement a cleaning thread to purge metric not updated every 10 minute or something12:02
tobiashtristanC: fair, that needs to be done12:04
tobiashtristanC: atm in our prod system with statsd_exporter I get 19MB in 0.2s12:04
tristanChaving to manually expire the per-job and per-project metric seems like extra work which makes me wonder if prometheus is the right place to store those information12:12
tristanCtobiash: but if you think that's worthy, then i can try to implement this too12:13
*** chkumar has joined #zuul12:15
*** chkumar246 has quit IRC12:18
*** hashar has quit IRC12:27
*** bhavikdbavishi has joined #zuul12:28
*** gtema has quit IRC12:33
openstackgerritPaul Belanger proposed openstack-infra/zuul master: Add support for zones in executors  https://review.openstack.org/54919712:36
*** jpena is now known as jpena|lunch12:40
*** panda|rover is now known as panda|rover|lch12:48
tobiashtristanC: hrm, expiring might also break some analysis methods, so maybe we should leave out these two metrics if they become a performance bottleneck12:52
*** chkumar246 has joined #zuul12:54
*** chkumar246 is now known as chkumar|ruck12:54
*** bhavikdbavishi has quit IRC12:55
*** quiquell is now known as quiquell|lunch12:55
*** chkumar has quit IRC12:57
*** hashar has joined #zuul13:06
*** bjackman has quit IRC13:19
*** rlandy has joined #zuul13:33
*** quiquell|lunch is now known as quiquell13:36
*** panda|rover|lch is now known as panda|rover13:37
*** chkumar246 has joined #zuul13:49
tobiashpabelanger: +2 with comment about possible docs improvement ^13:51
pabelangertobiash: thanks! looking13:51
*** chkumar|ruck has quit IRC13:52
tobiashpabelanger: so the thing that I'd like to emphasize is that the executor takes all jobs of that provider and it further doesn't execute any jobs from a different provider13:52
*** chkumar246 has quit IRC14:01
pabelangertobiash: yes, exactly14:09
*** jpena|lunch is now known as jpena14:15
*** gtema has joined #zuul14:21
openstackgerritTobias Henkel proposed openstack-infra/zuul master: Improve resource usage with semaphores  https://review.openstack.org/61900414:21
openstackgerritPaul Belanger proposed openstack-infra/zuul master: Add support for zones in executors  https://review.openstack.org/54919714:37
pabelangertobiash: updated with your comments14:37
pabelangerrcarrillocruz: if you also want to review, since you were driving the initial discussions for use case^14:38
tobiashpabelanger: thanks14:38
corvuspabelanger: is there a nodepool change for that?14:48
*** chkumar246 has joined #zuul14:53
*** hashar has quit IRC15:12
pabelangercorvus: as that patch is written, there isn't a change needed. As we use nodepool.provider for the gearman function name, however I initiall created https://review.openstack.org/618622/ but clarkb suggested we might not need if we use provider_name15:16
corvuspabelanger: ah, i -1d the zuul change because i'm still in favor of the nodepool change15:18
corvusclarkb, pabelanger: can you look at the comments in 549197 and see what you think?15:18
pabelangersure, I don't have a strong preference on which way we choose... looking15:19
dmsimardcorvus: btw I didn't want to bother you with that during summit week but for https://review.openstack.org/#/c/617680/15:27
dmsimardneither sass or node-sass comes available in a 3.5.5 version.. should I just send a patch which recompiles the scss with the latest version of sass ?15:27
dmsimardsass: https://www.npmjs.com/package/sass?activeTab=versions and node-sass: https://www.npmjs.com/package/node-sass?activeTab=versions15:27
corvusdmsimard: is this it? https://rubygems.org/gems/sass/versions/3.5.515:36
dmsimardcorvus: oh, a gem... I was looking at npm T_T15:37
corvusdmsimard: yeah, that's not confusing at all is it?15:37
corvusi feel like we should make a python sass now, since that's the cool thing to do15:37
dmsimardit's already a thing15:38
dmsimardhttps://pythonhosted.org/scss/15:38
dmsimard:p15:38
openstackgerritDavid Moreau Simard proposed openstack-infra/zuul-website master: Reduce padding to remove extraneous whitespace  https://review.openstack.org/61768015:44
openstackgerritTobias Henkel proposed openstack-infra/nodepool master: Add second level cache of nodes  https://review.openstack.org/61902515:49
openstackgerritPaul Belanger proposed openstack-infra/zuul master: Add support for zones in executors  https://review.openstack.org/54919715:57
pabelangercorvus: clarkb: tobiash: I've updated ^ to depend on https://review.openstack.org/618622/ from nodepool, which creates a provider executor-zone setting.  I still needs to add some testing, but if you'd like to confirm it is on the right track15:59
tobiashpabelanger: seems like I overlooked the discussion earlier about the original approach. executor-zones indeed sounds better and more generic16:00
pabelangeryah, the are top level with provider right now, but I think maybe I should move them into provider pools, for more granularity16:01
* tobiash is looking again16:02
tobiashpabelanger: if we want to cover az's as well, then yes this should be moved down to pools16:03
clarkbI think both of corvus' review items could be addressed with the alternative as well. for 1) make the zone provider.pool and for 2) allow an executor to register to multiple pools. Its mostly a matter of ease of configuration I think16:04
tobiashpabelanger: I also can imagine further use cases when moving this to pools like having some labels without provider stickyness and having e.g. IO heavy jobs more locally16:04
clarkband if setting an explicit arbitrary human readable string is easier than implied behavior between zuul and nodepool I'm happy with that16:05
*** bjackman has joined #zuul16:08
*** quiquell is now known as quiquell|off16:15
*** bjackman has quit IRC16:15
*** chkumar246 has quit IRC16:16
clarkbpabelanger: ok tried to dig into a the code a bit more and left some notes on 54919716:20
clarkbok and I think I've gotten through the nodepool change as well16:33
*** themroc has quit IRC16:47
*** gtema has quit IRC17:15
pabelangerk, just finishing up some food, will reply in a few17:16
openstackgerritMerged openstack-infra/zuul-jobs master: mirror-workspace-git: use port when pushing git repo through ssh  https://review.openstack.org/61885917:26
*** tobias-urdin is now known as tobias-urdin_afk17:27
pabelangerclarkb: so, you are not okay with just ignoring the zone request if nodepool sends it, but we don't have a executor setup for that zone?  My thoughts are, it would fall back to default execute:executor zone, where all jobs run17:40
openstackgerritPaul Belanger proposed openstack-infra/zuul master: Add support for zones in executors  https://review.openstack.org/54919717:41
pabelangerclarkb: for example ^17:41
clarkbpabelanger: I think we should log it at least17:41
clarkbIm not sure if it should be an error17:41
pabelangeryah, I've updated the patch to include warning about when we don't find a function from gearman17:42
corvusi like warn but not error; that way you can put zones freely in your nodepool config but not have to use them17:43
corvusthat could be nice for expressing a preference that a node be used by a certain executor even if it isn't required -- then the job still runs if all executors in that zone are offline.17:44
corvusotoh, if, say, you were just rebooting executors in a zone, maybe you'd want the job to wait.17:45
corvuswe might be tweaking this later :)17:45
pabelangerwfm!17:45
*** j^2 has joined #zuul17:55
*** hashar has joined #zuul18:08
*** bhavikdbavishi has joined #zuul18:22
*** hashar_ has joined #zuul18:23
*** hashar has quit IRC18:25
*** jpena is now known as jpena|off18:38
*** tobias-urdin_afk is now known as tobias-urdin18:38
clarkbI have made firefox very sad trying to open the py35 job log for pabelanger's most recent patchset18:43
clarkb(warning to anyone else that may try to do the same)18:44
tobiashmy chrome is happy ;)18:45
*** pcaruana has quit IRC18:47
*** hashar_ has quit IRC18:48
*** bhavikdbavishi has quit IRC18:51
openstackgerritTobias Henkel proposed openstack-infra/nodepool master: Add second level cache of nodes  https://review.openstack.org/61902519:06
openstackgerritPaul Belanger proposed openstack-infra/zuul master: Add support for zones in executors  https://review.openstack.org/54919719:12
openstackgerritTobias Henkel proposed openstack-infra/nodepool master: Add second level cache of nodes  https://review.openstack.org/61902519:13
openstackgerritTobias Henkel proposed openstack-infra/nodepool master: Cache node request zNodes  https://review.openstack.org/61880619:24
openstackgerritTobias Henkel proposed openstack-infra/nodepool master: Update node request during locking  https://review.openstack.org/61880719:24
openstackgerritTobias Henkel proposed openstack-infra/nodepool master: Add second level cache of nodes  https://review.openstack.org/61902519:24
openstackgerritTobias Henkel proposed openstack-infra/nodepool master: Add second level cache to node requests  https://review.openstack.org/61906919:24
tobiashcorvus: that might be helpful for the dynamic priorities ^19:25
pabelangerclarkb: tobiash: corvus: what are your thougts on nodepool side of making executor-zone(s), a list vs string. Since availability-zones can be a list, might be worth doing the same idea on executors.19:28
pabelangerI could see where you might want to have a executor in 2 zones19:28
*** j^2 has quit IRC19:29
corvuspabelanger: that would suggest that it needs to be a list zuul-side, not nodepool side.19:29
corvusi like string in both places though19:29
corvus(in meeting now, can chat later)19:30
pabelangerack19:30
pabelangerno rush, something I was thinking off adding tests in nodepool19:30
tobiashthat even could be added later if someone has a need for this19:31
pabelangerYup19:32
*** sshnaidm has quit IRC19:32
*** sshnaidm has joined #zuul19:40
*** sshnaidm is now known as sshnaidm|afk19:40
tobiashclarkb: if you have time, 599567 in combination with 599573 would solve an operational problem we have in case the vm that hosts the scheduler goes down without a chance to terminate connections19:40
*** j^2 has joined #zuul20:25
openstackgerritPaul Belanger proposed openstack-infra/nodepool master: Add executor-zone support for providers  https://review.openstack.org/61862220:29
clarkbtobiash: I have to refresh my memory on how keepalives work on linux every time this comes up20:31
clarkbtobiash: iirc you have to enable them on the host kernel too right?20:31
tobiashclarkb: I think they are enabled on any system I've looked20:32
clarkbya looks like they are enabled by default but can be disabled. In this case probably good enough for gear20:33
clarkband your implementation uses the default values from linux20:33
clarkband it is disabled by default All of that looks fine to me20:34
clarkbcorvus: ^ is that something you want to review too?20:34
*** hashar_ has joined #zuul20:34
tobiashclarkb: thanks! I think I've used the same defaults as the server component of gear (from which I copy&pasted most of it)20:36
clarkbhttps://review.openstack.org/#/c/599573/1 fails testing implying that tox siblings instals isn't working?20:36
tobiashLooks like20:37
AJaegerclarkb: don't we need gear in required-projects for tox siblings to work?20:38
*** dkehn has joined #zuul20:38
clarkbAJaeger: maybe? the depends-on pulled it in20:39
clarkbAJaeger: the repo was on disk but maybe the role doesn't notice it unless it is a required-project20:39
tobiashclarkb: ah interesting I already wondered why that failed to do the correct sibling install20:41
AJaegerclarkb: http://git.openstack.org/cgit/openstack-infra/zuul-jobs/tree/roles/tox/library/tox_install_sibling_packages.py#n6920:42
tobiashAJaeger: thanks for the tipp20:42
AJaegerbut the code is not clear to me that it really does it - it's just what I remember...20:42
AJaegertobiash, clarkb http://git.openstack.org/cgit/openstack-infra/zuul-jobs/tree/roles/tox/tasks/siblings.yaml#n13 is the line that confirms my statement20:44
AJaegerso, if you really want to test, add required-projects, could be a DNM ;)20:44
*** hashar_ has quit IRC22:06
*** j^2 has quit IRC22:25
*** mugsie has quit IRC23:06

Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!