Add Composer, Mermaid extension
This commit is contained in:
@@ -9,5 +9,6 @@ version '0.1.0'
|
||||
depends "mediawiki"
|
||||
depends "ark"
|
||||
depends "backup"
|
||||
depends "composer"
|
||||
depends "kosmos-nginx"
|
||||
depends "kosmos-base"
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
|
||||
include_recipe 'apt'
|
||||
include_recipe 'ark'
|
||||
include_recipe 'composer'
|
||||
|
||||
# FIXME: For now run the update script manually after updating:
|
||||
#
|
||||
@@ -93,10 +94,16 @@ nginx_site 'mediawiki' do
|
||||
enable true
|
||||
end
|
||||
|
||||
#
|
||||
# Extensions
|
||||
#
|
||||
|
||||
mediawiki_credentials = Chef::EncryptedDataBagItem.load('credentials', 'mediawiki')
|
||||
|
||||
#
|
||||
# Cleantalk Antispam
|
||||
#
|
||||
|
||||
ark "antispam" do
|
||||
url "https://github.com/CleanTalk/mediawiki-antispam/archive/1.8.zip"
|
||||
path "#{node['mediawiki']['webdir']}/extensions/Antispam"
|
||||
@@ -106,7 +113,10 @@ ark "antispam" do
|
||||
action :dump
|
||||
end
|
||||
|
||||
#
|
||||
# MediawikiHubot extension
|
||||
#
|
||||
|
||||
# requires curl extension
|
||||
if platform?('ubuntu') && node[:platform_version].to_f < 16.04
|
||||
package "php5-curl"
|
||||
@@ -174,10 +184,40 @@ $wgArticlePath = "/$1";
|
||||
"$wgCTAccessKey = \"#{mediawiki_credentials['antispam_key']}\";")
|
||||
file.insert_line_if_no_match(/MediawikiHubot\.php/,
|
||||
"require_once \"$IP/extensions/MediawikiHubot/MediawikiHubot.php\";")
|
||||
|
||||
file.insert_line_if_no_match(/Mermaid/,
|
||||
"wfLoadExtension( 'Mermaid' );")
|
||||
|
||||
file.write_file
|
||||
end
|
||||
end
|
||||
|
||||
#
|
||||
# Composer dependencies
|
||||
#
|
||||
|
||||
file "#{node['mediawiki']['webdir']}/composer.local.json" do
|
||||
requires = { "require": {
|
||||
"mediawiki/mermaid": "~1.0"
|
||||
}}.to_json
|
||||
content requires
|
||||
owner node['nginx']['user']
|
||||
group node['nginx']['group']
|
||||
end
|
||||
|
||||
composer_project node['mediawiki']['webdir'] do
|
||||
dev false
|
||||
quiet true
|
||||
prefer_dist false
|
||||
user node['nginx']['user']
|
||||
group node['nginx']['group']
|
||||
action :install
|
||||
end
|
||||
|
||||
#
|
||||
# Backup
|
||||
#
|
||||
|
||||
unless node.chef_environment == "development"
|
||||
node.override["backup"]["mysql"]["host"] = "localhost"
|
||||
node.override["backup"]["mysql"]["username"] = "root"
|
||||
|
||||
Reference in New Issue
Block a user