Define the update action for mediawiki_site
authorTom Hughes <tom@compton.nu>
Wed, 1 Apr 2015 08:15:29 +0000 (09:15 +0100)
committerTom Hughes <tom@compton.nu>
Wed, 1 Apr 2015 08:26:30 +0000 (09:26 +0100)
cookbooks/mediawiki/providers/site.rb
cookbooks/mediawiki/resources/site.rb

index 8d00348..1548da5 100644 (file)
@@ -422,6 +422,31 @@ action :create do
   end
 end
 
+action :update do
+  mediawiki_directory = "#{site_directory}/w"
+
+  template "#{mediawiki_directory}/LocalSettings.php" do
+    cookbook "mediawiki"
+    source "LocalSettings.php.erb"
+    owner node[:mediawiki][:user]
+    group node[:mediawiki][:group]
+    mode 0664
+    variables :name => new_resource.name,
+              :directory => mediawiki_directory,
+              :database_params => new_resource.database_params,
+              :mediawiki => new_resource.mediawiki_params
+    notifies :run, "execute[#{mediawiki_directory}/maintenance/update.php]"
+  end
+
+  execute "#{mediawiki_directory}/maintenance/update.php" do
+    action :run
+    command "php maintenance/update.php --quick"
+    cwd mediawiki_directory
+    user node[:mediawiki][:user]
+    group node[:mediawiki][:group]
+  end
+end
+
 action :delete do
   apache_site new_resource.name do
     action :delete
index ca019c8..fa97814 100644 (file)
@@ -17,7 +17,7 @@
 # limitations under the License.
 #
 
-actions :create, :delete
+actions :create, :update, :delete
 default_action :create
 
 attribute :name, :kind_of => String, :name_attribute => true