X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/983e7c81e1a185eda8f5c71ab78c4b207116edf3..dbaa58c1c806799435ca5741b3f61bc6b65b6569:/apps/workbench/app/models/repository.rb diff --git a/apps/workbench/app/models/repository.rb b/apps/workbench/app/models/repository.rb index b9b9ce3359..8b89d57ee9 100644 --- a/apps/workbench/app/models/repository.rb +++ b/apps/workbench/app/models/repository.rb @@ -1,6 +1,10 @@ +# Copyright (C) The Arvados Authors. All rights reserved. +# +# SPDX-License-Identifier: AGPL-3.0 + class Repository < ArvadosBase def self.creatable? - current_user and current_user.is_admin + false end def attributes_for_display super.reject { |x| x[0] == 'fetch_url' } @@ -48,15 +52,6 @@ class Repository < ArvadosBase subtree end - # git 2.1.4 does not use credential helpers reliably, see #5416 - def self.disable_repository_browsing? - return false if Rails.configuration.use_git2_despite_bug_risk - if @buggy_git_version.nil? - @buggy_git_version = /git version 2/ =~ `git version` - end - @buggy_git_version - end - # http_fetch_url returns the first http:// or https:// url (if any) # in the api response's clone_urls attribute. def http_fetch_url @@ -81,9 +76,9 @@ class Repository < ArvadosBase # non-zero. def run_git *gitcmd if not @workdir - workdir = File.expand_path uuid+'.git', Rails.configuration.repository_cache + workdir = File.expand_path uuid+'.git', Rails.configuration.Workbench.RepositoryCache if not File.exists? workdir - FileUtils.mkdir_p Rails.configuration.repository_cache + FileUtils.mkdir_p Rails.configuration.Workbench.RepositoryCache [['git', 'init', '--bare', workdir], ].each do |cmd| system *cmd @@ -96,10 +91,10 @@ class Repository < ArvadosBase "credential.#{http_fetch_url}.username", 'none'], ['git', '--git-dir', @workdir, 'config', '--local', "credential.#{http_fetch_url}.helper", - '!token(){ echo password="$ARVADOS_API_TOKEN"; }; token'], + '!cred(){ cat >/dev/null; if [ "$1" = get ]; then echo password=$ARVADOS_API_TOKEN; fi; };cred'], ['git', '--git-dir', @workdir, 'config', '--local', 'http.sslVerify', - Rails.configuration.arvados_insecure_https ? 'false' : 'true'], + Rails.configuration.TLS.Insecure ? 'false' : 'true'], ].each do |cmd| system *cmd raise GitCommandError.new($?.to_s) unless $?.exitstatus == 0