Posts
sonar-tsql-plugin - Repository for T-SQL language plugin for Sonar
sonar-tsql-plugin 是用來分析 T-SQL 的 SonarQube 套件,支援 14 的微軟內建的 analysis rules,以及 120 個 SQL Code Guard analysis rule。
套件可在 GitHub - gretard/sonar-tsql-plugin: Repository for T-SQL language plugin for Sonar 這邊下載,並透過手動的方式安裝套件。
套件安裝完後因為該套件無實作設定頁面,因此要到 Rules 頁面確認套件的安裝狀態,安裝成功的話應該可以在左側看到 T-SQL。Rule 預設是未啟用的,這邊也可以順帶啟用。
除了 Rule 的設定外,因為該套件只是簡單的將他跟 Visual Studio 的資料庫專案與 SQL Code Guard 整合,所以用 MSBuild建置時需加帶 /p:RunSqlCodeAnalysis=true 參數,且在 SonarQube 設定檔中加設定 sonar.tsql.cg.path,將該設定值指到 SQL Code Guard 運行檔的位置。
最後一提,如同上面所述,該套件並未實作設定頁面,所以一切設定都設在設定檔,要查閱該套件可做的設定的話,可參閱Configuration · gretard/sonar-tsql-plugin Wiki · GitHub這邊。
Link GitHub - gretard/sonar-tsql-plugin: Repository for T-SQL language plugin for Sonar
read morePosts
Mailgun - Authorized Recipients
Mailgun 使用 Sandbox subdomain 時,預設只能發送訊息給自己的信箱,除非加上自己的 Domain 或是設定 Authorized recipients。
要設定 Autorized recipients,點選網頁右上角的帳號名稱,點選 Account Settings 選單選項。
接著切至 Autorized recipients 頁面。
點選 Invite New Recipient 按鈕。
將要加入的 Recipient mail 位置填入,按下 Invite Recipient 按鈕。
Recipient 就會被加到列表中,此時還是 Unverified 的狀態。
Recipient 會收到來自 Mailgun 的驗證信件,按下 Aggree 按鈕進行驗證的動作。
再次按下 Yes 按鈕確認。
驗證的動作就完成了。
此時 Mailgun 的 Authorized Recipients 內的狀態會變為 Verified。
Mailgun 就可以正常的發送信件給 Recipient 了。
read morePosts
Mailgun - Getting started
要使用 Mailgun 發送 Email,先要有 Mailgun 會員帳號。
註冊成為 Mailgun 會員後,會被導到 https://app.mailgun.com/app/account/setup 頁面,該頁面會簡單的展示 Curl、Ruby、Python、PHP、Java、與 C# 等不同的使用方式。
這邊可以簡單的用 Curl 測試一下,下完 Curl 命令後可從 API 的回應看到訊息已發送至 Mailgun 且被 Queue 起來供後續處理。
處理的紀錄可在 Mailgun 的 Logs 頁面查閱。
若有需要也可以進一步展開查閱更為細節的部分。
Link Transactional Email API Service For Developers | Mailgun
read morePosts
Git - Git status pager
使用 Git 做版控的程式如果一次變動過多,使用 Git Status 查閱變動時,我們會看到所有變動會一次全部都顯示出來,無法有效的查閱程式的變動。
這時我們可以調用 Git Config 命令將 Git Status 的分頁功能開啟。
git config --global pager.status true 或是手動修改設定檔開啟也可以。
這樣 Git Status 就會一頁一頁的顯示。
read morePosts
Cmder - Force as default terminal for console application
若要強制讓所有非由 Cmder 直接開啟的 Terminal 視窗都由 Cmder 開啟,可開啟 Cmder 的設定頁面。
切到 [Integration | Default term] 頁面,勾選 Force ConEmu as default terminal for console applications 後存檔離開。
這樣當我們開啟 MS-DOS 或是 PowerShell 時就會強制使用 Cmder 開啟。
read morePosts
SonarQube - Integrate with GitLab
要將 SonarQube 與 GitLab 整合,讓 GitLab 簽入或是發送 MergeRequest 時可透過 SonqrQube 進行分析,即早發現程式的問題,SonarQube 需先透過 Update Center 安裝 GitLab 套件。
SonarQube 的 GitLab 套件安裝好後進行 SonarQube 的重啟。
重啟完後進入 Administration 的 General Settings 頁面,切至 GitLab 頁籤進行相關的設定。
最主要的設定有兩個,一個是 GitLab url,需填入 GitLab 服務的位置。
另外一個是 GitLab User Token,讓 SonarQube 可以存取 GitLab 用。這樣當 GitLab 觸發 SonarQube 分析完,SonarQube 才可以將分析的結果放至 GitLab 上。
這邊輸入的 GitLab User Token 是 GitLab 的 Access Token,可在 GitLab 的 [UserSettings | Access Tokens] 取得。
SonarQube 的 GitLab 套件安裝並設定好後,接著要進行 GitLab CI 的設定。只要在 GitLab CI 的設定檔中像下面這樣調用 SonarScanner 觸發 SonarQube 分析即可。
read morePosts
>-
運行 SonarQubeAnalyze 後如果看到 ERROR: JAVA_HOME exists but does not point to a valid java home folder 這樣的錯誤訊息。
我們可能會查閱系統中的 JAVA_HOME 環境變數,且查驗該環境變量所指定的位置是否存在,及是否指到正確的目錄。。。等。
查驗過後你可能會發現一切都是正常的卻運行不起來。這是因為在 SonarQubeAnalyze 檔中有去設定 JAVA_HOME 的位置,該位置並非環境變量所指定的位置,而是指到 sonar-scanner 下的 jre 目錄。
所以問題發生的話,可以檢查一下 sonar-scanner 下的 jre 目錄看看。像是筆者碰到的狀況就是因為沒將檔案加入並上傳到 git,從 git 拉下來的 jre 目錄在有少檔的狀況下就無法正常的運作。
read morePosts
Windows Server - Switch from Server Core to Windows GUI
Windows Server 有 Server Core 與 GUI 兩種模式,有時後玩一玩 Windows 會不知怎麼的從 GUI 模式變到 Server Core 模式,這時進到 Windows 就會看到空空的一遍,只有一個命令提示字元在上面。
要恢復到本來熟悉的 GUI 畫面,我們可以用 PowerShell 或是 MS-DOS 將 Windows Server 切回到 GUI 模式。
這邊直接使用 MS-DOS 命令切回 GUI 模式。
Dism /online /enable-feature /featurename:Server-Gui-Mgmt /featurename:Server-Gui-Shell /featurename:ServerCore-FullServer /all 跑完後重新啟動即會恢復到熟悉的 GUI 畫面。
Link Windows 2012 R2 Remote Desktop Is A Black Screen With Command Prompt Only 如何在 Windows Server 2012 的 Server Core 與 GUI 介面做切換 | 小歐ou | 菜鳥自救會 - 點部落
read morePosts
GitLab - Build project with GitLab CI
GitLab Runner 設定好後,可以開始使用 GitLab CI 來建置我們的專案。
只要在 Repository 中加入 GitLab CI 的設定檔 (.gitlab-ci.yml),在設定檔中設定要如何建置專案即可。像是 .NET 程式的話,就是在這設定檔中指定使用 MSBuild 來建置專案。
stages: - build job: stage: build script: '"C:\Windows\Microsoft.NET\Framework644.0.30319\msbuild.exe" "Project.sln"' 因為筆者已經有現成的批次檔,所以設定檔這邊只是很單純的調用批次檔。
設定檔設置並放置到 Repository 後,當程式碼 Commit 到 GitLab 時即會觸發建置的動作,建置後可切換至 [GitLab | CI/CD | Jobs]。
查閱運行的情況。
如果要運行的細部結果,可在 Job 的紀錄上點擊,做進一步的查閱。
Link gitlab - Using GitLabCI with C# - Stack Overflow
read morePosts
GitLab - Setup Specific GitLab Runner
要設定 Specific GitLab Runner,需先至 GitLab 的 CI/CD 設定頁面。
找到 Runner settings。
這邊會顯示 GitLab Runner 註冊時需要的 URL 與 Token。
接著回到命令列調用 GitLab Runner 的 register,設定剛剛拿到的 URL 位置、Token、Runner 描述…等資訊。
Specific GitLab Runner 就設定完成了。
read more