Jenkins自動化打包環(huán)境部署

# 自動打包環(huán)境部署文檔

## 一、應用的技術棧

Gitlab +Jenkins + Gradle + pgyer

## 二拦宣、環(huán)境部署

### 1. 安裝java環(huán)境等浊,配置環(huán)境變量

確認項目對應的java版本

下載安裝參照網(wǎng)上文檔,軍職為例:

[root@localhost ~]# java -version

java version "1.8.0_261"

### 2. 安裝gradle環(huán)境导狡,配置環(huán)境變量

軍職gradle 是6.8.1

Gradle是基于Ant和Maven的構建工具鉴逞,同樣需要Java運行環(huán)境记某,安裝之前需要先安裝配置好Java環(huán)境,可以參考之前的博客:[Linux下安裝JDK](http://www.cnblogs.com/imyalost/p/8709578.html)

Gradle官方下載地址:https://gradle.org/releases/

#### 2.1 下載 gradle-6.8.1-all.zip文件到服務器上

#### 2.2 解壓文件

```shell

# 將文件解壓到指定目錄

unzip -d /opt/gradle gradle-6.8.1-all.zip

```

#### 2.3 配置環(huán)境變量

```shell

vim /etc/profile

# 在配置文件中增加環(huán)境變量配置

export PATH=$PATH:/opt/gradle/gradle-6.8.1/bin

# 生效配置文件

source /etc/profile

#查看版本构捡,驗證是否安裝正確

gradle --version

```

### 3. 安裝jenkins環(huán)境

#### 3.1 下載jenkins

```shell

下載jenkins地址:

https://www.jenkins.io/download/

http://mirrors.jenkins.io/war-stable/

linux下載命令直接下載war包:

wget http://mirrors.jenkins.io/war-stable/latest/jenkins.war

```

#### 3.2 下載tomcat

```shell

tomcat 下載地址https://tomcat.apache.org/

# 下載tomcat液南,并解壓到指定目錄(高版本的tomcat,要求更高版本的java版本勾徽,會報404贺拣,因為需要使用當前版本的java,所以tomcat不要用太新的版本捂蕴,測試apache-tomcat-9.0.38.tar.gz 可以)

tar -zxvf apache-tomcat-9.0.38.tar.gz -C /opt/

# 將jenkins.war報 移動或復制到webapps目錄下

cp jenkins.war /opt/apache-tomcat-9.0.38/webapps/

#啟動tomcat服務器

sh /opt/apache-tomcat-9.0.38/bin/startup.sh

# 登錄jenkins?

http://192.168.9.122:8080/jenkins

```

#### 3.3? jenkins配置

```shell

# 初始密碼位置

/root/.jenkins/secrets/initialAdminPassword

# 代理配置譬涡,服務器連接外網(wǎng)無需配置代理,如未連網(wǎng)配置代理服務器 保存繼續(xù)代理可用會自動開始下載插件

```

### 4. 安裝android sdk

```shell

安裝 SDK Tools 路徑: https://www.androiddevtools.cn/

# 安裝安卓SDK Tools

wget https://dl.google.com/android/android-sdk_r24.4.1-linux.tgz

# 解壓到指定位置

tar -zxvf android-sdk_r24.4.1-linux.tgz? -C /opt/

#配置環(huán)境變量

vim /etc/profile

export PATH=$PATH:/opt/android-sdk-linux/platforms

export PATH=$PATH:/opt/android-sdk-linux/tools

export ANDROID_SDK_ROOT=/opt/android-sdk-linux

# 生效配置文件

source /etc/profile

# 展示可下載的sdk列表

android list sdk --all

# 安裝對應的編號(開發(fā)確認對應版本)

android update sdk -u --all --filter 2,3,4,51,53

# 安裝完成

jenkins工作目錄下啥辨,項目目錄下執(zhí)行構建命令即可

gradle assembleDebug

```

## 二涡匀、環(huán)境配置

### 1.配置jenkins

```shell

# 新增插件

Upload to pgyer (上傳蒲公英用)

GitLab Plugin (做gitlab webhooks用)

如果需要企業(yè)微信或釘釘通知下載對應插件或者在構建后操作中調用對應api即可

# 安裝完成后 構建觸發(fā)器中增加了如下現(xiàn)象,這個url 在git中用:

Build when a change is pushed to GitLab. GitLab webhook URL: http://192.168.9.122:8080/jenkins/project/app_test

蒲公英插件參照

https://www.pgyer.com/doc/view/jenkins_plugin

api結合

https://www.pgyer.com/doc/view/api

```

### 2. 配置gitlab

```shell

# git 配置ssh key認證

#這個是覆蓋更新方式

? 860? git config --global --replace-all user.name "lixuejun"

? 861? git config --global --replace-all user.email "lixuejun@xuetangx.com"

? 868? ssh-keygen -t rsa -C "lixuejun@xuetangx.com"

? 870? cat .ssh/id_rsa.pub # 公鑰 粘貼到gitlab 上?

? 871? cat .ssh/id_rsa # 私鑰 在jenkins上創(chuàng)建認證

```

添加webhook



## 三溉知、中途報錯

```shell

FAILURE: Build failed with an exception.

* What went wrong:

A problem occurred configuring project ':a_mooc_app'.

> SDK location not found. Define location with an ANDROID_SDK_ROOT environment variable or by setting the sdk.dir path in your project's local properties file at '/root/.jenkins/workspace/app_test/local.properties'.

* Try:

Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

這個構建寫死的目錄:

在配置文件中增加一個環(huán)境變量即可陨瘩,指定sdk的目錄

export ANDROID_SDK_ROOT=/usr/android-sdk-linux

```

```shell

```

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市级乍,隨后出現(xiàn)的幾起案子舌劳,更是在濱河造成了極大的恐慌,老刑警劉巖玫荣,帶你破解...
    沈念sama閱讀 206,378評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件甚淡,死亡現(xiàn)場離奇詭異,居然都是意外死亡捅厂,警方通過查閱死者的電腦和手機贯卦,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,356評論 2 382
  • 文/潘曉璐 我一進店門资柔,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人撵割,你說我怎么就攤上這事贿堰。” “怎么了啡彬?”我有些...
    開封第一講書人閱讀 152,702評論 0 342
  • 文/不壞的土叔 我叫張陵羹与,是天一觀的道長。 經(jīng)常有香客問我庶灿,道長纵搁,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,259評論 1 279
  • 正文 為了忘掉前任跳仿,我火速辦了婚禮诡渴,結果婚禮上捐晶,老公的妹妹穿的比我還像新娘菲语。我一直安慰自己,他們只是感情好惑灵,可當我...
    茶點故事閱讀 64,263評論 5 371
  • 文/花漫 我一把揭開白布山上。 她就那樣靜靜地躺著,像睡著了一般英支。 火紅的嫁衣襯著肌膚如雪佩憾。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,036評論 1 285
  • 那天干花,我揣著相機與錄音妄帘,去河邊找鬼。 笑死池凄,一個胖子當著我的面吹牛抡驼,可吹牛的內容都是我干的。 我是一名探鬼主播肿仑,決...
    沈念sama閱讀 38,349評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼致盟,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了尤慰?” 一聲冷哼從身側響起馏锡,我...
    開封第一講書人閱讀 36,979評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎伟端,沒想到半個月后杯道,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,469評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡责蝠,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 35,938評論 2 323
  • 正文 我和宋清朗相戀三年蕉饼,在試婚紗的時候發(fā)現(xiàn)自己被綠了虐杯。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,059評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡昧港,死狀恐怖擎椰,靈堂內的尸體忽然破棺而出,到底是詐尸還是另有隱情创肥,我是刑警寧澤达舒,帶...
    沈念sama閱讀 33,703評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站叹侄,受9級特大地震影響巩搏,放射性物質發(fā)生泄漏。R本人自食惡果不足惜趾代,卻給世界環(huán)境...
    茶點故事閱讀 39,257評論 3 307
  • 文/蒙蒙 一贯底、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧撒强,春花似錦禽捆、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,262評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至芽隆,卻和暖如春浊服,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背胚吁。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評論 1 262
  • 我被黑心中介騙來泰國打工牙躺, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人腕扶。 一個月前我還...
    沈念sama閱讀 45,501評論 2 354
  • 正文 我出身青樓孽拷,卻偏偏與公主長得像,于是被迫代替她去往敵國和親蕉毯。 傳聞我的和親對象是個殘疾皇子乓搬,可洞房花燭夜當晚...
    茶點故事閱讀 42,792評論 2 345

推薦閱讀更多精彩內容