gitlab-development-kit部署gitlab《二》

gitlab-development-kit部署gitlab《一》

环境

mac 12.7.4
xcode 14.2
gdk 0.2.16
gitlab-foss 13.7

QA

  • xcode源码安装
# https://crifan.github.io/xcode_dev_summary/website/xcode_dev/install_xcode/
# https://xcodereleases.com
  • openssl1.1 源码安装
# https://openssl-library.org/source/old/1.1.0/index.html
# https://github.com/openssl/openssl/releases?q=1.1.0&expanded=true./config --prefix=/usr/local/opt/openssl@1.1
make
  • go 版本不能源码下载
# https://go.dev/dl/ 
cp ~/Downloads/go1.18.9.darwin-amd64.tar.gz ~/.asdf/downloads/golang/1.18.9/archive.tar.gz
  • https://rubygems.org/ SSL_connect returned=1 errno=0 state=error: certificate verify failed SSL_connect returned=1 errno=0 state=SSLv3 read server certificate B: certificate verify failed (https://api.rubygems.org/specs.4.8.gz)
# https://github.com/rubygems/rubygems/issues/1758
export SSL_CERT_FILE=/usr/local/etc/openssl@3/cert.pem 
  • implicit declaration of function ‘thin_http_parser_has_error’ is invalid in C99
# https://stackoverflow.com/questions/63851404/an-error-occurred-while-installing-thin-1-7-2
gem install thin -v '1.7.2' --source 'https://rubygems.org/' -- --with-cflags="-Wno-error=implicit-function-declaration"
  • checking for re2 requires C++11 compiler… extconf.rb failed
# https://gitlab.com/gitlab-org/gitlab-development-kit/-/issues/1877
brew install re2
gem install re2 -v '1.2.0' --source 'https://rubygems.org/'   -- --with-re2-dir="$(brew --prefix re2)" -- --with-cppflags="-x c++ -std=c++20"
  • thrift
gem install thrift -v 0.21.0  --source 'https://rubygems.org/' -- --with-cppflags="-Wno-compound-token-split-by-macro"
  • pg
brew install libpq
  • macos “glob” is not exported by the File::Glob module
# https://github.com/guanzhi/GmSSL/issues/811
# This issue is due to the Perl package File::Glob, some simple changes will fix these errors. In files Configure and test/build.info, changeuse if $^O ne "VMS", 'File::Glob' => qw/glob/;
# into
use if $^O ne "VMS", 'File::Glob' => qw/:glob/;

Brewfile 注释的可以手动安装

brew "cmake"
brew "coreutils"
brew "docutils"
brew "dpkg"
brew "exiftool"
brew "git"
#brew "git-lfs"
#brew "gitleaks"
brew "gnupg"
brew "gpgme"
brew "graphicsmagick"
brew "icu4c"
brew "libiconv"
brew "libssh2"
#brew "openssl@1.1", link: :force
brew "pkg-config"
brew "re2"
brew "runit"
brew "sqlite"
#brew "vale"
#brew "vault"
brew "yamllint"
#cask "chromedriver"

brew install chromedriver --cask

  • go:linkname must refer to declared function or variable
# https://stackoverflow.com/questions/71507321/go-1-18-build-error-on-mac-unix-syscall-darwin-1-13-go253-golinkname-mus
cd gitlab/workhorse
get -u golang.org/x/sys
  • gitaly gem install charlock_holmes warning: implicit conversion loses integer precision: 'long' to 'int32_t'
# https://ruby-china.org/topics/40931
  • gitlabhq_development_ci exists, nothing to do here.
    req: Unknown digest addext
    req: Use -help for summary.
    make: *** [localhost.key] Error 1
# openssl req -newkey rsa:4096 -new -nodes -x509 -days 3650 -out testdata/gitalycert.pem -keyout testdata/gitalykey.pem -subj "/C=US/ST=California/L=San Francisco/O=GitLab/OU=GitLab-Shell/CN=localhost" -addext "subjectAltName = IP:127.0.0.1, DNS:localhost"brew install openssl@3.0
# vim ~/.zshrc
export PATH="/usr/local/opt/openssl@3.0/bin:$PATH"
export LDFLAGS="-L/usr/local/opt/openssl@3.0/lib"
export CPPFLAGS="-I/usr/local/opt/openssl@3.0/include"
  • git diff Makefile
diff --git a/Makefile b/Makefile
index eec70e5f..f41031fd 100644
--- a/Makefile
+++ b/Makefile
@@ -1,3 +1,4 @@
+VERBOSE = 1.NOTPARALLEL:START_TIME := $(shell date "+%s")
@@ -38,7 +39,8 @@ export GDK_QUIET = $(gdk_quiet)include support/makefiles/*.mkifeq ($(platform),darwin)
-OPENSSL_PREFIX := $(shell brew --prefix openssl@1.1)
+#OPENSSL_PREFIX := $(shell brew --prefix openssl@1.1)
+OPENSSL_PREFIX := $(shell brew --prefix openssl@3.0)OPENSSL := ${OPENSSL_PREFIX}/bin/opensslelseOPENSSL := $(shell command -v openssl 2> /dev/null)
@@ -80,7 +82,7 @@ openldap-setup \prom-setup \object-storage-setup \gitlab-elasticsearch-indexer-setup \
-gitlab-metrics-exporter-setup \
+#gitlab-metrics-exporter-setup \grafana-setup \gitlab-ui-setup \gitlab-docs-setup \
@@ -113,7 +115,7 @@ gitlab-k8s-agent-update \gitaly-update \gitlab-update \gitlab-elasticsearch-indexer-update \
-gitlab-metrics-exporter-update \
+#gitlab-metrics-exporter-update \object-storage-update \jaeger-update \grafana-update \
  • git diff Brewfile
--- a/Brewfile
+++ b/Brewfile
@@ -4,20 +4,20 @@ brew "docutils"brew "dpkg"brew "exiftool"brew "git"
-brew "git-lfs"
-brew "gitleaks"
+#brew "git-lfs"
+#brew "gitleaks"brew "gnupg"brew "gpgme"brew "graphicsmagick"brew "icu4c"brew "libiconv"brew "libssh2"
-brew "openssl@1.1", link: :force
+#brew "openssl@1.1", link: :forcebrew "pkg-config"brew "re2"brew "runit"brew "sqlite"
-brew "vale"
-brew "vault"
+#brew "vale"
+#brew "vault"brew "yamllint"
-cask "chromedriver"
+#cask "chromedriver"

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/59501.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

编程之路,从0开始:内存函数

Hello大家好!很高兴我们又见面了。 给生活添点passion,开始今天的编程之路! 今天我们来讲C语言中的内存函数。 目录 1、memcpy内存复制 2、memmove可重叠内存拷贝 3、memset设置字符 4、memcmp比较 1、memcpy内存复制 memcpy就是内存复制…

【C语言】值传递和地址传递

值传递 引用传递(传地址,传引用)的区别 传值,是把实参的值赋值给行参 ,那么对行参的修改,不会影响实参的值。 传地址,是传值的一种特殊方式,只是他传递的是地址,不是普通…

Springboot采用jasypt加密配置

目录 前言 一、Jasypt简介 二、运用场景 三、整合Jasypt 2.1.环境配置 2.2.添加依赖 2.3.添加Jasypt配置 2.4.编写加/解密工具类 2.5.自定义加密属性前缀和后缀 2.6.防止密码泄露措施 2.61.自定义加密器 2.6.2通过环境变量指定加密盐值 总结 前言 在以往的多数项目中&#xff0…

axios平替!用浏览器自带的fetch处理AJAX(兼容表单/JSON/文件上传)

fetch 是啥? fetch 函数是 JavaScript 中用于发送网络请求的内置 API,可以替代传统的 XMLHttpRequest。它可以发送 HTTP 请求(如 GET、POST 等),并返回一个 Promise,从而简化异步操作 基本用法 /* 下面是…

贪吃蛇小游戏设计

贪吃蛇小游戏 1.引言1.1 背景1.2 目的1.3 意义1.4 任务1.5 技术可行性分析1.5.1执行平台1.5.2 语言特性与功能方面 2.需求分析2.1 环境需求2.2开发环境分析2.3游戏功能分析2.4 游戏性能分析2.5 数据流图2.6 数据字典 3.概要设计3.1 设计思路3.2 游戏界面设计3.3 总设计模块的划…

DNS面临的4大类共计11小类安全风险及防御措施

DNS在设计之初,并未考虑网络安全限制,导致了许多问题。DNS安全扩展(DNSSEC)协议的开发旨在解决DNS的安全漏洞,但其部署并不广泛,DNS仍面临各种攻击。接下来我们一起看下DNS都存在哪些安全攻击及缓解措施,旨在对DNS安全…

【大数据学习 | flume】flume的概述与组件的介绍

1. flume概述 Flume是cloudera(CDH版本的hadoop) 开发的一个分布式、可靠、高可用的海量日志收集系统。它将各个服务器中的数据收集起来并送到指定的地方去,比如说送到HDFS、Hbase,简单来说flume就是收集日志的。 Flume两个版本区别: ​ 1&…

Jmeter中的定时器(一)

定时器 1--固定定时器 功能特点 固定延迟:在每个请求之间添加固定的延迟时间。精确控制:可以精确控制请求的发送频率。简单易用:配置简单,易于理解和使用。 配置步骤 添加固定定时器 右键点击需要添加定时器的请求或线程组。选…

区块链技术在慈善捐赠中的应用

💓 博客主页:瑕疵的CSDN主页 📝 Gitee主页:瑕疵的gitee主页 ⏩ 文章专栏:《热点资讯》 区块链技术在慈善捐赠中的应用 区块链技术在慈善捐赠中的应用 区块链技术在慈善捐赠中的应用 引言 区块链技术概述 定义与原理 发…

[数组二分查找] 0074. 搜索二维矩阵

文章目录 1. 题目链接2. 题目大意3. 示例4. 解题思路5. 参考代码 1. 题目链接 74. 搜索二维矩阵 - 力扣(LeetCode) 2. 题目大意 描述:给定一个 mn 大小的有序二维矩阵 matrix。矩阵中每行元素从左到右升序排列,每列元素从上到下…

使用 Python 脚本在 Ansys Mechanical 中创建用于后处理的螺栓工具

介绍 由螺栓连接定义的接头在工业应用中非常普遍。在 Ansys Mechanical FEA 中分析它们是一种非常常见的做法。通过Object Generator或Bolt Tools Add-on,使用线体、梁连接甚至3D实体中的梁单元,在Ansys Mechanical中生成螺栓连接非常容易。定义螺栓联接…

【AI声音克隆整合包及教程】第二代GPT-SoVITS V2:创新与应用

一、引言 随着科技的迅猛发展,声音克隆技术已经成为一个炙手可热的研究领域。SoVITS(Sound Voice Intelligent Transfer System),作为该领域的先锋,凭借其卓越的性能和广泛的适用性,正在为多个行业带来前所…

python调用MySql详细步骤

一、下载MySql MySQL :: Download MySQL Installerhttps://dev.mysql.com/downloads/windows/installer/8.0.html点击上面链接,进入MySQL8.0的下载页面,选择离线安装包下载。 不需要登陆,直接点击下方的 No thanks,just start my download. …

《InsCode AI IDE:编程新时代的引领者》

《InsCode AI IDE:编程新时代的引领者》 一、InsCode AI IDE 的诞生与亮相二、独特功能与优势(一)智能编程体验(二)多语言支持与功能迭代 三、实际应用与案例(一)游戏开发案例(二&am…

华为路由策略配置

一、AS_Path过滤 要求: AR1与AR2、AR2与AR3之间建立EBGP连接 AS10的设备和AS30的设备无法相互通信 1.启动设备 2.配置IP地址 3.配置路由器的EBGP对等体连接,引入直连路由 [AR1]bgp 10 [AR1-bgp]router-id 1.1.1.1 [AR1-bgp]peer 200.1.2.2 as-nu…

如何解决JAVA程序通过obloader并发导数导致系统夯住的问题 | OceanBase 运维实践

案例背景 某保险机构客户的数据中台,自系统上线后不久,会定期的用 obload 工具从上游业务系统导入数据至OceanBase数据库。但,不久便遇到了应用服务器的 Memory 与 CPU 资源占用持续攀升,最终导致系统夯住而不可用的异常。 memo…

【HarmonyOS】鸿蒙系统在租房项目中的项目实战(一)

从今天开始,博主将开设一门新的专栏用来讲解市面上比较热门的技术 “鸿蒙开发”,对于刚接触这项技术的小伙伴在学习鸿蒙开发之前,有必要先了解一下鸿蒙,从你的角度来讲,你认为什么是鸿蒙呢?它出现的意义又是…

react17安装html-react-parser运行报错记录

背景 react17 安装 html-react-parser npm install html-react-parser运行终端报错信息 ERROR in ./node_modules/html-react-parser/esm/index.mjs 2:0-122 Cant reexport the named export htmlToDOM from non EcmaScript module (only default export is available)原因…

websocket初始化

websocket初始化 前言 上一集我们HTTP的ping操作就可以跑通了,那么我们还有一个协议---websocket,我们在这一集就要去完成我们websocket的初始化。 分析 我们在初始化websocket的之前,我们考虑一下,我们什么时候就要初始化我们…

JavaEE 重要的API阅读

JavaEE API阅读 目的是为了应对学校考试,主要关注的是类的继承关系、抛出错误的类型、包名、包结构等等知识。此帖用于记录。 PageContext抽象类 包名及继承关系 继承自JspContext类。PageContext 实例提供对与某个 JSP 页⾯关联的所有名称空间的访问&#xff0…