Joomla - 获取最新版本的Zip链接 - scrip安装



Joomla有最新版本的链接吗?例如,WordPress有一个指向 https://wordpress.org/latest.zip 的链接,所以我知道我可以随时下载该zip并获得最新版本。

我正在开发 ansible 脚本来自动设置服务器并安装 joomla,我需要保持简单,所以我想发送一个链接或 api 调用或其他东西来始终获得最新的 joomla 版本zip。

任何帮助表示赞赏。大卫

好问题 - 它当然不像WordPress那么容易。

您可以通过以下方式使用 ansible 下载最新版本:

将您提到的 XML 文件下载到本地计算机:

   - name: download latest joomla packages list to local machine
     tags: joomlanew
     get_url:
       url: https://update.joomla.org/core/sts/extension_sts.xml
       dest: "{{ role_path }}/scripts/extension_sts.xml"
       force: yes
     delegate_to: 127.0.0.1

运行 python 脚本来解析此 XML 以查找最新的包 zip 文件:

   - name: find latest joomla version
     tags: joomlanew
     command: python ./latest_joomla.py
     args:
       chdir: "{{ role_path }}/scripts"
     delegate_to: 127.0.0.1
     register: xmlresp

然后,您可以在 ansible 中使用 {{ xml.resp.stdout }} 作为下载代码的输入:

- name: download & unzip joomla
  tags: joomlanew
  unarchive:
    src: "{{ xmlresp.stdout }}"
    dest: /home/username/public_html/
    remote_src: yes
    mode: 0755

仅供参考,python脚本中用于解析XML的代码将是:

from xml.dom import minidom
xmldoc = minidom.parse('extension_sts.xml')
itemlist = xmldoc.getElementsByTagName('downloadurl')
last=(len(itemlist))-1
print (itemlist[last].firstChild.data)

好的,经过一些挖掘,我想最好的方法是Joomla Core的方式:

  1. 从 Joomla Core Update 站点 (https://update.joomla.org/core/list.xml) 的最后一个条目中获取详细信息网址 - 在本例中为 https://update.joomla.org/core/sts/extension_sts.xml
  2. 从您在步骤 1 中获得的 url 中获取最后一个条目的下载网址 - 在这种情况下 - 您需要确保这不是补丁网址,而是更新
您可以使用

此链接下载最新版本:https://github.com/joomla/joomla-cms/archive/staging.zip

最新更新