Momentarily we are in the process of adapting our new Wikibase to our needs which is a containerized Kubernetes cluster using the Dockerfiles. The Wikibase in question has the URL https://muwi.epfl.ch/
Overarching goal: We want to associate Wiki pages with Items in order to be able to render SPARQL query results.
Documentation: From the issue "documentation for sites setup" I took that the Wikibase Installation Manual is the way to go. My problem is that I couldn't find documentation that thoroughly explains
- what the differences are between the architectural decisions (enable Repo/Client only, both, or none)
- how the out-of-the-box configuration in the Docker containers behaves with regard to these setup options
- how to setup Wikibase Clients with their own databases
Comparing the pre-configured LocalSettings.php to the installation guide reveals that both Repo and Client are enabled even if the true flags for $wgEnableWikibase[Repo/Client] are not set (probably true by default but still a source of confusion for newbies). But the bigger confusion for me stems from section 4 "Let the repo-wiki know about the databases of the other client-wikis" because in the standard config both Repo and Client seem to be using the SQL database my_wiki, whereas in the installation guide, the two Clients seem to somehow be using their own databases enwiki, fawiki. I would be thankful if someone could reference existing documentation regarding the docker images and configuring the pre-configured client so that sitelinks can be used.
Intermediate goal: On every Item page there should (for now) be two sitelinks boxes on the right side, one for the internal Wiki called musewiki and one for Wikipedia. The internal Wiki is one Client only and it is in English.
Undertaken steps: Following the guide lead to me adding the following lines to LocalSettings.php:
$wgWBRepoSettings['siteLinkGroups'] = ['musewiki', 'wikipedia']; $wgWBClientSettings['siteLinkGroups'] = ['musewiki', 'wikipedia'];
and configuring the heading in https://muwi.epfl.ch/wiki/MediaWiki:Wikibase-sitelinks-musewiki which adds the two sitelinks boxes alright.
Then I executed
php addSite.php --pagepath=https://muwi.epfl.ch/wiki/\$1 --filepath=https://muwi.epfl.ch/wiki/\$1 --language en --interwiki-id en en musewiki
which added the Wiki to the sites table in the my_wiki database (the only database at present).
Problem and resolution attempts:
From here on, I am a bit lost. The sitelink box for wikipedia is not working (does not allow you to search for pages), the sitelink box for musewiki pretends to let you search for a page but doesn't (example item) and the SetSiteLink-page (trying to link the Item Class to the page with the same name) returns the error
A page "https://muwi.epfl.ch/wiki/Class" could not be found on "en".
Following the installation guide and without better knowledge I added to the config the lines
$wgLocalDatabases = [ 'my_wiki' ]; $wgWBRepoSettings['localClientDatabases'] = array( 'en' => 'my_wiki', );
which does not resolve the problem. Then I made an attempt to configure the Client using the Required settings from the Advanced_configuration doc:
$wgWBClientSettings['repoUrl'] = 'https://muwi.epfl.ch'; $wgWBClientSettings['repoScriptPath'] = '/w'; $wgWBClientSettings['repoArticlePath'] = '/wiki/$1'; $wgWBClientSettings['siteGlobalID'] = 'en'; $wgWBClientSettings['siteGroup'] = 'musewiki';
but this didn't change the behaviour in any way.
Kindly asking for help:
- How do I need to change the configuration?
- Do I have to create a new SQL database for the Wikibase Client?
- Is there a particular maintenance script that needs to be run?