最近有個需求需要在git commit後,允許使用者在commit的當下,同時輸入一些內容做為參數去呼叫Jenkins,因此我採取的方法是在git project 下的.git/hooks/ 增加 post-commit 的檔案,然後再git commit之後,可直接在文字模式下進行互動,然後依照我輸入的東西做進一步的動作,以下就是我的 post-commit 的內容
在Git Project在commit時加入hook
- 104
- 0
最近有個需求需要在git commit後,允許使用者在commit的當下,同時輸入一些內容做為參數去呼叫Jenkins,因此我採取的方法是在git project 下的.git/hooks/ 增加 post-commit 的檔案,然後再git commit之後,可直接在文字模式下進行互動,然後依照我輸入的東西做進一步的動作,以下就是我的 post-commit 的內容
設定好環境變數後,在Power Shell卻沒辦法更新,可以用以下指令重新讀取而不用再 reboot Windows
工作差不多10年了,在面試或是被面試多少都有些心得,記錄一下在面試過程中最常被問到的一些問題,事先準備好這些問題的答案,在應對時才會有更好的幫助。
之前提供的Spring boot admin在佈署到客戶家後,即使當pom.xml和client的yaml檔都己經填寫完了,但是會發現一直處於Offline的狀態,看起來註冊沒有成功啊,原來這是因為客戶的主機是放在docker 的,這時候在client 的yaml檔就要再加入配置,告訴spring-boot-admin,目前要註冊的這台主機在哪。
這個問題是屬於Oracle字元集不符的問題,在我docker上的oracle是 UTF-8,但我要匯入的資料庫來源卻是AL16UTF16,因此要先更改字元集,匯入db時才不會出現失敗
ntlm是微軟的協定認證,全名是NT LAN Manager,在做SSRS (Reporting Service)的整合式有接觸到這個認證,雖然最終和預期想要的做法有差異而放棄,不過還是記錄一下我用Java去向SSRS進行ntlm authenitation請求的測試程式
Spring boot是一個簡單好用的framework,而且和kotlin的整合程度相當的高,除了Spring Boot外,還有一個輕巧簡單易用的Spark(不是那個做 Big Data的Apache Spark),可以讓我們搭配kotlin建立一個web framework,如果要做個簡單的微服務的話,或許也是一個可考慮的選項,以下就是利用kotlin來實作hello spark的範例。
SAP原廠提供幾種取token的方法和存活與佔用session的機制,大致上用SDK建的token有四種:
用過Spring Boot後覺得這真的是一個超快速上手的framework,比起之前的Spring來講建置環境更方便了,而網路上也有人針對使用spring boot的開源項目可以進行監控,可以在同一個界面下查看有註冊監控的專案,包含了查看Log、環境參數及目前使用的記憶體,甚至可以即時更動Log level。Spring boot admin的官方說明寫的就非常清楚了,可直接參考官方文件和Quick Guide (v1.5.2);以下就是我在建置這個監控服務的方式
在做公司的專案的時候,因為有和第三方的系統做SSO,但必須加入hosts後才能夠成功與對方系統溝通,但我們在開發環境與測試環境都是利用docker來產生環境,又不能每次都進容器去改host,好在docker 新的版本有支援加入host的參數,只要在docker run後面加上參數--add-host即可
oracle table被鎖住了,可能因為大量的查詢或是不當的操作導致明明很少的資料,但是那個一直遲遲不出來
從docker hub下載官方的jenkins使用,但是啟動起來的jenkins的時間總是和主機的時間不同,但當初在執行docker run時有指定掛載 -v /etc/localtime:/etc/localtime:ro因此linux的時間是正確的,使用docker exec進到container裡看時間也是正確的,但實際執行起來Jenkins裡的時間就是不對 ,試了一下,發現是設定的時區問題,在下docker run指令時還要再指定timezone
SonarQube 安裝後就是英文,如果想安裝中文語系的話,在登入後
進到Administrator/ System/ Update Center / available,搜尋Chinese 然後按下install就行了
不過安裝後是簡體中文
因為要簡單測試SonarQube,需要安裝mysql,因此直接採用了docker上的mysql
但在執行SonarQube scanner時發生了錯誤
Caused by: com.mysql.jdbc.PacketTooBigException: Packet for query is too large (10507322 > 4194304). You can change this value on the server by setting the max_allowed_packet' variable.
在ubuntu 16.04的環境安裝無蝦米
ECMAScript 6.0是下一代Javascript的語言標準,目前node js對ES6的支援程度比瀏覽器還好
所以要使用ES6的話,可以透過Node.js來體驗ES6和之前的javascript的語法上的差異
在Jenkins有jacoco plugin可幫我們執行測試覆蓋率及產生報表
但如果使用pipeline的話,該如何執行呢?
Java8加入了LocalDate,在使用上比Calendar更好用,寫法上也更簡潔
設置Jenkins的權限後,不知道為什麼出現這樣的問題變成無法登入
在Jenkins Checkout GitLab的專案下來時,一直遇到這樣的問題而沒辦法把專案載完
然後開始Jenkins進一步的動作,尤其每次快要載完時又出現這種Error,真的會讓人無言
Receiving objects: 68% (71394/104272), 234.75 MiB | 507.00 KiB/s
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandIn(CliGitAPIImpl.java:1719)
at org.jenkinsci.plugins.gitclient.CliGitAPIImpl.launchCommandWithCredentials(CliGitAPIImpl.java:1463)