Page MenuHomePhabricator

Update wikimedia apt repo to include debs for shiny-server
Closed, DeclinedPublic

Description

Shiny-server is the application that hosts the discovery team dashboards. This package is kinda-sorta debianized, but available only as a direct download and not through an apt repository. The puppet code that handles the dashboards would be a bit nicer if we could import the package and not have to muck around manually.

The git repo is: https://github.com/rstudio/shiny-server.git
The package is built by: cd packaging && ./make-package.sh
Or the package can be downloaded from: https://download3.rstudio.org/ubuntu-12.04/x86_64/shiny-server-1.4.0.721-amd64.deb

This is not debianized in the standard manner, it works via cpack which is part of cmake.

Event Timeline

EBernhardson raised the priority of this task from to Needs Triage.
EBernhardson updated the task description. (Show Details)
EBernhardson added a project: acl*sre-team.
EBernhardson subscribed.
fgiunchedi subscribed.

is the package already in use? Some of the maintainer scripts could be simplified (https://github.com/rstudio/shiny-server/tree/master/packaging/debian-control) but generally once we have a debian source package .dsc plus the files referenced inside and binary packages we should be able to import it. Also I couldn't find any reference in puppet to shiny-server yet?

The package is not currently in use in production, its proposed for use in mediawiki-vagrant (https://gerrit.wikimedia.org/r/#/c/221827/). The server is currently manually deployed to http://searchdata.wmflabs.org serving up the discovery team dashboards.

Annoyingly cpack, which is how this package generates its debs, does not build a source package. The documentation specifically says:

Note: Only binary package are supported. source package do not really make sense since build process is cmake driven.

what's the medium/long term idea? just labs and/or MWV? (see also @yuvipanda's thoughts on the code review, related to this)

I don't think there is any current plan to move this into production, there is no expectation of uptime for dashboards (yet). Puppetizing the setup was mostly to ensure people can easily hack on the dashboards, and to make searchdata.wmflabs.org recreatable.

I'm slightly dubious that a shell script will be any simpler of a solution, the related puppet code is pretty straight forward and handles updates much better. I worry that with something provisioned by a simple shell script the actual configuration of the machine will easily drift from the script that sets it up. Writing the script in such a way that you can re-run it on a provisioned instance to get the latest settings is possible but seems it might be much more error prone.

I'll poke around though and try it out, see if it seems reasonable.

EBernhardson claimed this task.

wrote some shell scripts, will see how they work out.

For archive happiness, this was done in T164603 :)