# limitations under the License.
#
+unified_mode true
+
default_action :create
-property :extension, :kind_of => String, :name_attribute => true
+property :extension, :kind_of => String, :name_property => true
property :site, :kind_of => String, :required => true
property :source, :kind_of => String
property :template, :kind_of => String
source new_resource.source
owner node[:mediawiki][:user]
group node[:mediawiki][:group]
- mode 0o755
+ mode "755"
files_owner node[:mediawiki][:user]
files_group node[:mediawiki][:group]
- files_mode 0o755
+ files_mode "755"
end
else
extension_repository = new_resource.repository || default_repository
action :sync
repository extension_repository
reference extension_reference
+ depth 1
enable_submodules true
user node[:mediawiki][:user]
group node[:mediawiki][:group]
- ignore_failure extension_repository.start_with?("git://github.com/wikimedia/mediawiki-extensions")
+ ignore_failure extension_repository.start_with?("https://github.com/wikimedia/mediawiki-extensions")
end
end
- if new_resource.template # ~FC023
+ if new_resource.template
declare_resource :template, "#{mediawiki_directory}/LocalSettings.d/Ext-#{new_resource.extension}.inc.php" do
cookbook new_resource.template_cookbook
source new_resource.template
user node[:mediawiki][:user]
group node[:mediawiki][:group]
- mode 0o664
+ mode "664"
variables new_resource.variables
end
else
content "<?php wfLoadExtension( '#{new_resource.extension}' );\n"
user node[:mediawiki][:user]
group node[:mediawiki][:group]
- mode 0o664
+ mode "664"
end
end
-
- execute "#{extension_directory}/composer.json" do
- action :nothing
- command "composer update --no-dev"
- cwd mediawiki_directory
- user node[:mediawiki][:user]
- group node[:mediawiki][:group]
- only_if { ::File.exist?("#{extension_directory}/composer.json") }
- subscribes :run, "git[#{extension_directory}]"
- end
end
action :delete do
end
def default_repository
- "git://github.com/wikimedia/mediawiki-extensions-#{new_resource.extension}.git"
+ "https://github.com/wikimedia/mediawiki-extensions-#{new_resource.extension}.git"
end
end
def after_created
- if update_site
- notifies :update, "mediawiki_site[#{site}]"
- else
- site_directory = node[:mediawiki][:sites][site][:directory]
-
- notifies :create, "template[#{site_directory}/w/LocalSettings.php]"
- notifies :run, "execute[#{site_directory}/w/maintenance/update.php]"
- end
+ notifies :update, "mediawiki_site[#{site}]" if update_site
end