热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Gitlab:发布HTML报告

如何解决《Gitlab:发布HTML报告》经验,为你挑选了1个好方法。

我正在使用src管道运行一些测试并生成覆盖率报告.

我想要做的是能够将生成的coverage文件夹(包括html页面和gitlab.io文件夹)发布到某个内部my.local.gitlab.server/mynamespace/thepagesproject静态页面,可由某些团队成员查看.

我知道gitlab页面的概念,但步骤表明我必须为此目的使用静态站点生成器.

我的问题如下:

这个概念只有在官方gitlab网站上发布时才可用(index.html或者我可以使用我的内部src安装(即我的网页可用gitlab.io)吗?

我可以上传一个my.local.gitlab.server/mynamespace/thepagesproject包含其内容文件夹的文件并使其可访问吗?

什么是使用EXISTING项目的最佳方式,以便只添加一些html页面(理想情况下我想避免为此目的创建一个新项目)

JGC.. 9

我可以在自托管实例上使用GitLab Pages吗?

是的,GitLab Pages适用于自托管实例.*.pages.如果您仅通过https运行gitlab,则可能需要为其注册通配符域名,并生成SSL证书.

获得域名后,编辑/etc/gitlab/gitlab.rb并添加额外设置,然后运行gitlab-ctl reconfigure(pages_nginx如果仅运行http,则省略设置:

gitlab_pages['enable'] = true
pages_external_url "https://pages."
pages_nginx['redirect_http_to_https'] = true
pages_nginx['ssl_certificate'] = "/etc/gitlab/ssl/pages..crt"
pages_nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/pages..key"

完成后,您将能够通过访问每个项目页面 .pages./

我可以上传任何我想要的页面吗?

是.每个GitLab CI作业都可以创建要在GitLab页面中发布的内容,方法是将其写入public文件夹,然后注册public为工件目录.pages应该将最终作业添加到CI管道中,从而导致页面内容被发布(覆盖之前的任何内容).public目录的所有内容都可以通过.pages./URL获得,这意味着您可以完全控制内容.

请注意,CI中的页面作业不需要任何脚本,只需要与作业名称"pages"一起出现.这是一个触发页面发布的魔术作业名称.您可能希望添加作业限制,以便仅在主分支管道上运行.

我可以将页面发布添加到现有项目吗?

是.创建要发布的内容的任何步骤都应将内容写入public子目录,并将该public目录注册为工件目录.

my job:
  stage: build
script:
  - echo "Do some things and write them to public directory" > public/index.html
artifacts:
  paths:
  - public
    expire_in: 2 weeks

注意:我想添加expire_in: 2 weeks以限制工件保留的时间长度.页面发布后,实际上并不需要工件.

最后,您需要添加一个pages作业来触发页面发布:

# This job does nothing but collect artifacts from other jobs and triggers the pages build
# The artifacts are picked up by the pages:deploy job.
pages:
  stage: deploy
  script:
    - ls -l public
  artifacts:
    paths:
      - public
  only:
    - master

通常,您只想在主分支上发布,但您可以自由选择何时运行页面发布.值得注意的是,当页面发布运行时,它将完全替换以前发布的任何内容,因此您无法附加到现有内容(尽管有一些黑客可以让您实现类似的功能).



1> JGC..:
我可以在自托管实例上使用GitLab Pages吗?

是的,GitLab Pages适用于自托管实例.*.pages.如果您仅通过https运行gitlab,则可能需要为其注册通配符域名,并生成SSL证书.

获得域名后,编辑/etc/gitlab/gitlab.rb并添加额外设置,然后运行gitlab-ctl reconfigure(pages_nginx如果仅运行http,则省略设置:

gitlab_pages['enable'] = true
pages_external_url "https://pages."
pages_nginx['redirect_http_to_https'] = true
pages_nginx['ssl_certificate'] = "/etc/gitlab/ssl/pages..crt"
pages_nginx['ssl_certificate_key'] = "/etc/gitlab/ssl/pages..key"

完成后,您将能够通过访问每个项目页面 .pages./

我可以上传任何我想要的页面吗?

是.每个GitLab CI作业都可以创建要在GitLab页面中发布的内容,方法是将其写入public文件夹,然后注册public为工件目录.pages应该将最终作业添加到CI管道中,从而导致页面内容被发布(覆盖之前的任何内容).public目录的所有内容都可以通过.pages./URL获得,这意味着您可以完全控制内容.

请注意,CI中的页面作业不需要任何脚本,只需要与作业名称"pages"一起出现.这是一个触发页面发布的魔术作业名称.您可能希望添加作业限制,以便仅在主分支管道上运行.

我可以将页面发布添加到现有项目吗?

是.创建要发布的内容的任何步骤都应将内容写入public子目录,并将该public目录注册为工件目录.

my job:
  stage: build
script:
  - echo "Do some things and write them to public directory" > public/index.html
artifacts:
  paths:
  - public
    expire_in: 2 weeks

注意:我想添加expire_in: 2 weeks以限制工件保留的时间长度.页面发布后,实际上并不需要工件.

最后,您需要添加一个pages作业来触发页面发布:

# This job does nothing but collect artifacts from other jobs and triggers the pages build
# The artifacts are picked up by the pages:deploy job.
pages:
  stage: deploy
  script:
    - ls -l public
  artifacts:
    paths:
      - public
  only:
    - master

通常,您只想在主分支上发布,但您可以自由选择何时运行页面发布.值得注意的是,当页面发布运行时,它将完全替换以前发布的任何内容,因此您无法附加到现有内容(尽管有一些黑客可以让您实现类似的功能).


推荐阅读
  • 本文详细介绍了 InfluxDB、collectd 和 Grafana 的安装与配置流程。首先,按照启动顺序依次安装并配置 InfluxDB、collectd 和 Grafana。InfluxDB 作为时序数据库,用于存储时间序列数据;collectd 负责数据的采集与传输;Grafana 则用于数据的可视化展示。文中提供了 collectd 的官方文档链接,便于用户参考和进一步了解其配置选项。通过本指南,读者可以轻松搭建一个高效的数据监控系统。 ... [详细]
  • com.sun.javadoc.PackageDoc.exceptions()方法的使用及代码示例 ... [详细]
  • 在软件开发过程中,经常需要将多个项目或模块进行集成和调试,尤其是当项目依赖于第三方开源库(如Cordova、CocoaPods)时。本文介绍了如何在Xcode中高效地进行多项目联合调试,分享了一些实用的技巧和最佳实践,帮助开发者解决常见的调试难题,提高开发效率。 ... [详细]
  • 为了确保iOS应用能够安全地访问网站数据,本文介绍了如何在Nginx服务器上轻松配置CertBot以实现SSL证书的自动化管理。通过这一过程,可以确保应用始终使用HTTPS协议,从而提升数据传输的安全性和可靠性。文章详细阐述了配置步骤和常见问题的解决方法,帮助读者快速上手并成功部署SSL证书。 ... [详细]
  • 解决Only fullscreen opaque activities can request orientation错误的方法
    本文介绍了在使用PictureSelectorLight第三方框架时遇到的Only fullscreen opaque activities can request orientation错误,并提供了一种有效的解决方案。 ... [详细]
  • 本文详细介绍了在 Ubuntu 系统上搭建 Hadoop 集群时遇到的 SSH 密钥认证问题及其解决方案。通过本文,读者可以了解如何在多台虚拟机之间实现无密码 SSH 登录,从而顺利启动 Hadoop 集群。 ... [详细]
  • Spark与HBase结合处理大规模流量数据结构设计
    本文将详细介绍如何利用Spark和HBase进行大规模流量数据的分析与处理,包括数据结构的设计和优化方法。 ... [详细]
  • 解决Bootstrap DataTable Ajax请求重复问题
    在最近的一个项目中,我们使用了JQuery DataTable进行数据展示,虽然使用起来非常方便,但在测试过程中发现了一个问题:当查询条件改变时,有时查询结果的数据不正确。通过FireBug调试发现,点击搜索按钮时,会发送两次Ajax请求,一次是原条件的请求,一次是新条件的请求。 ... [详细]
  • 思科IOS XE与ISE集成实现TACACS认证配置
    本文详细介绍了如何在思科IOS XE设备上配置TACACS认证,并通过ISE(Identity Services Engine)进行用户管理和授权。配置包括网络拓扑、设备设置和ISE端的具体步骤。 ... [详细]
  • 如何在Linux服务器上配置MySQL和Tomcat的开机自动启动
    在Linux服务器上部署Web项目时,通常需要确保MySQL和Tomcat服务能够随系统启动而自动运行。本文将详细介绍如何在Linux环境中配置MySQL和Tomcat的开机自启动,以确保服务的稳定性和可靠性。通过合理的配置,可以有效避免因服务未启动而导致的项目故障。 ... [详细]
  • addInstrumentedPackage 方法不支持指定单一类进行 instrumentation ... [详细]
  • 在配置Nginx的SSL证书后,虽然HTTPS访问能够正常工作,但HTTP请求却会遇到400错误。本文详细解析了这一问题,并提供了Nginx配置的具体示例。此外,还深入探讨了DNS服务器证书、SSL证书的申请与安装流程,以及域名注册、查询方法和CDN加速技术的应用,帮助读者全面了解相关技术细节。 ... [详细]
  • Keepalived 提供了多种强大且灵活的后端健康检查机制,包括 HTTP_GET、SSL_GET、TCP_CHECK、SMTP_CHECK 和 MISC_CHECK 等多种检测方法。这些健康检查功能确保了高可用性环境中的服务稳定性和可靠性。通过合理配置这些检查方式,可以有效监测后端服务器的状态,及时发现并处理故障,从而提高系统的整体性能和可用性。 ... [详细]
  • 深入探索HTTP协议的学习与实践
    在初次访问某个网站时,由于本地没有缓存,服务器会返回一个200状态码的响应,并在响应头中设置Etag和Last-Modified等缓存控制字段。这些字段用于后续请求时验证资源是否已更新,从而提高页面加载速度和减少带宽消耗。本文将深入探讨HTTP缓存机制及其在实际应用中的优化策略,帮助读者更好地理解和运用HTTP协议。 ... [详细]
  • 线程能否先以安全方式获取对象,再进行非安全发布? ... [详细]
author-avatar
yangerzhou
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有