跳到内容
新问题

对这个项目有疑问吗?注册一个免费的GitHub帐户以打开一个问题,并联系其维护者和社区。

点击“注册GitHub”,即表示您同意我们的服务条款隐私声明。我们偶尔会向您发送与帐户相关的电子邮件。

已经在GitHub上了?登录到您的帐户

简化PL和独立插件发布 #1061

正常开放
1个任务
爱情已打开此问题2024年3月18日·10条评论
正常开放
1个任务

简化PL和独立插件发布 #1061

爱情已打开此问题2024年3月18日·10条评论
受让人
标签
基础设施 整体性能插件基础设施的问题 [类型]增强功能 改进现有功能的建议

评论

@爱情
复制链接
成员

目前,当新的PL插件版本发布时,会触发两个工作流:

  • 部署到WordPress.org(部署性能插件)
  • 部署独立插件(部署每个独立插件)

但是独立插件也可以使用工作流_发货不需要创建任何版本的触发器。如所述@威斯顿鲁特,在这种情况下,将没有手动部署的此类插件的记录工作流_发货触发器-#1033(评论)

TODO公司

  • 简化插件发布和发布说明。

(可以通过正在进行的讨论添加更多TODO)

@爱情 爱情提到了这个问题 2024年3月18日
3项任务
@费利萨尔茨
复制链接
成员

@爱情我们有哪些选择?

快速想到的方法是为各个产品创建GitHub版本,然后工作流相应地进行操作,例如基于版本名称。例如,我们可以使一个名为webp上传1.0.6触发部署webp上传1.0.6版本的插件。这是一种方法。

或者,我们可以考虑拥有一个甚至创建这将更加有效,因为所有信息都已经存在:

  • 版本号将出现在代码和自述文件中。
  • 更改日志将在自述文件中。
    工作流可以提取并自动创建发布,然后也可以进行部署。

可能还有其他方法。让我们集思广益,讨论一下我们的选项,然后在开始实施之前做出决定。

@费利萨尔茨 费利萨尔茨补充[类型]增强功能 改进现有功能的建议 基础设施 整体性能插件基础设施的问题标签2024年3月18日
@爱情
复制链接
成员 作者

爱情 评论2024年3月26日

@费利萨尔茨如果我们为每个独立插件创建单独的发布版本,那么发布页面上的发布条目会让我们大吃一惊。我想到的另一种方法是保留两个发布工作流:

  • 性能实验室插件-发布标题可以是性能实验室3.0.0

    发布变更日志示例

    特征
    //更多细节。

    增强功能
    //更多细节。

    漏洞修补
    //更多细节。

  • 性能实验室功能-发布标题可以是性能实验室功能1.0.0

    发布变更日志示例

    WebP上传-1.0.3

    特征
    //更多细节。

    增强功能
    //更多细节。

    漏洞修补
    //更多细节。

    投机规则-1.2.0

    特征
    //更多细节。

    增强功能
    //更多细节。

    漏洞修补
    //更多细节。

它将帮助我们保持发布实体最小化,并更好地组织更改日志。

@威斯顿鲁特
复制链接
成员

如果为PR分配了特定于插件的里程碑,为什么很难跟踪发布日志?

@爱情
复制链接
成员 作者

如果为PR分配了特定于插件的里程碑,为什么很难跟踪发布日志?

我是指发布页面上的发布条目。很抱歉给您带来混乱。我已经更新了上面的评论。

@威斯顿鲁特 威斯顿鲁特更改了标题简化PL和standlaone插件的发布 简化PL和独立插件的发布 2024年4月1日
@瑞士风格
复制链接
成员

因为我们在这里讨论的是发布和部署:

对于像Gutenberg和Web Stories这样的插件来说,最有效的是使用部署作为发布新版本的入口点(而不是释放作为入口点)。例如,如果您想发布插件的新版本:

  1. 在GitHub上手动调度/触发发布工作流
  2. 由于环境保护,需要有人批准此“部署”
  3. 然后,工作流更新版本号、更改日志、创建GitHub版本等,并将插件上传到WordPress.org

优点:非常容易使用,由于环境保护,额外的安全性,发布新版本不需要更改代码。

如果我们为每个独立插件创建单独的版本,我们将被发布页面上的发布条目轰炸

我不会说“被轰炸”。这不像我们每天发布一次。所以我认为这不是一个问题。“性能实验室功能”的想法很有趣,但IMHO有点过火。

GitHub版本并不是真正的真相来源。人们会去WordPress.org和WordPress管理员那里安装插件并获取新版本。

@爱情 爱情自我分配的2024年4月9日
@爱情
复制链接
成员 作者

在开始之前,我们还要收集以下信息:

  • 我们是否对所有插件使用“n.e.x.t”版本?
  • 我们需要所有插件的发布分支,还是只需要PL分支?

@费利萨尔茨
复制链接
成员

@最可爱的

我们是否对所有插件使用“n.e.x.t”版本?

我刚打开#1118在这方面。换句话说,是的,我们应该这样做。我们只能等到npm运行时间命令已得到增强,以支持其他插件(这是issue建议的技术增强)。

在我们甚至不知道什么时候发布或在哪个版本中发布代码之前,必须在PR中对代码进行特定版本的发布,这是一种糟糕的体验,需要大量的手动监督。这通常意味着我们添加一个版本号,并初步碰撞插件版本。更多内容请参阅新问题。

@爱情
复制链接
成员 作者

爱情 评论2024年4月15日

如前一次性能聊天中所述,以下是我们可以遵循的自动化发布和自动化的步骤:

  • 这个插件名称-n.e.x.t里程碑名称插件名称-x.x.x版本并用以前的名称创建一个新的里程碑,即。插件名称-n.e.x.t.
  • 发布分支创建并更新@自行李箱上的标签。
  • 变更日志生成。而不是手动将更改日志添加到自述.txt,我们添加=不另起作用=占位符,并在创建新版本时用发行说明更新它。

一旦通过插件slug和里程碑触发插件发布,将执行以下步骤:

图TD;A[触发发布工作流]-->B[创建草稿发布];B-->C[附加资产以释放];B-->D[在自述文件中创建发布分支、bump版本并更新n.e.x.t];D-->E[Add changelog to plugin];D-->G[以主干为基础创建PR];G-->H[在PR上附加所需信息];H-->I[更新当前里程碑];I-->J[创建新的里程碑];

@瑞士风格
复制链接
成员

感谢您制作图表,非常有用!

为什么在readme.txt中更新版本之前创建带有资产的草案版本?为什么工作流创建了一个PR,而不仅仅是自动部署到WordPress.org?也许我遗漏了一些东西,但IMO我们应该尽可能地实现自动化,以消除人为干预和错误的需要。

@爱情
复制链接
成员 作者

爱情 评论2024年4月15日

但国际海事组织(IMO)认为,我们应该尽可能实现自动化,以消除人为干预和错误的需要。

同意💯!

为什么在readme.txt中更新版本之前创建带有资产的草案版本?

哼,这个步骤需要删除,因为它将作为更新的一部分包含在内@自n.e.x.t起和碰撞版本。我已经更新了。除此之外,

有两种可能的情况:

  • 手动创建发布分支,在自述文件中更新版本@自标签在发布分支中更新。完成这些步骤后,发布就完成了。
  • 或者,此过程可以自动化,从而创建草稿版本。此草稿状态允许在正式发布之前进行最终检查,以确保所有更新都符合预期,包括更改日志、更新的文件等。

现在,关于PR方面,它涉及从发布分支到主干的更改。这是必要的,因为在发布分支上,自述文件有更新的版本,并且changelog和@自n.e.x.t起搜索和替换,这些修改也需要合并到主干中。目前,这个过程是手动的,但我建议将其自动化。

免费注册 在GitHub上加入此对话.已经有帐户了吗?登录以发表评论
标签
基础设施 整体性能插件基础设施的问题 [类型]增强功能 改进现有功能的建议
项目
状态:定义
开发

没有分支或拉请求

4名参与者