web-dev-qa-db-ja.com

プライベートネットワークのgitlabでメール確認を無効にする方法

最近、LANにgitlabをインストールしました。ユーザーが自分のアカウントを作成しようとすると、メールの確認メッセージが表示されます。今、私の質問は、メール確認機能全体とすべてを無効にしたいです。そのためには、gitlab構成ファイルでどのファイルを構成する必要がありますか? Rubyで私が変更しなければならないオプションは非常に貧弱です。詳しく説明してください。

5
ashok

こんにちは私は最近、LDAPユーザーの確認をスキップするためにgitlabにパッチを適用する必要がありました。私はこれを良いパッチとは考えていませんが、動作します。

vim /opt/gitlab/embedded/service/gitlab-Rails/lib/api/users.rb:

  post do
    authenticated_as_admin!
    ...
                                # <patch:     
    if attrs[:extern_uid]       # skip confirmation for LDAP users
       user.skip_confirmation!  #
    end                         # >

    if user.save
      present user, with: Entities::UserFull
    else

再起動が明らかに必要です(gitlab-ctl restart)

Googleグループの回答に基づく: https://groups.google.com/forum/#!topic/gitlabhq/ctf8x0xpOOE

4
igann

バージョン7.9.0以降、JSONにconfirmパラメータを含めることで、電子メールの確認をスキップできます。たとえば、メール確認なしでユーザーJenkinsを作成する場合、ローカルgitlab APIに対して次のペイロードでPOSTを実行します:

POST /api/v3/users?private_token=<administrator token>
{
 "email" : "[email protected]",
 "password" : "123456",
 "name" : "Jenkins CI Server",
 "username" : "jenkins",
 "confirm" : "no"
}

パラメータemailpasswordnameおよびusernameは必須です。変更は、この commit で導入されました。ご覧のとおり、確認パラメータはfalse0fのいずれかであり、メールの確認を無効にする場合があります。

3
brainster