如何创建自定义 Snapcraft 频道?

Posted

技术标签:

【中文标题】如何创建自定义 Snapcraft 频道?【英文标题】:How to create a custom Snapcraft channel? 【发布时间】:2021-08-08 03:56:00 【问题描述】:

我什至只能在文档中找到几个地方表明这是可能的,但显然是可能的。

在通道之间移动快照有助于管理用户在稳定通道的稳定性和边缘通道中的尖端功能(作为任意示例)之间进行任何权衡的期望。 但它对于 beta 测试或当快照需要恢复到以前的版本时也是一种有用的技术。 -- https://snapcraft.io/docs/release-management


kubectl(见下文)为例,除了默认的latest 频道外,每个旧的次要版本都有一个频道。

我们即将发布一个与 Ubuntu 16.04 及更低版本不兼容的新版本,我们希望将旧版本提供给这些用户。我们怎样才能做到这一点?

❯ snap info kubectl
name:      kubectl
summary:   Command line client for controlling a Kubernetes cluster.
publisher: Canonical✓
store-url: https://snapcraft.io/kubectl
contact:   https://www.ubuntu.com/kubernetes
license:   Apache-2.0
description: [...]
snap-id: ZgG2URycDgvxSVskfoZxn44uaRMw0iwe
channels:
  latest/stable:    1.21.1         2021-05-14 (1976) 11MB classic
  latest/candidate: 1.21.1         2021-05-14 (1976) 11MB classic
  latest/beta:      1.21.1         2021-05-14 (1976) 11MB classic
  latest/edge:      1.21.1         2021-05-14 (1976) 11MB classic
  1.22/stable:      –                                     
  1.22/candidate:   –                                     
  1.22/beta:        –                                     
  1.22/edge:        1.22.0-alpha.1 2021-04-29 (1945) 11MB classic
  1.21/stable:      1.21.1         2021-05-13 (1976) 11MB classic
  1.21/candidate:   1.21.1         2021-05-13 (1976) 11MB classic
  1.21/beta:        1.21.1         2021-05-13 (1976) 11MB classic
  1.21/edge:        1.21.1         2021-05-13 (1976) 11MB classic
  1.20/stable:      1.20.7         2021-05-13 (1949)  9MB classic
  1.20/candidate:   1.20.7         2021-05-13 (1949)  9MB classic
  1.20/beta:        1.20.7         2021-05-13 (1949)  9MB classic
  1.20/edge:        1.20.7         2021-05-13 (1949)  9MB classic
  1.19/stable:      1.19.11        2021-05-13 (1947) 10MB classic
  1.19/candidate:   1.19.11        2021-05-13 (1947) 10MB classic
  1.19/beta:        1.19.11        2021-05-13 (1947) 10MB classic
  1.19/edge:        1.19.11        2021-05-13 (1947) 10MB classic
  1.18/stable:      1.18.19        2021-05-13 (1951) 10MB classic
  1.18/candidate:   1.18.19        2021-05-13 (1951) 10MB classic
  1.18/beta:        1.18.19        2021-05-13 (1951) 10MB classic
  1.18/edge:        1.18.19        2021-05-13 (1951) 10MB classic
  1.17/stable:      1.17.17        2021-01-15 (1777) 10MB classic
  1.17/candidate:   1.17.17        2021-01-15 (1777) 10MB classic
  1.17/beta:        1.17.17        2021-01-15 (1777) 10MB classic
  1.17/edge:        1.17.17        2021-01-15 (1777) 10MB classic
  1.16/stable:      1.16.15        2020-10-20 (1639) 10MB classic
  1.16/candidate:   1.16.15        2020-10-20 (1639) 10MB classic
  1.16/beta:        1.16.15        2020-10-20 (1639) 10MB classic
  1.16/edge:        1.16.15        2020-10-20 (1639) 10MB classic
  [...]

【问题讨论】:

【参考方案1】:

这些被称为“曲目”。每个渠道都有自己的优势、beta、候选和稳定渠道。

有一个过程要求您通过 forum.snapcraft.io 话语请求新曲目。有关该过程的更多详细信息,请参阅https://snapcraft.io/docs/process-for-aliases-auto-connections-and-tracks。

【讨论】:

以上是关于如何创建自定义 Snapcraft 频道?的主要内容,如果未能解决你的问题,请参考以下文章

信息发布员和频道管理员如何查看dedecms自定义表单内容

从未调用过投射自定义频道回调

如何在Docker文件中从自定义文件通道安装conda包?

discord.js 没有发送到自定义频道

织梦后台频道页调用新建模型中的自定义字段所感

Django 频道 - 自定义路由似乎不起作用