小编dju*_*rez的帖子

如何在启用gitlab的第二因素身份验证后使用git命令

今天我启用了Gitlab的第二因素身份验证.在那之后,由于我登录了Gitlab网站,我需要用我的手机传递6位数加上我的密码,这很好,这让我觉得安全.

但是,当我使用常规操作时,例如git clone some-repo.git,我收到错误:

Cloning into 'some-repo'...
remote: HTTP Basic: Access denied
remote: You must use a personal access token with 'api' scope for Git over HTTP.
remote: You can generate one at https://gitlab.com/profile/personal_access_tokens
fatal: Authentication failed for 'some-repo.git'
Run Code Online (Sandbox Code Playgroud)

然后我尝试使用现有的克隆本地repo,git pull发生同样的错误.在我启用第二因素身份验证之前,所有上述操作都正常.

根据上述错误说明,我转到了上述地址:https://gitlab.com/profile/personal_access_tokens.我创建了以下标记,并保存标记的密钥.

在此输入图像描述

但是,我不知道如何处理这个密钥.谁能告诉我如何使用此键启用像的基本操作git pull,git clone,git push等...

编辑

在启用第二因素身份验证之前,我在本地有很多回购.我希望这些也能奏效.

git authentication gitlab

19
推荐指数
4
解决办法
4575
查看次数

创建 Helm 图表扩展现有图表

我正在使用https://gitlab.com/charts/gitlab在 Openshift 集群上部署图表中包含的某些组件。现在我只想部署包含的 Prometheus 图表。我完成了这个,有一个特定的values.yaml配置。

我想扩展 Gitlab 掌舵图,为此我将其添加为我自己的图表的要求。每当我将前一个添加values.yaml为我的值的子部分时,问题就会出现。

部署上游 Gitlab 图表适用于:

global:
  registry:
    enabled: false
  # Disabling minio still requires to disable gitlab.minio or it will complain about "A valid backups.objectStorage.config.secret is needed"
  minio:
    enabled: false
  ingress:
    enabled: false
    configureCertmanager: false

nginx-ingress:
  enabled: false
registry:
  enabled: false
certmanager:
  install: false
  rbac:
    create: false
...
Run Code Online (Sandbox Code Playgroud)

将我的图表(包括配置)部署为子图表不起作用

global:
  registry:
    enabled: false
  # Disabling minio still requires to disable gitlab.minio or it will complain about …
Run Code Online (Sandbox Code Playgroud)

gitlab kubernetes kubernetes-helm

9
推荐指数
1
解决办法
3619
查看次数

如何为父 Helm 图表指定值

我正在尝试根据https://gitlab.com/charts/gitlab/blob/master/requirements.yaml配置包含在 Gitlab Helm 图表中的 Prometheus

我的主要问题是如何配置 Prometheus,因为以下values.yaml似乎被忽略了:

global:
  registry:
    enabled: false
  # Disabling minio still requires to disable gitlab.minio or it will complain about "A valid backups.objectStorage.config.secret is needed"
  minio:
    enabled: false
  ingress:
    configureCertmanager: false
    class: "nginx"
 ...

prometheus:
  install: true
  rbac:
    create: true
  #kubeStateMetrics:
  #  enabled: true
  nodeExporter:
    enabled: true
  #pushgateway:
  #  enabled: true

  server:
    configMapOverrideName: prometheus-config
    configPath: /etc/prometheus/conf/prometheus.yml
    persistentVolume:
      enabled: true
      accessModes:
      - ReadWriteMany
      mountPath: /etc/prometheus/conf
      # Increase afterwards, this is for my tests …
Run Code Online (Sandbox Code Playgroud)

openshift gitlab kubernetes kubernetes-helm

6
推荐指数
1
解决办法
783
查看次数

运行 Ansible playbook 时出现 UNREACHABLE 错误

我确实可以访问目标计算机的 ssh,并且它可以工作,但是每当我运行此剧本时,我都会收到以下错误输出:

sudo ansible-playbook ansible-playbook-test.yml

PLAY [openstack] *****************************************************************************************************************************************************************************************

TASK [Gathering Facts] ***********************************************************************************************************************************************************************************
fatal: [amachine]: UNREACHABLE! => {"changed": false, "msg": "Failed to connect to the host via ssh: Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password,keyboard-interactive).\r\n", "unreachable": true}
        to retry, use: --limit @/blah/ansible-play/ansible-playbook-test.retry

PLAY RECAP ***********************************************************************************************************************************************************************************************
amachine       : ok=0    changed=0    unreachable=1    failed=0
Run Code Online (Sandbox Code Playgroud)

我的剧本就是这样简单:

---
# hosts could have been "remote" or "all" as well

- hosts: openstack
  tasks:
    - name: test connection
      ping:
      remote_user: djuarezg
      vars:
        ansible_ssh_extra_args: '-K -o ControlPath=none'



- hosts: openstack
  tasks:
    - name: …
Run Code Online (Sandbox Code Playgroud)

ansible

5
推荐指数
2
解决办法
1万
查看次数

Kubernetes集群上的Gitlab CI(Openstack)

我正在尝试关注如何使用Gitlab CI与我使用Openstack创建的Kubernetes集群这个简短的文档:https://docs.gitlab.com/runner/install/kubernetes.html

我设法创建它,但是每次我创建ConfigMap和Deployment时,如前面链接中所指定的那样,它创建的pod都会卡在CrashLoopBackOff中,如下所示:

NAMESPACE     NAME                                            READY     STATUS             RESTARTS   AGE
gitlab        gitlab-runner-3998042981-f8dlh                  0/1       CrashLoopBackOff   36         2h
gitlab        gitlab-runner-3998042981-g9m5g                  0/1       CrashLoopBackOff   36         2h
gitlab        gitlab-runner-3998042981-q0bth                  0/1       CrashLoopBackOff   36         2h
gitlab        gitlab-runner-3998042981-rjztk                  0/1       CrashLoopBackOff   36         2h
kube-system   coredns-1977636023-1q47s                        1/1       Running            0          21h
kube-system   grafana-1173934969-vw49f                        1/1       Running            0          21h
kube-system   node-exporter-gitlab-ci-hc6k3ffax54o-minion-0   1/1       Running            0          21h
kube-system   node-exporter-gitlab-ci-hc6k3ffax54o-minion-1   1/1       Running            0          21h
kube-system   prometheus-873144915-s9m6j                      1/1       Running            0          21h
Run Code Online (Sandbox Code Playgroud)

我的问题是我无法知道为什么会发生这种情况,因为pod日志在未创建时不可用.

除此之外,我只是不知道如何处理指定的卷,因为我认为这与crashloops有一些关系.

部署指定:

- configMap:
      name: gitlab-runner
    name: config
  - hostPath:
      path: /usr/share/ca-certificates/mozilla
    name: cacerts …
Run Code Online (Sandbox Code Playgroud)

openstack gitlab gitlab-ci kubernetes kubectl

4
推荐指数
1
解决办法
895
查看次数

如何通过 gitlab-rails 更改电子邮件地址(避免电子邮件重新确认)

当我等待将合并请求引入 Gitlab 以避免此问题时,我需要一种解决方法来通过 gitlab-rails 控制台编辑用户的电子邮件地址。

使用这个:

user = User.find_by(name: 'test')
user.email = 'test@example.com'
user.save
Run Code Online (Sandbox Code Playgroud)

允许编辑用户,但系统要求我在应用新电子邮件之前确认新电子邮件。任何想法?

gitlab

3
推荐指数
1
解决办法
3800
查看次数

使用 Kubernetes client-go 创建作业

目前我有一段基于其他示例的 go 代码。我可以列出所有的 pod、作业……等等,但是我在Openshift上创建作业时遇到了一个相当棘手的问题。

我的代码的以下部分应该创建一个作业,我什至得到一个响应,但没有在提到的命名空间上创建作业:

func main() {
    var kubeconfig *string
    if home := homedir.HomeDir(); home != "" {
        kubeconfig = flag.String("kubeconfig", filepath.Join(home, ".kube", "config"), "(optional) absolute path to the kubeconfig file")
    } else {
        kubeconfig = flag.String("kubeconfig", "", "absolute path to the kubeconfig file")
    }
    flag.Parse()
    config, err := clientcmd.BuildConfigFromFlags("", *kubeconfig)
    if err != nil {
        panic(err)
    }
    clientset, err := kubernetes.NewForConfig(config)
    if err != nil {
        panic(err)
    }
    jobsClient := clientset.BatchV1().Jobs("gitlab")
    job := &batchv1.Job{
        ObjectMeta: metav1.ObjectMeta{ …
Run Code Online (Sandbox Code Playgroud)

go openshift kubernetes

3
推荐指数
1
解决办法
5275
查看次数

禁用对剧本定义的主机密钥检查

关于如何在ansible清单文件中设置host_key_checking = false?我想知道是否可以更改剧本定义中的此设置。

我的剧本是自动调用的,我无法export在启动剧本之前设置 ENV 变量。

这是我尝试过的:

---
- hosts: localhost
  environment:
    ANSIBLE_HOST_KEY_CHECKING: false
  roles:
    - including_vars
Run Code Online (Sandbox Code Playgroud)

问题是,如果我在 playbook 任务期间添加主机,则会收到以下错误:

无法到达!=> {"changed": false, "msg": "无法通过 ssh 连接到主机: 主机密钥验证失败。\r\n", "unreachable": true}

这似乎表明环境变量没有被使用。

关于如何在运行时更改此设置的任何想法?

ansible

2
推荐指数
1
解决办法
1万
查看次数