The tarball is generated via the OBS source service, but Grafana needs to ship the compiled frontend assets as well, which have to be built by running yarn and grunt inside the source tree (see https://github.com/grafana/grafana#building-frontend-assets). This can't be done at build time on OBS, because it involves downloading and installing packages from the internet, so instead we have a Makefile which does the following: - Runs `osc service disabledrun` to get the latest source tarball - Unpacks the tarball to a temporary directory - Runs `yarn install --pure-lockfile && grunt release` - Adds the generated "vendor" and "public" content to the tarball, then compresses it with xz. - The tarball can then be used by OBS to build an RPM. In order for this to work you need to have npm6, yarn and grunt installed. To get set up, run: # zypper in npm6 # npm install -g yarn # npm install -g grunt-cli Then, to package a new release of Grafana, run `make` then `osc ci` and you should be good. Please direct any questions to Tim Serong