接上期大坑
利用redmine的api
用ldap賬號推送賬戶
指令碼如下
filter = net::ldap::filter.eq("cn","uid=***,cn=users,dc=***,dc=com")#filter條件
ldap = net::ldap.new(:host => host,
:port => 389,
:auth => )
attrs = ["mail", "cn", "gecos", ]
treebase = "cn=users,dc=***,dc=com"
count =0
ldap.search(:base=>treebase,:size=>1000,
:attributes => attrs,
#:filter =>filter
) do |entry|
ldap_list_full.push(entry.dn)
count +=1
endputs "共有記錄#條"
b=ldap_list_full.each do |y|
b.push(y.to_s.sub!(/,cn.*$/,"").to_s.sub!(/uid=/,""))
end
n = b.reject .reject
enddef ldap_mess_list(host,uid)()
ldap_list_full=
filter = net::ldap::filter.eq("uid",uid)#filter條件
ldap = net::ldap.new(:host => host,
:port => 389,
:auth => )
attrs = ["mail", "cn", "gecos", ]
treebase = "cn=users,dc=***,dc=com" #查詢amp
hashlist = {}
count =0
ldap.search(:base=>treebase,:size=>1000,
:attributes => attrs,
:filter =>filter
) do |entry|
entry.each do |k,v|
hashlist[k.to_s]=v.to_s
endcount +=1
endenda=ldap_list(host)
c=a.each do |uid|
c.push(ldap_mess_list(host,uid).to_s)
endc.each_index do |n|
if n ==c.length-1
@users.puts c[n].gsub(/#+.*hash=/,"").gsub(">]","").gsub(':','"').gsub('=>','":').sub('[','').sub('}','}]').gsub(' ','')
elsif n ==0
@users.puts c[n].gsub(/#+.*hash=/,"").gsub(">]","").gsub(':','"').gsub('=>','":').sub('[','').sub('}','},').sub('','},').gsub(' ','')
endend
@users.close
obj = file.read("users.json")
ff =json.parse(obj)
ff.each_index do |e|
final_first_ame= ff[e]["cn"][0]
final_lastname= ff[e]["gecos"][0]
final_mail=ff[e]["mail"][0]
update_user(final_first_ame,final_lastname,final_mail)
end然後定時跑下
主要難點是ldap的查詢資料是物件,所以最後選擇生成json檔案在進行hash
redmine部署,踩坑而過
背景 部門想用個工具來做專案執行進度的管理,為了保證資料私有並且不想花錢,選了redmine。環境 阿里雲伺服器,windows server r2企業版 軟體版本構成 官方版本說明 redmine4.0寫的是upcoming,讓我望而卻步,最終選擇了3.4.6。ruby環境選了個中間版本,2.2....
後續 安裝ORK功能包踩坑之路和解決方案
根據 安裝ork功能包踩坑之路和解決方案 確實可以編譯ork功能包,但是在除錯可樂識別的案例時,出現了不能detection的問題,具體如下。如下 roslaunch robot vision freenect with calibration.launch rosrun topic tools r...
資料庫 not in 的坑(後續)
我之前寫了一篇關於select 查詢時,當not in 裡子查詢中有null值時候,那麼不返回,這個是可以理解的。但是對於多字段我沒測試。有一天開發時,發現跑出的結果和我預想的有出入,我就進行了測試,測試截圖以oracle為例,實際我還在td上也跑了,下邊每一步我都附帶了td結果 create ta...