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语言】值传递和地址传递

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

摘要与登记

10.15:mysql 10.16:redis, 10.17:k8s,netty,dubbo,设计模式 10.18:juc、 10.21:rabbitMQ、ElasticSearch 10.22:docker 10.23:k8s 10.24:springsecurity 10.30:spring事务 11.01:mysql 11.05:redis 11.06:k8s 11.07:netty、docker 11.08:设计模式 11.09:juc 11.11:rabbitMQ、sp…

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 总设计模块的划…

go T 泛型

目录 1、类型约束 2、泛型函数 3、泛型结构体 4、泛型接口 5、以接口作为类型约束 关键词:泛型、类型参数、类型约束 Go 语言在 1.18 版本引入了泛型(Generics)特性,可以编写更通用、可复用的代码,泛型可以用于&a…

如何处理 iOS 客户端内 Webview H5 中后台播放的音视频问题

目录 问题描述Page Visibility API 的应用什么是 Page Visibility API?使用 Page Visibility API 暂停音视频完整解决方案1. 监听媒体的播放和暂停事件2. 防止自动播放3. 结合 Intersection Observer 进行媒体控制4. 手动处理应用生命周期中的事件 问题描述 在 iOS…

Matplotlib库中show()函数的用法

在Matplotlib库中使用show()函数是用于显示绘制的图形的函数。它将图形显示在屏幕上或保存到文件中。show()函数通常在绘制完图形后调用。 Matplotlib是一个用于绘制2D图形的Python库,它提供了丰富的绘图工具和函数,可以用于创建各种类型的图表&#xf…

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

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

蓝队知识浅谈(中)

声明:学习视频来自b站up主 泷羽sec,如涉及侵权马上删除文章 感谢泷羽sec 团队的教学 视频地址:蓝队基础之网络七层杀伤链_哔哩哔哩_bilibili 本文主要分享一些蓝队相关的知识。 一、网络杀伤链 网络杀伤链(Cyber Kill Chain&…

vue2在el-dialog打开的时候使该el-dialog中的某个输入框获得焦点方法总结

在 Vue 2 中,如果你想通过 ref 调用一个方法(如 inputFocus)来聚焦一个输入框,确保以下几点: 确保 ref 的设置正确:你需要确保在模板中正确设置了 ref,并且它指向了你想要操作的组件或 DOM 元素…

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

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

Jmeter中的定时器(一)

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

网络基础协议理论(DNS协议)

DNS(Domain Name System,域名系统)协议是互联网的一项核心应用层协议,以下是对DNS协议的详细简述: 一、DNS协议的基本功能 DNS协议的主要功能是将人类易读的域名(如www.example.com)转换成计算…

Webkit 滚动条样式属性

Webkit 滚动条样式属性 ::-webkit-scrollbar – 整个滚动条 ::-webkit-scrollbar-track – 滚动条的滚动区域(轨道) ::-webkit-scrollbar-thumb – 滚动条的可拖拽部分(滑块) 以下是可用但不常用的属性: ::-webkit…

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

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

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

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

父组件给子组件明明传的是字符串,为什么总是报错说传的是对象呢?原因如下:

// 接收父组件传过来的信息(评论内容) props: { item: { type: Object, //item为对象类型 item.user_id[0]._idthis.dengluzheID default () { return { } } …

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

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