Page MenuHomePhabricator

Have a Citoid Vagrant role
Closed, ResolvedPublic

Description

Currently, VE relies on the Cite extension in Mediswiki-Vagrant, but with the introduction of Citoid into production, it'd be good to have it in Vagrant as well.

To achieve that, we need to:

  • create Zotero Vagrant roles
  • create a Citoid Vagrant role

Event Timeline

mobrovac raised the priority of this task from to Needs Triage.
mobrovac updated the task description. (Show Details)
mobrovac added subscribers: mobrovac, Mvolz.

I created https://gerrit.wikimedia.org/r/#/c/206936/ which does this for the extension, but not the service. Is this task asking for the former or the latter (or both)?

I created https://gerrit.wikimedia.org/r/#/c/206936/ which does this for the extension,

Great start! Thnx @Jdforrester-WMF

Is this task asking for the former or the latter (or both)?

The whole shebang, ideally. Having a self-contained, local dev citoid (service+deps+ext) would greatly easy things for newcomers.

Jdforrester-WMF set Security to None.

I've submitted a patch to gerrit with a Citoid service vagrant role. This is my first time doing this, so please review mercilessly and let me know what I messed up: https://gerrit.wikimedia.org/r/#/c/217220/

Change 217220 had a related patch set uploaded (by Dpatrick):
Add Citoid service to vagrant role

https://gerrit.wikimedia.org/r/217220

Zotero should be running/configured for the citoid role as well. The service alone can run without it, but the tests won't pass, for instance. At some point we could separate zotero out of the role, but that will have to wait until zotero is separated better from the service.

Zotero should be running/configured for the citoid role as well.

Yup, as we all know veery well :)

At some point we could separate zotero out of the role, but that will have to wait until zotero is separated better from the service.

For consistency, it should have its own module, the citoid role could then just include it.

My latest patchset adds the Zotero Translation Server as well.

@mobrovac: How do I create a dependency between roles such that forwarded ports are enabled properly? Right now, citoid requires zotero and Puppet deploys things as expected, however, Vagrant does not setup forwarding.

Also, I have a workaround in place to deal with /usr/lib/xulrunner-devel-24.0/sdk/bin/xpcshell, as installed by the xulrunner-dev package, not being executable. Can someone fix that in our package?

My latest patchset adds the Zotero Translation Server as well.

Cool! I'll take a look at it.

@mobrovac: How do I create a dependency between roles such that forwarded ports are enabled properly? Right now, citoid requires zotero and Puppet deploys things as expected, however, Vagrant does not setup forwarding.

That's a feature of the MW Vagrant plugin - it sets up settings only for roles explicitly enabled by the user, but not for dependant roles/modules as well. Tu turn on port forwarding for Zotero as well, you'll need to add a line to modules/role/settings/citoid.yaml.

Also, I have a workaround in place to deal with /usr/lib/xulrunner-devel-24.0/sdk/bin/xpcshell, as installed by the xulrunner-dev package, not being executable. Can someone fix that in our package?

Good question. I'm adding @akosiaris in the hope that he can answer that one.

Also, I have a workaround in place to deal with /usr/lib/xulrunner-devel-24.0/sdk/bin/xpcshell, as installed by the xulrunner-dev package, not being executable. Can someone fix that in our package?

Why not just do a file { '/usr/lib/xulrunner-devel-24.0/sdk/bin/xpcshell': mode => '555' } instead ?

Good question. I'm adding @akosiaris in the hope that he can answer that one.

I 've tried. I 've failed and gave up. Easier that I should but given the time this package takes to build (3/4 of a day) I found it cheaper to bypass it for now. Also this package is unsupported from upstream, another one of zotero's problems. I 'd rather we removed it from the repo altogether than spend time fixing it.

Also, I have a workaround in place to deal with /usr/lib/xulrunner-devel-24.0/sdk/bin/xpcshell, as installed by the xulrunner-dev package, not being executable. Can someone fix that in our package?

Why not just do a file { '/usr/lib/xulrunner-devel-24.0/sdk/bin/xpcshell': mode => '555' } instead ?

I was trying avoid modification of package-provided files. But I'll consider a chmod.

Change 217220 merged by jenkins-bot:
Add Citoid service and new Zotero role

https://gerrit.wikimedia.org/r/217220

mobrovac removed a project: Patch-For-Review.
mobrovac removed a subscriber: gerritbot.