Merge branch 'develop' of http://git.trustie.net/jacknudt/trustieforge into develop
Conflicts: app/controllers/repositories_controller.rb 解决冲突
This commit is contained in:
commit
88cdb5a3ed
4
Gemfile
4
Gemfile
|
@ -44,9 +44,13 @@ group :development do
|
||||||
gem 'grape-swagger'
|
gem 'grape-swagger'
|
||||||
gem 'better_errors', '~> 1.1.0'
|
gem 'better_errors', '~> 1.1.0'
|
||||||
gem 'rack-mini-profiler', '~> 0.9.3'
|
gem 'rack-mini-profiler', '~> 0.9.3'
|
||||||
|
<<<<<<< HEAD
|
||||||
|
#gem 'win32console'
|
||||||
|
=======
|
||||||
if RUBY_PLATFORM =~ /w32/
|
if RUBY_PLATFORM =~ /w32/
|
||||||
gem 'win32console'
|
gem 'win32console'
|
||||||
end
|
end
|
||||||
|
>>>>>>> 1dae37f613838b2ada8b8f872abec71b256cb1ad
|
||||||
end
|
end
|
||||||
|
|
||||||
group :development, :test do
|
group :development, :test do
|
||||||
|
|
|
@ -0,0 +1,235 @@
|
||||||
|
# = Redmine configuration file
|
||||||
|
#
|
||||||
|
# Each environment has it's own configuration options. If you are only
|
||||||
|
# running in production, only the production block needs to be configured.
|
||||||
|
# Environment specific configuration options override the default ones.
|
||||||
|
#
|
||||||
|
# Note that this file needs to be a valid YAML file.
|
||||||
|
# DO NOT USE TABS! Use 2 spaces instead of tabs for identation.
|
||||||
|
#
|
||||||
|
# == Outgoing email settings (email_delivery setting)
|
||||||
|
#
|
||||||
|
# === Common configurations
|
||||||
|
#
|
||||||
|
# ==== Sendmail command
|
||||||
|
#
|
||||||
|
# production:
|
||||||
|
# email_delivery:
|
||||||
|
# delivery_method: :sendmail
|
||||||
|
#
|
||||||
|
# ==== Simple SMTP server at localhost
|
||||||
|
#
|
||||||
|
# production:
|
||||||
|
# email_delivery:
|
||||||
|
# delivery_method: :smtp
|
||||||
|
# smtp_settings:
|
||||||
|
# address: smtp.163.com
|
||||||
|
# port: 25
|
||||||
|
#
|
||||||
|
# ==== SMTP server at example.com using LOGIN authentication and checking HELO for foo.com
|
||||||
|
#
|
||||||
|
# production:
|
||||||
|
# email_delivery:
|
||||||
|
# delivery_method: :smtp
|
||||||
|
# smtp_settings:
|
||||||
|
# address: smtp.gmail.com
|
||||||
|
# port: 587
|
||||||
|
# authentication: :login
|
||||||
|
# domain: 'foo.com'
|
||||||
|
# user_name: senluowanxiangt@gmail.com
|
||||||
|
# password: 1913TXBja
|
||||||
|
#
|
||||||
|
# ==== SMTP server at example.com using PLAIN authentication
|
||||||
|
#
|
||||||
|
# production:
|
||||||
|
# email_delivery:
|
||||||
|
# delivery_method: :smtp
|
||||||
|
# smtp_settings:
|
||||||
|
# address: smtp.gmail.com
|
||||||
|
# port: 587
|
||||||
|
# authentication: :plain
|
||||||
|
# domain: 'example.com'
|
||||||
|
# user_name: senluowanxiangt@gmail.com
|
||||||
|
# password: 1913TXBja
|
||||||
|
#
|
||||||
|
# ==== SMTP server at using TLS (GMail)
|
||||||
|
#
|
||||||
|
# This might require some additional configuration. See the guides at:
|
||||||
|
# http://www.redmine.org/projects/redmine/wiki/EmailConfiguration
|
||||||
|
#
|
||||||
|
# production:
|
||||||
|
# email_delivery:
|
||||||
|
# delivery_method: :smtp
|
||||||
|
# smtp_settings:
|
||||||
|
# enable_starttls_auto: true
|
||||||
|
# address: smtp.gmail.com
|
||||||
|
# port: 587
|
||||||
|
# domain: "smtp.gmail.com" # 'your.domain.com' for GoogleApps
|
||||||
|
# authentication: :plain
|
||||||
|
# user_name: senluowanxiangt@gmail.com
|
||||||
|
# password: 1913TXBja
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# === More configuration options
|
||||||
|
#
|
||||||
|
# See the "Configuration options" at the following website for a list of the
|
||||||
|
# full options allowed:
|
||||||
|
#
|
||||||
|
# http://wiki.rubyonrails.org/rails/pages/HowToSendEmailsWithActionMailer
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
default:
|
||||||
|
email_delivery:
|
||||||
|
delivery_method: :smtp
|
||||||
|
smtp_settings:
|
||||||
|
address: mail.trustie.net
|
||||||
|
port: 25
|
||||||
|
domain: mail.trustie.net
|
||||||
|
authentication: :login
|
||||||
|
user_name: "mail@trustie.net"
|
||||||
|
password: "loong2010"
|
||||||
|
|
||||||
|
# Absolute path to the directory where attachments are stored.
|
||||||
|
# The default is the 'files' directory in your Redmine instance.
|
||||||
|
# Your Redmine instance needs to have write permission on this
|
||||||
|
# directory.
|
||||||
|
# Examples:
|
||||||
|
# attachments_storage_path: /var/redmine/files
|
||||||
|
# attachments_storage_path: D:/redmine/files
|
||||||
|
attachments_storage_path:
|
||||||
|
|
||||||
|
# Configuration of the autologin cookie.
|
||||||
|
# autologin_cookie_name: the name of the cookie (default: autologin)
|
||||||
|
# autologin_cookie_path: the cookie path (default: /)
|
||||||
|
# autologin_cookie_secure: true sets the cookie secure flag (default: false)
|
||||||
|
autologin_cookie_name: "autologin_trustie"
|
||||||
|
autologin_cookie_path:
|
||||||
|
autologin_cookie_secure:
|
||||||
|
|
||||||
|
# Configuration of SCM executable command.
|
||||||
|
#
|
||||||
|
# Absolute path (e.g. /usr/local/bin/hg) or command name (e.g. hg.exe, bzr.exe)
|
||||||
|
# On Windows + CRuby, *.cmd, *.bat (e.g. hg.cmd, bzr.bat) does not work.
|
||||||
|
#
|
||||||
|
# On Windows + JRuby 1.6.2, path which contains spaces does not work.
|
||||||
|
# For example, "C:\Program Files\TortoiseHg\hg.exe".
|
||||||
|
# If you want to this feature, you need to install to the path which does not contains spaces.
|
||||||
|
# For example, "C:\TortoiseHg\hg.exe".
|
||||||
|
#
|
||||||
|
# Examples:
|
||||||
|
# scm_subversion_command: svn # (default: svn)
|
||||||
|
# scm_mercurial_command: C:\Program Files\TortoiseHg\hg.exe # (default: hg)
|
||||||
|
# scm_git_command: /usr/local/bin/git # (default: git)
|
||||||
|
# scm_cvs_command: cvs # (default: cvs)
|
||||||
|
# scm_bazaar_command: bzr.exe # (default: bzr)
|
||||||
|
# scm_darcs_command: darcs-1.0.9-i386-linux # (default: darcs)
|
||||||
|
#
|
||||||
|
scm_subversion_command:
|
||||||
|
scm_mercurial_command:
|
||||||
|
scm_git_command:
|
||||||
|
scm_cvs_command:
|
||||||
|
scm_bazaar_command:
|
||||||
|
scm_darcs_command:
|
||||||
|
|
||||||
|
# Absolute path to the SCM commands errors (stderr) log file.
|
||||||
|
# The default is to log in the 'log' directory of your Redmine instance.
|
||||||
|
# Example:
|
||||||
|
# scm_stderr_log_file: /var/log/redmine_scm_stderr.log
|
||||||
|
scm_stderr_log_file:
|
||||||
|
|
||||||
|
# Key used to encrypt sensitive data in the database (SCM and LDAP passwords).
|
||||||
|
# If you don't want to enable data encryption, just leave it blank.
|
||||||
|
# WARNING: losing/changing this key will make encrypted data unreadable.
|
||||||
|
#
|
||||||
|
# If you want to encrypt existing passwords in your database:
|
||||||
|
# * set the cipher key here in your configuration file
|
||||||
|
# * encrypt data using 'rake db:encrypt RAILS_ENV=production'
|
||||||
|
#
|
||||||
|
# If you have encrypted data and want to change this key, you have to:
|
||||||
|
# * decrypt data using 'rake db:decrypt RAILS_ENV=production' first
|
||||||
|
# * change the cipher key here in your configuration file
|
||||||
|
# * encrypt data using 'rake db:encrypt RAILS_ENV=production'
|
||||||
|
database_cipher_key:
|
||||||
|
|
||||||
|
# Set this to false to disable plugins' assets mirroring on startup.
|
||||||
|
# You can use `rake redmine:plugins:assets` to manually mirror assets
|
||||||
|
# to public/plugin_assets when you install/upgrade a Redmine plugin.
|
||||||
|
#
|
||||||
|
#mirror_plugins_assets_on_startup: false
|
||||||
|
|
||||||
|
# Your secret key for verifying cookie session data integrity. If you
|
||||||
|
# change this key, all old sessions will become invalid! Make sure the
|
||||||
|
# secret is at least 30 characters and all random, no regular words or
|
||||||
|
# you'll be exposed to dictionary attacks.
|
||||||
|
#
|
||||||
|
# If you have a load-balancing Redmine cluster, you have to use the
|
||||||
|
# same secret token on each machine.
|
||||||
|
#secret_token: 'change it to a long random string'
|
||||||
|
|
||||||
|
# Absolute path (e.g. /usr/bin/convert, c:/im/convert.exe) to
|
||||||
|
# the ImageMagick's `convert` binary. Used to generate attachment thumbnails.
|
||||||
|
imagemagick_convert_command: '/home/pdl/redmine-2.3.2-0/common/bin/convert'
|
||||||
|
|
||||||
|
# Configuration of RMagcik font.
|
||||||
|
#
|
||||||
|
# Redmine uses RMagcik in order to export gantt png.
|
||||||
|
# You don't need this setting if you don't install RMagcik.
|
||||||
|
#
|
||||||
|
# In CJK (Chinese, Japanese and Korean),
|
||||||
|
# in order to show CJK characters correctly,
|
||||||
|
# you need to set this configuration.
|
||||||
|
#
|
||||||
|
# Because there is no standard font across platforms in CJK,
|
||||||
|
# you need to set a font installed in your server.
|
||||||
|
#
|
||||||
|
# This setting is not necessary in non CJK.
|
||||||
|
#
|
||||||
|
# Examples for Japanese:
|
||||||
|
# Windows:
|
||||||
|
# rmagick_font_path: C:\windows\fonts\msgothic.ttc
|
||||||
|
# Linux:
|
||||||
|
# rmagick_font_path: /usr/share/fonts/ipa-mincho/ipam.ttf
|
||||||
|
#
|
||||||
|
rmagick_font_path:
|
||||||
|
|
||||||
|
# Maximum number of simultaneous AJAX uploads
|
||||||
|
#max_concurrent_ajax_uploads: 2
|
||||||
|
#pic_types: "bmp,jpeg,jpg,png,gif"
|
||||||
|
|
||||||
|
repository_root_path: '/tmp/htdocs'
|
||||||
|
judge_server: 'http://judge.trustie.net/'
|
||||||
|
|
||||||
|
# Git's url
|
||||||
|
gitlab_address: 'http://gitfast.trustie.net'
|
||||||
|
|
||||||
|
# specific configuration options for production environment
|
||||||
|
# that overrides the default ones
|
||||||
|
production:
|
||||||
|
# CJK support
|
||||||
|
rmagick_font_path: /usr/share/fonts/ipa-mincho/ipam.ttf
|
||||||
|
judge_server: 'http://192.168.80.21:8080/'
|
||||||
|
repository_root_path: '/home/pdl/redmine-2.3.2-0/apache2/htdocs'
|
||||||
|
cookie_domain: ".trustie.net"
|
||||||
|
email_delivery:
|
||||||
|
delivery_method: :smtp
|
||||||
|
smtp_settings:
|
||||||
|
address: mail.trustie.net
|
||||||
|
port: 25
|
||||||
|
domain: mail.trustie.net
|
||||||
|
authentication: :login
|
||||||
|
user_name: "mail@trustie.net"
|
||||||
|
password: "loong2010"
|
||||||
|
|
||||||
|
# specific configuration options for development environment
|
||||||
|
# that overrides the default ones
|
||||||
|
development:
|
||||||
|
email_delivery:
|
||||||
|
delivery_method: :smtp
|
||||||
|
smtp_settings:
|
||||||
|
address: mail.trustie.net
|
||||||
|
port: 25
|
||||||
|
domain: mail.trustie.net
|
||||||
|
authentication: :login
|
||||||
|
user_name: "mail@trustie.net"
|
||||||
|
password: "loong2010"
|
|
@ -0,0 +1,9 @@
|
||||||
|
Gitlab.configure do |config|
|
||||||
|
# config.endpoint = 'http://192.168.41.130:3000/trustie/api/v3' # API endpoint URL, default: ENV['GITLAB_API_ENDPOINT']
|
||||||
|
# config.private_token = 'cK15gUDwvt8EEkzwQ_63' # user's private token, default: ENV['GITLAB_API_PRIVATE_TOKEN']
|
||||||
|
config.endpoint = 'http://gitfast.trustie.net/api/v3' # API endpoint URL, default: ENV['GITLAB_API_ENDPOINT']
|
||||||
|
config.private_token = 'fPc_gBmEiSANve8TCfxW' # user's private token, default: ENV['GITLAB_API_PRIVATE_TOKEN']
|
||||||
|
# Optional
|
||||||
|
# config.user_agent = 'Custom User Agent' # user agent, default: 'Gitlab Ruby Gem [version]'
|
||||||
|
# config.sudo = 'user' # username for sudo mode, default: nil
|
||||||
|
end
|
|
@ -102,5 +102,12 @@ class Gitlab::Client
|
||||||
get("/projects/#{project}/repository/commits/#{sha}/diff")
|
get("/projects/#{project}/repository/commits/#{sha}/diff")
|
||||||
end
|
end
|
||||||
alias_method :repo_commit_diff, :commit_diff
|
alias_method :repo_commit_diff, :commit_diff
|
||||||
|
|
||||||
|
#Get the commits count of each contributor in a project
|
||||||
|
#@param [Integer] project the ID fo a project.
|
||||||
|
# @return [Gitlab::ObjectifiedHash]
|
||||||
|
def contributors(project)
|
||||||
|
get("/projects/#{project}/repository/contributors")
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -0,0 +1,30 @@
|
||||||
|
#coding=utf-8
|
||||||
|
|
||||||
|
namespace :gitlab do
|
||||||
|
desc "sync gitlab's users which lost in last sync"
|
||||||
|
task :query => :environment do
|
||||||
|
g = Gitlab.client
|
||||||
|
projects = Project.all
|
||||||
|
users_email = User.find_by_sql("select mail from users where mail != '' ")
|
||||||
|
projects.each do|project|
|
||||||
|
gpid = project.gpid
|
||||||
|
begin
|
||||||
|
contributors_list = g.contributors(gpid)
|
||||||
|
rescue
|
||||||
|
next
|
||||||
|
end
|
||||||
|
puts "project_id #{project.id}"
|
||||||
|
contributors_list.each do|contributor|
|
||||||
|
if users_email.include?(contributor.email)
|
||||||
|
contributors_list.delete(contributor)
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
contributors_list.each do|contributor|
|
||||||
|
puts "name #{contributor.name}"
|
||||||
|
puts "email #{contributor.email}"
|
||||||
|
puts "commits_count #{contributor.commits}"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
Loading…
Reference in New Issue