官方helm仓库 配置示例--- #gitlab的地址 gitlabUrl: "https://***" #开启rbac rbac: create: "true" #runner注册token,在全局runner设置页面 runnerRegistrationToken: "***" #具体runner参数 runners: #容器镜像 image: "***" #镜像拉取策略 imagePullPolicy: "if-not-present" #CI容器运行命名空间(非runner的运行命名空间) namespace: "gitlab-runner" #runner标签 tags: "***" #runner 容器中需要添加的自定义变量,如helm、gradle等,我们可以通过变量来指定一些环境,避免需要自构建容器镜像,建议直接使用官方镜像,后期升级构建环境也方便,后续人员维护也直观。 env: name: value #runner缓存,根据需要选择。可以使用挂载PVC的方式来进行缓存,这样就需要自定义一些缓存方式。如使用此方式,就可以使用gitlab runner的cache字段来添加一下缓存了,各有优劣。 cache: #自建环境的话,目前国内可选的就是S3了,可以使用支持S3协议的存储,如minio cacheType: s3 cachePath: "gitlab_runner" cacheShared: true s3ServerAddress: minio.chaohi-public.svc.cluster.local:9000 s3BucketName: gitlab-cache s3BucketLocation: s3CacheInsecure: true secretName: minio #官方提供的shell脚本入口,会在CI运行前执行,这里我们写了一个cat添加配置文件内容,用来给runner的POD添加PVC挂载,做一些缓存与持久化的数据,其他类型请参考官方文件说明(不支持subpath)。 preEntrypointScript: | # kubernetes volumes cat << EOF >> /home/gitlab-runner/.gitlab-runner/config.toml #k8s PVC [[runners.kubernetes.volumes.pvc]] #名称 name = "***" #挂载路径 mount_path = "/opt/" #k8s secret [[runners.kubernetes.volumes.secret]] name = "***" mount_path = "/cert/" EOF