从 GitLab 运行程序/管道中创建版本

2024-01-26

随着 2019 年 1 月 Gitlab 11.7 的发布,我们获得了新的关键功能为您的项目发布版本 https://about.gitlab.com/2019/01/22/gitlab-11-7-released/#publish-releases-for-your-projects。我想要的正是该页面上的屏幕截图显示的内容,并且我希望能够使用下载编译的二进制文件发布API https://docs.gitlab.com/ee/api/releases/.

我可以手动完成。当然,可以找到手动方法的说明这里关于堆栈溢出 https://stackoverflow.com/q/29013457/1129682。我需要帮助解决的问题是将其作为 CI/CD 管道的一部分进行处理,而人们可以轻松找到的答案并未涵盖这一点。

发行说明包含文档链接 https://docs.gitlab.com/ee/user/project/releases/index.html,其中指出:

我们建议将此作为 CI/CD 发布管道中的最后步骤之一。

由此我推测这是可能的。然而,我能想到的唯一方法是像我手动创建版本时一样使用 GitLab API。据介绍,当想要访问 GitLab API 时,基本上可以选择三种身份验证选项精美的手册 https://docs.gitlab.com/ee/api/#authentication:OAUTH2 令牌、个人访问令牌和会话 cookie。因此,我需要一种方法来在我的 CI/CD 管道中使用其中任何一个,并具有足够的权限。这个问题的解决方案正在进行中,有很多贡献,但近年来几乎没有任何实质性进展。

那么,如何创建发布作为 CI/CD 发布管道的最后步骤之一呢?

由于显而易见的原因,将我的个人访问密钥与 API 访问存储在 CI/CD 变量甚至存储库中的文件中并不是一个选项。


他们发表了一篇博客文章解释如何做到这一点:

https://about.gitlab.com/blog/2020/05/07/how-gitlab-automates-releases/ https://about.gitlab.com/blog/2020/05/07/how-gitlab-automates-releases/

他们创建了一个工具(gitlab-releaser)来帮助完成这项任务。基本上,您创建一个新步骤,在其中使用提供此工具的 docker 映像,然后使用正确的参数调用该工具。

release_upload:
  image: registry.gitlab.com/gitlab-org/release-cli:v0.1.0
  script:
    - gitlab-releaser create --name="My Release" --description="My Release description"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从 GitLab 运行程序/管道中创建版本 的相关文章

  • 如何在 PHP 中使用 Amazon 的 API 来搜索书籍? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在开发一款用于图书共享 评论和推荐的 Facebook 应用程序 我搜索了网络 使用我能想到的每个
  • twig json_encode 空 json

    我正在从 API 接收元素列表 所有元素的格式都很好 当我使用树枝转储其中一个时 我得到以下信息 Leg 2695 id null reservation null airportStart AIX LES MILLES airplaneT
  • 根据路由动态加载 Node.js 模块

    我正在使用 Express 在 Node js 中做一个项目 这是我的目录结构 root start js server js lib api user getDetails js user register js The lib api
  • 如何使用 LDAP 身份验证使用 gitlab 设置管理员用户?

    我刚刚设置了 gitlab 但我完全迷失了管理员用户 维基百科似乎对这个话题保持沉默 谷歌也没有提供帮助 那么 如何在 LDAP 身份验证上使用 gitlab 设置管理员用户 您还可以通过在 Rails 控制台中执行以下操作来为用户设置管理
  • Jenkins 上的 XCode 项目陷入“codesign”

    我使用 Jenkins 与 XCode 插件进行持续集成 有一个 Jenkins 坚持的项目 usr bin codesign force sign 接下来是旋转器 永远旋转 我以前从未见过这个 以前有人见过这个吗 是配置文件问题还是证书问
  • 如何以编程方式将图片上传到 Facebook?

    好的 这是我的第一个问题 如何允许我网站上的访问者在他们的 Facebook 新闻源上分享我的照片 https webapps stackexchange com questions 10140 how do i allow visitor
  • 在 C# 控制台应用程序中使用 HttpClient 使用 WEB API

    我使用 MySQL 数据库在 Visual Studio 2015 中创建了一个 Web API API 运行完美 所以我决定做一个控制台client http www c sharpcorner com article web api w
  • 如何在 Swift 4 中传递 Encodable 或 Decodable 作为参数?

    我正在学习 JSONParsing 我遵循了教程 得到的是这样的 guard let url URL string http localhost test api public api register else return var re
  • RESTful API:仅用于验证的方法/标头组合

    我希望我的 API 有一个仅验证请求 例如 如果我有一个 URL 例如 http api somesite com users 12345 用户正在客户端上填写一份信息表单 我最终会将其修补 放置 发布到该资源 当用户填写表单时 我可能希望
  • 如何标记单个文件?或如何下载特定文件? - 胃肠道

    我想向文件添加标签以轻松下载该文件而不是整个分支 如何下载GIT中的特定文件 我不知道有什么方法可以标记特定文件git 对于第二个问题 如何下载特定文件git 仅当您的意思是 同时下载 时 以下内容才有效in a git存储库 这就是我理解
  • gitlab 上的权限被拒绝(公钥)

    我的问题是我无法从 GitLab 推送或获取 不过 我可以克隆 通过 HTTP 或通过 SSH 当我尝试推送时出现此错误 权限被拒绝 公钥 致命 无法从远程存储库读取 从我看过的所有线程中 这是我所做的 在我的计算机上设置 SSH 密钥并将
  • Facebook 通过 API“Boost Post”?

    我一直在浏览文档 发现可以通过 Facebook 广告 API 实现 Boost Post 功能 但是 我在查找 Boost Post 到底有什么作用时遇到了一些困难 即 API 的哪一部分对应 Facebook UI 的 Boost Po
  • Canvas.drawVertices(...) 不绘制任何内容

    下一类是红色三角形的视图 public class FreeStyleViewII extends View private final Paint paint new Paint private final int colors new
  • gitlab 请求将分支 A 合并到开发中(落后 3 次提交)我应该担心吗?

    在 gitlab 中创建合并请求时 我经常收到一条消息 请求将分支 A 合并到开发中 x 提交落后 gitlab想告诉我什么 我应该担心还是需要修复某些东西 什么 一段时间后合并请求在项目中打开时 由于其他人合并了自己的更改 您尝试合并到的
  • 哪个持续集成服务器能够对作业进行排队?

    使用案例 CI 服务器轮询一些 VSC 存储库并为每个修订版运行测试套件 如果提交了两个或多个修订 即使在相对较小的时间间隔内 我也希望 CI 服务器将每个修订放入队列中 为每个修订运行测试 存储结果 并且不再为这些提交运行测试 而且我不希
  • Jenkins GIT 包含从未构建过的区域

    我正在尝试使用包含区域在 Jenkins 中构建我的工作 但每当选中此选项时 民意调查结果总是说未检测到任何更改 我尝试了许多不同的路径 以及使用工作区进行 不进行强制轮询 结果是轮询从未检测到任何更改 但一旦我删除这些选项 它们就会在下一
  • 如何修复 facebook Fatal error: Uncaught CurlException 问题

    我不时从 Facebook 收到此错误 Fatal error Uncaught CurlException 28 connect timed out thrown in var www html xxx facebook src face
  • 过滤条件的查询字符串与资源路径

    背景 我有2个资源 courses and professors A course具有以下属性 ID topic 学期号 年 部分 教授 id A professor具有以下属性 ID 学院 超级用户 名 姓 所以 你可以说一门课程有一位教
  • 通过 PayPal REST API 示例获得折扣?

    PayPal GURUS 我需要帮助 如何插入折扣 我使用 REST API 可能是某个 可以显示代码示例吗 有什么方法可以使用 PHP REST API 发送折扣金额吗 目前 REST 支付 API 不支持折扣 您最好的选择是计算您端的折
  • 删除或更新 HDF5 中的数据集?

    我想以编程方式更改与 HDF5 文件中的数据集关联的数据 我似乎找不到一种方法来按名称删除数据集 允许我使用修改后的数据再次添加它 或按名称更新数据集 我正在使用 HDF5 1 6 x 的 C API 但指向任何 HDF5 API 的指针都

随机推荐