问题标签 [gitlab-autodevops]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
175 浏览

gitlab - Gitlab AutoDevops 是否支持将 kubernetes 机密作为文件?

我正在尝试 GitLab AutoDevOps,并试图了解 CI/CD 变量的工作原理。

在设置 UI 中,我可以设置创建文件和环境变量。

在此处输入图像描述

根据文档,如果一个变量带有前缀,K8S_SECRET_那么它会神奇地出现在部署中。我可以让它适用于环境变量,但不适用于文件变量。在这种情况下,我有两个问题:

  • 如果支持,我该怎么做?
  • 如果这不支持,您会推荐什么作为解决方法?具体来说,我需要能够在我的 pod 中安装 ssh 密钥。

谢谢!

0 投票
1 回答
3130 浏览

devops - 什么是二进制工件?

我在寻找 devops 中的构建自动化时遇到了这个术语,我仍然不确定这个术语到底是什么意思。谁能解释一下?

0 投票
1 回答
3173 浏览

webpack - ActionView::Template::Error: Webpacker 在使用 ci/cd autodevops 部署到 Gitlab 时无法在 /app/public/packs/manifest.json 中找到应用程序

它在本地运行完美,但在部署到 Gitlab 时在测试阶段使用 CI/CD 运行的管道期间收到此错误:

以下是 application.html 文件中的几行:

我的样式表是 .scss 文件,项目中没有 .css 文件。

这是我的 webpacker.yml :

我错过了什么吗?

0 投票
1 回答
205 浏览

node.js - 发布生产失败:等待条件超时(无文件上传)

首次尝试通过 CI/CD 流程将 nodejs Web 应用程序部署到 AWS。项目与其他已成功部署的项目位于组帐户下,因此已为该组设置了 Kubernetes。但是我们收到以下错误。

在此处输入图像描述

我们不知道这意味着什么。我们正在使用 AutoDevOps。

这就是我们的 Docker 文件的样子:

&这就是 package.json 文件的样子:

我们做错了什么?无法引用组中的其他项目,因为它们是使用 java spring boot 和 asp net 部署的。

0 投票
0 回答
73 浏览

ssl - 通配符 SaaS 平台域,通过 HTTPS,在 Kubernetes 上

我正在向 Kubernetes 部署一个自定义 SaaS 平台,我的客户获得了 X.myplatform.com 域。所以,可能是 acmecorp.myplatform.com 等。

以前,在我们旧的 devops 设置中,我们只有一个 Apache 记录,它是 *.myplatform.com,并有一个通配符Let's Encrypt证书来保护它。但是,我们现在正在迁移到 Kubernetes,我对如何处理这个问题感到有些困惑。

对于进一步的上下文,我们使用GitLab 的 Auto DevOps 功能进行部署,尽管我可以根据需要自定义我们的 Ingress 或 cert-manager 安装。

关于如何最好地实现这一目标的任何建议?我们在网络级别使用 Cloudflare,但没有他们的企业计划,我无法代理通配符子域。

0 投票
0 回答
200 浏览

kubernetes - 我在 gitlab 中的自动 devops 管道不起作用

这是我的测试

我用 autodevops runner 运行这个工作

我在没有 .gitlab-ci.yaml 文件的情况下运行它。但我收到这样的错误。

0 投票
1 回答
210 浏览

continuous-integration - 使用 ArgoCD 实现 Gitlab AutoDevops

我们在 gitlab runner 的帮助下实现了 AutoDevops 功能,并使用 ArgoCD 管理 CD 阶段。因此 CI 管道构建了一个 docker 镜像,将其推送到 gitlab 注册表,CD 阶段使用推送的镜像在 ArgoCD 的帮助下部署应用程序。每次提交时,gitlab runner 都会触发管道。有没有办法可以单独使用 ArgoCD 来处理这种情况,以便管道自动触发而无需配置运行器?

0 投票
0 回答
181 浏览

gitlab-ci - 在 gitlab autodevops 中使用默认 helm 图表时如何将 ConfigMap 值作为 env 变量传递

我是一个新手,刚开始使用 gitlab 开箱即用的 auto devops 魔法。

我有一个非常基本的 Golang 微服务,我可以部署它——它使用开箱即用的默认 helm 图表(创建命名空间、服务、部署、docker 注册表管理),并且我提供自己的 Dockerfile 来构建 docker 映像。

问题:

如何在不提供自定义 helm 图表的情况下将现有的 K8 ConfigMap 条目作为环境变量读取到微服务?ConfigMap 是由其他进程在不同的命名空间中创建的

如何覆盖应该部署微服务的命名空间而不创建新的命名空间?我希望将多个微服务部署到同一个命名空间中——我不希望每个存储库都有不同的命名空间。

基本上我不想提供自定义 helm 图表,因为我认为如果我提供自定义图表,那么我还需要完成在 K8 集群上设置 docker 注册表的完整设置 - 我想避免这种情况,我想自定义我的应用程序组件、服务类型(我不想要 ClusterIP)、更改命名空间、将 configMap 引用为环境变量——无需为我的基于 golang 的基本微服务创建自定义 helm 图表。

0 投票
1 回答
345 浏览

kubernetes - Gitlab Auto DevOps 入口端点

我正在尝试使用 Gitlab 和 Google Cloud 在 Kubernetes 上配置 CI,但我坚持创建 Let's Encrypt 证书。我有 2 个集群用于 2 个环境:

  1. 环境范围:production- 用于生产实例
  2. 环境范围:*- 用于暂存和审查实例

部署后,我配置了一个带有我声明的端点的入口服务:staging.my-domain.com第二个对我来说是个谜:le-23830502.my-domain.com. 第二台主机在两个环境中是相等的 - 登台和生产,当我尝试生成证书时,我只能为一个环境做这件事(因为第二个 acme 挑战永远不会通过,因为我不能指向两个不同的 DNS一个子域上的 IP 地址)。

有谁知道这个主机是什么?在哪里配置,我可以禁用它还是让它在不同的环境中独一无二?

我注意到这是我来自 gitlab 的带有le-前缀的项目 ID。我还发现 2 个环境变量 ($ADDITIONAL_HOSTS$ENVIRONMENT_ADDITIONAL_HOSTS) 用于为 Ingress 添加另一个主机地址,但那个仍然存在。

分期部署:

产品部署:

.gitlab-ci.yaml:

0 投票
0 回答
89 浏览

angular - Gitlab autodevops 和 Kubernetes,在 review pod 上添加 angular 的配置文件

我有一个 Angular 项目,我尝试在 Kubernetes 集群中使用 gitlab-ci autodevops 功能进行审查。
应用程序在审查步骤中运行良好。但是要自定义后端,我需要assets/config在运行时将文件放入文件夹中。文件内容应该是 gitlab 的 CI/CD 变量。

我用我的尝试过,.gitlab-ci.yml但文件没有发送到正在运行的 pod,并且角度应用程序使用 api 的默认值

CONFIG_JSON价值为

为了使我的文件在审阅窗格中可用,我缺少什么?

背景:我是 Gitlab、Kubernetes 和 Helm 的新手。