Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >利用 Github Action 自动发布 Chart 并托管到 Github Pages

利用 Github Action 自动发布 Chart 并托管到 Github Pages

原创
作者头像
imroc
修改于 2024-05-09 02:21:02
修改于 2024-05-09 02:21:02
1650
举报

项目结构

在仓库根目录下创建 charts 目录,然后在该目录下开发所需要的 chart,如:

代码语言:txt
AI代码解释
复制
.
├── charts
│   └── mychart
│       ├── Chart.yaml
│       ├── templates
│       │   ├── deployment.yaml
│       │   ├── _helpers.tpl
│       │   └── service.yaml
│       └── values.yaml

准备 gh-pages 分支

创建 gh-pages 分支并 push 到 github 仓库:

代码语言:bash
AI代码解释
复制
git checkout --orphan gh-pages # 创建 gh-pages 空分支
touch README.md
git add README.md
git push origin -u gh-pages

Github Action

为项目添加 GitHub Action,在 .github/workflows 下新增 yaml(如 helm-release.yaml):

代码语言:txt
AI代码解释
复制
.github
└── workflows
    ├── docker-ci.yaml
    └── helm-release.yaml
代码语言:yaml
AI代码解释
复制
name: Release Charts

on:
  push:
    branches:
      - main
jobs:
  release:
    permissions:
      contents: write # to push chart release and create a release (helm/chart-releaser-action)

    runs-on: ubuntu-latest
    steps:
      - name: Checkout Code
        uses: actions/checkout@v4
        with:
          fetch-depth: 0

      - name: Configure Git
        run: |
          git config user.name "$GITHUB_ACTOR"
          git config user.email "$GITHUB_ACTOR@users.noreply.github.com"

      - name: Set up Helm
        uses: azure/setup-helm@v4

      - name: Run chart-releaser
        uses: helm/chart-releaser-action@v1.6.0
        env:
          CR_TOKEN: "${{ secrets.GITHUB_TOKEN }}"

提示: 1. GITHUB_TOKEN 这个 Secret 是 Github 为项目自动生成的,无需手动添加。 2. Configure Git 中是 Github Action 提交 chart 到 gh-pages 分支时所用到的 Git 用户信息,可根据情况自行修改。

触发 Chart 自动发布

确保在 Chart.yaml 中定义好 version,提交并 push 代码触发 Github Action 工作流。

如果成功,可以在 release 页面看到自动生成的压缩包:

同时,在 gh-pages 分支可以看到 index.yaml 自动生成(index.yaml 中会引用 release 中的 chart 压缩包):

遇到过的问题

第一次提交不会发布 chart,因为它会对比历史来发现 chart 是否有变更,第一次提交无法对比,也不会发布 chart。

参考资料

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
使用VuePress2.X构建个人知识博客,并且用个人域名部署到GitHub Pages中
VuePress 是一个以 Markdown 为中心的静态网站生成器。你可以使用 Markdown 来书写内容(如文档、博客等),然后 VuePress 会帮助你生成一个静态网站来展示它们。VuePress 诞生的初衷是为了支持 Vue.js 及其子项目的文档需求,但是现在它已经在帮助大量用户构建他们的文档、博客和其他静态网站。官网:
星哥玩云
2025/06/29
710
使用VuePress2.X构建个人知识博客,并且用个人域名部署到GitHub Pages中
14 张图详解构建全自动化 Helm 打包测试发布 CICD 流程
在本文中,您将学习如何创建 Helm chart 并将其发布到公共存储库中。我们将为基于 Spring Boot REST 的应用程序准备一个 Helm Chart 作为练习。目标是拥有一个完全自动化的过程来构建、测试和发布它。为此,我们将在 CircleCI 中定义一个管道。此 CI/CD 管道将在公共Artifact Hub[1]中发布 Helm Chart。
我的小碗汤
2023/03/20
2.7K0
14 张图详解构建全自动化 Helm 打包测试发布 CICD 流程
HEXO系列教程 | 使用GitHub Actions部署Hexo / GitHub Pages | 全流程详细介绍
夜梦敢说这篇文章和HEXO系列教程 | 使用GitHub部署静态博客HEXO | 小白向教程是全网最详细的Hexo部署教程之二了!如果遇到问题你可以通过邮箱联系夜梦,夜梦看到了就会回复的!当然,再详细的文章也可能有错误,大家如果发现文章有问题的话请联系夜梦哦!
夜梦星尘
2024/08/20
4850
HEXO系列教程 | 使用GitHub Actions部署Hexo / GitHub Pages | 全流程详细介绍
5 分钟玩转史上最强大的自动发布工具 GitHub Actions
GitHub Actions 是 GitHub 的持续集成服务,于 2018 年 10 月推出。
iMike
2019/09/16
1.5K0
Helm Charts 开发完整示例
Helm 的使用是比较简单的,但是要让我们自己开发一个 Chart 包还是有不小难度的,主要还是 go template 的语法规则不够人性化,这里我们用一个完整的实例来演示下如何开发一个 Helm Chart 包。
我是阳明
2022/04/06
2.1K0
Helm Charts 开发完整示例
一键生成 Helm Chart README 文档
随着云原生应用的普及,Helm 的作用也日益凸显,越来越多的云原生应用以 Helm Chart 的形式发布,可以说现在如果没有一个 Helm Chart 都不好意思说自己是云原生应用。
郭旭东
2020/12/24
1.5K0
一键生成 Helm Chart README 文档
GitHub Actions 自动构建Hexo 并发布到 gh-pages
当文章较多时,Hexo生成较慢,比较耗时,而且还需要 手动发布到 gh-pages,过程比较繁琐,而 GitHub Actions 作为 GitHub推出的免费CI/CD服务,正好可以用来解决这一问题,我们只需将源代码推送到GitHub,由Action自动帮我们构建Hexo,并完成发布到 GitHub Pages,不仅可用于博客,也可用于自动发布在线文档。
yiyun
2022/04/01
1.3K0
GitHub Actions 自动构建Hexo 并发布到 gh-pages
打造Github Issue到Hexo部署自动工作流
平时不少同学都有写博客的习惯,这里介绍一种通过Github Issue写博客并自动部署hexo到Github Page的工作流。本文主要介绍
ACK
2022/05/06
4340
打造Github Issue到Hexo部署自动工作流
利用 GitHub Action 自动部署 Hexo 博客
使用 Hexo 写博客,每次写完都要生成静态文件,而且 Hexo 基于 Node.JS,不能再手机上更新。
OhhhCKY
2022/12/28
1.5K0
利用 GitHub Action 自动部署 Hexo 博客
从零开始:VuePress2 + GitHub Pages 搭建你的第一个免费博客网站
可能你也想拥有一个属于自己的博客网站,但是自己搭个博客网站不知道从何下手,而且还需要租个云服务器,虽然一个月只需几十块钱,但是我们的博客网站是要长期维护的,日积月累也要不少钱呢。
zhanyd
2023/12/15
6000
从零开始:VuePress2 + GitHub Pages 搭建你的第一个免费博客网站
告别手写,一键生成 Helm Chart README 文件
随着云原生应用的普及,Helm 的作用也日益凸显,越来越多的云原生应用以 Helm Chart 的形式发布,可以说现在如果没有一个 Helm Chart 都不好意思说自己是云原生应用。
郭旭东
2020/12/30
9040
告别手写,一键生成 Helm Chart README 文件
试用Github Action CI/CD流程(创建一个React项目,并打包部署)
增加github aciton CI配置文件:内容大体是在虚拟环境checkout项目,build React项目,部署静态文件到代码仓库的gh-pages分支。
后端云
2022/03/22
7810
试用Github Action CI/CD流程(创建一个React项目,并打包部署)
使用GPG签名部署Github Pages
本文也发布在我的博客上,最新修订内容可随时参考:使用GPG签名部署Github Pages
timerring
2025/05/24
520
jenkins X实践系列(1) —— 背景知识
Jenkins X 是一个高度集成化的CI/CD平台,基于Jenkins和Kubernetes实现,旨在解决微服务体系架构下的云原生应用的持续交付的问题,简化整个云原生应用的开发、运行和部署过程。
JadePeng
2018/11/21
2.7K0
Hexo+GitHub搭建个人博客,实现云端编辑、一键发文
一般来说第一步环境搭建只需要在最开始创建博客网站的时候进行,写文的话只需要重复第2-7步就可以了,这种使用方式强烈依赖于本地环境。但是,有时候我们并不只是固定在一台电脑上写文,(比如:一直写文的电脑坏了,需要换新电脑;电脑重装系统等等)这样就需要在另一台电脑上搭建环境,这样非常的麻烦,而且难免会带来一些其它依赖版本兼容问题。所以,可以采用GitHub Actions持续集成平台来简化发布文章的流程。
甜点cc
2022/09/23
1.3K0
Hexo+GitHub搭建个人博客,实现云端编辑、一键发文
Helm指南:Kubernetes包管理器简介
Helm已成为Kubernetes生态系统的重要组成部分。通过使用 Helm,可以简化创建和部署Kubernetes资源的过程。在本文中,我们将介绍 Helm 的基本组件、架构以及使用 Helm 的好处。
DevOps云学堂
2023/08/22
7720
Helm指南:Kubernetes包管理器简介
[原创]VuePress教程之部署到Github Action
最近geekzl打算尝试一下VuePress,据说如果用来做文档体验会很不错,外观和Gitbook有点相似,好处是代码层面具有较大的自由度,也可以顺便加强vue的学习。
极客中心
2021/01/21
2.9K0
[原创]VuePress教程之部署到Github Action
一文教你使用GitHub Pages部署静态网页
在上一篇文章部署明星关系图谱那些事儿(GitHub Pages) 的最后,古柳讲到了GitHub Pages不仅可以用来搭个人博客,而且能单独部署静态网页(HTML/CSS/JS,而不涉及后端),鉴于自身在部署明星关系图谱时,查阅的几篇中文博客内容(可能没搜对关键词的缘故)都不太能解答我关于实操过程的困惑,最后还得感谢这篇简洁明了的英文文章:Use Github Static Pages to Host Your Front End Projects,助我成功部署,所以古柳也简单讲下实践步骤,希望能帮到有需要的人,对GitHub和Git熟悉的朋友直接拉到Git命令处即可,或者看原文也行。
古柳_DesertsX
2019/06/19
1.5K0
一文教你使用GitHub Pages部署静态网页
一篇教你代码同步 Github 和 Gitee
用 VuePress 搭建了博客并部署到 Github Pages,但由于 Github 的访问问题,我们可以选择把仓库部署到 Gitee 一份,利用 Gitee 的 Pages 服务再生成一份静态网站用于备用。
程序狗
2021/12/27
1.5K0
建立Helm chart的持续集成
https://blog.mayadata.io/openebs/setup-continuous-integration-for-helm-chart
CNCF
2020/02/26
1.2K0
推荐阅读
相关推荐
使用VuePress2.X构建个人知识博客,并且用个人域名部署到GitHub Pages中
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档