為什麼我用 Drone 取代 Jenkins 及 GitLab CI
Posted on September 7, 2017
| 1 minutes
| 135 words
| appleboy
終於有機會正式跟大家介紹為什麼我會捨棄 Jenkins 跟 GitLab CI,取而代之的是用 Go 語言寫的 Drone。今年很高興錄取台灣第一屆 DevOps Day 講師,在今年主題是『用 Drone 打造輕量級容器持續交付平台』,主要推廣這套 Drone CI/CD 工具,會議內容圍繞在 Jenkins, GitLab CI 跟 Drone 的比較。也提到為什麼我不用 Jenkins 及 GitLab CI 的幾個原因。底下整理議程大綱。
- 為什麼選擇 Drone
- Drone 基礎簡介
- Drone 架構擴展
- Drone 安裝方式
- Drone 管理介面
- Drone 測試部署
- Drone 自訂套件
[Read More]2017 COSCUP 研討會: Gitea + Drone 介紹
Posted on August 7, 2017
| 1 minutes
| 96 words
| appleboy
今年很高興可以到 COSCUP 分享『Gitea + Drone 介紹』,我是在第二天的最後一場來做分享,最後還被大會進來趕人,講超過時間了。這次是我第一次到台大社科院,太陽真的好大,兩天下來流的汗水,大概已經是一年份的了。由於今年 COSCUP 不供應午餐,在第一天中午到科技站出口,左轉第一個店面就坐下來吃麵,店面不大,賣傳統小吃,我點了麻醬麵大碗 55 元,燙青菜 35 元,真的很大碗,不知道是不是因為在學校附近的關係,所以特別大碗,我心裡想說,這裡不是台北嗎?
[Read More]Drone 自動觸發 GitLab CI 或 Jenkins 任務
Posted on June 28, 2017
| 2 minutes
| 385 words
| appleboy
Drone 是一套由 Go 語言所開發的開源碼專案,讓開發者可以使用 Docker Container 快速設定自動化測試及部署,上篇有提到『Cronjob 搭配 Drone 服務』,讓 Jenkins 或 GitLab CI 用戶可以轉換 Cron Job 任務到 Drone 上面。本篇則是會介紹如何透過 Drone 去觸發 Jenkins 或 GitLab CI 上的工作,當然這是過渡時期,希望大家最後能將工作完整移轉到 Drone 上面,不要再依靠 Jenkins 或 GitLab CI 了。本篇會教大家用三種方式來觸發 GitLab CI 或 Jenkins 任務。
- 使用 Drone CI/CD
- 使用 Docker 指令
- 使用 Command Line (命令列)
[Read More]Cronjob 搭配 Drone 服務
Posted on June 25, 2017
| 1 minutes
| 171 words
| appleboy
Drone 是一套基於 Docker Container 技術的 CI/CD 服務,它是用 Go 語言所開發,可以安裝在任何作業系統內,你可以把 Drone 當作是開源版的 Travis 服務。Drone 本身不支援排程任務,也就是說無法像 Jenkins CI 一樣可以設定每天幾點幾分執行單一 Job 任務。但是可以透過第三方工具像是 cron
來整合 Drone API 達成自動排程的效果,底下來看看該如何實作。
[Read More]在 Jenkins 跑 Golang 測試
Posted on August 2, 2016
| 1 minutes
| 201 words
| appleboy
在 Debian 7.8 安裝 Gitlab 筆記
Posted on December 12, 2015
| 5 minutes
| 974 words
| appleboy
之前寫過一篇 GitLab 快速安裝筆記,但是這次在 Debian 7.8 上安裝起來遇到蠻多問題,故寫此篇來記錄安裝遇到的問題,也會寫到如何搭配 Nginx 設定。GitLab 分兩種版本,一種是 Community Edition packages 另一種是 Enterprise Edition packages,本篇是記錄 Community 版本安裝步驟,可以到下載頁面選擇您的作業系統,就可以看到安裝方式
[Read More]Ruby Compass and Sass Auto Testing Environment
Posted on March 11, 2014
| 1 minutes
| 143 words
| appleboy
Compass 是一套 CSS Authoring Framework,也是基於 Sass 語法的一套 Framework,先前寫了 Gulp 的 Compass Plugin,在針對自動化測試時候出現版本相依性不同,造成無法自動測試成功。自動化測試目前跟 Github 最常搭配的就是 Travis CI 或者是 Codeship,當然如果非 Open source 專案可能就要自己架設 CI 伺服器,個人推薦就是 Jenkins。這次遇到的問題其實跟 Ruby Gem 版本相依性有關,由於要測試 Compass 所有 Command 語法,所以使用了 Susy + sass + compass,如果在 .travis.yml
內直接寫
[Read More]Jenkins + Apache User Auth
Posted on December 8, 2013
| 1 minutes
| 141 words
| appleboy
Jenkins + Nginx User Auth
Posted on November 13, 2013
| 1 minutes
| 188 words
| appleboy
Jenkins CI 是一套非常好的 Job 執行 Tool,可以幫忙跑專案測試,測試完成後繼續 Deploy 到相對應的伺服器,也可以自動寄信給開發者或者是指定的內部人員。在 Ubuntu 或 Debian 安裝方式非常簡單,按照下述操作就可以簡易架設完成
$ aptitude -y install openjdk-7-jre openjdk-7-jdk
$ wget -q -O - http://pkg.jenkins-ci.org/debian/jenkins-ci.org.key | sudo apt-key add -
$ sh -c 'echo deb http://pkg.jenkins-ci.org/debian binary/ > /etc/apt/sources.list.d/jenkins.list'
$ aptitude -y update
$ aptitude -y install jenkins
[Read More]