X-Git-Url: https://git.openstreetmap.org/chef.git/blobdiff_plain/ee6580d55e1bbed06787ac3e5f18af1bb35c8e6d..b4f387dd6b51418fc830b25acfafceb7e75fe1d0:/cookbooks/mediawiki/resources/extension.rb diff --git a/cookbooks/mediawiki/resources/extension.rb b/cookbooks/mediawiki/resources/extension.rb new file mode 100644 index 000000000..6093bdbe9 --- /dev/null +++ b/cookbooks/mediawiki/resources/extension.rb @@ -0,0 +1,42 @@ +# +# Cookbook Name:: mediawiki +# Resource:: mediawiki_extension +# +# Copyright 2015, OpenStreetMap Foundation +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +actions :create, :delete +default_action :create + +attribute :name, :kind_of => String, :name_attribute => true +attribute :site, :kind_of => String, :required => true +attribute :source, :kind_of => String +attribute :template, :kind_of => String +attribute :variables, :kind_of => Hash, :default => {} +attribute :version, :kind_of => String +attribute :repository, :kind_of => String +attribute :tag, :kind_of => String +attribute :update_site, :kind_of => [TrueClass, FalseClass], :default => false + +def after_created + if update_site + notifies :update, "mediawik_site[site]" + else + site_directory = node[:mediawiki][:sites][site][:directory] + + notifies :create, "template[#{site_directory}/LocalSettings.php]" + notifies :run, "execute[#{site_directory}/maintenance/update.php]" + end +end