ジェンキンスは、Mac用のIOSとAndroid APPを使用してパッケージ化

        プロジェクトでは、非効率的で不安定な手動バージョン管理パッケージの開発に依存。テスターは、スタンドアロン環境が正しい道で展開する能力を持っている必要があります。

まず、Macのシステムの原因を選びます

      あなたがAPP IOS、IOSコンパイル環境のXcodeをパッケージ化したいので、これはMacシステムにインストールする必要があります。あなたは、IOSをコンパイルし、パッケージ化したいのであれば、あなたは、Macのシステムを使用する必要があります。

 

二、ジェンキンス分散ビルド

  自動ビルドジェンキンスを使用した場合1、、我々はサーバー、フロントエンドのクライアントAPP(AndroidとiOS)などコンパイルビルドを含んでいてもよいです。サーバーサイドの言語は、各プログラミング言語のための環境や方法を構築、などJavaや.NET、.NETコア、C ++、に分けているのと同じではありません。

    サーバー上のビルド環境ならば、非常に厄介になります。プログラムは、それ自体がボトルネックとなり、リソース使用のサーバーを構築、より多くを構築するためにコンパイルする必要があります。だから、成熟の後の開発は、分散ビルドを使用することをお勧めします。ジェンキンスから達成するために、マスターマスター/スレーブアーキテクチャをサポートしています。

  図2に示すように、マスタ - スレーブ・アーキテクチャ

    1、ジョブスケジューリングプロセスを構築し、メインサーバーノードをジェンキンス。

    2、ホストのビルド配布タスクは、特定のスレーブを実行します

    図3に示すように、ビルドマシンからレコード結果、ノードを監視

   レンダリングし、最終的にマスターから:(APPは、現在のパッケージに焦点を当て、マスタスレーブアーキテクチャを引き継ぎ、興味のある学生は、自分のBaiduの上で練習することができます)

三、APPパッケージ準備環境

  1、ジェンキンス環境(文書化のインストールとコマンドラインインストールはコマンドラインインストールを使用することをお勧めします)

    インストールジェンキンスは、JDKをインストールする必要があります前に、バージョン1.8以上

    B、ファイルがインストールされています。ダウンロードする公式サイト  https://jenkins.io/zh/download/を   (選択の自由、我々はIOS IPAパッケージを構築する必要があり、この時、選択のMac OSに基づいて、サーバー環境を構築します)

      

        インストールするコマンド:

            1、先需要安装软件包home brew,直接在终端对话框中敲    /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

            2、查看brew是否安装成功:    brew -v

              能显示版本号即安装成功 

            3、直接命令行安装jenkins  : brew install jenkins    (因为我已安装,所以显示此提示)

         c、在浏览器中输入http://localhost:8080,首次安装应该会出现如下界面,这里需要你去找到Jenkins的初始密码。  密码在如下的 红色提示路径下

      

           d、后续都采用默认安装,即可完成安装 

 

  2、xcode下载安装  (xcode可以直接在appstore中下载及安装,此文件有点大  有接近10g)

    

  

  3、安卓打包工具 android-sdk安装:

    a、Android-sdk 资源站点 http://www.androiddevtools.cn  ,一直下一步安装

     

    b、android-sdk安装完成后,找到android-sdk/tools 安装路径,双击 android程序,唤出SDK Manager

     

    c、更新sdk组件  (由于谷歌被墙了,所以某些sdk无法更新,需要设置国内镜像站点)    

      Mac顶部菜单点击Android SDK Manager -> Preferences

      HTTP Proxy Server填写:mirrors.neusoft.edu.cn

      HTTP Proxy Port填写:80

      勾选Force https:// ,然后点击“Close”

    

      Mac顶部菜单点击Tools -> Manage Add-on Site,选择右侧“User Defined Sites”:    

        把下面这堆网址:

            http://mirrors.neusoft.edu.cn/android/repository/addon-6.xml 
            http://mirrors.neusoft.edu.cn/android/repository/addon.xml    
            http://mirrors.neusoft.edu.cn/android/repository/extras/intel/addon.xml    
            http://mirrors.neusoft.edu.cn/android/repository/sys-img/android-tv/sys-img.xml    
            http://mirrors.neusoft.edu.cn/android/repository/sys-img/android-wear/sys-img.xml    
            http://mirrors.neusoft.edu.cn/android/repository/sys-img/android/sys-img.xml    
            http://mirrors.neusoft.edu.cn/android/repository/sys-img/google_apis/sys-img.xml    
            http://mirrors.neusoft.edu.cn/android/repository/sys-img/x86/addon-x86.xml    
            http://mirrors.neusoft.edu.cn/android/repository/addons_list-2.xml    
            http://mirrors.neusoft.edu.cn/android/repository/repository-10.xml

         全手动New加进去,然后就可以下载了,点击

         

 

四、jenkins中环境变量配置

  1、Android环境变量配置 ,在 系统管理-系统设置中添加 Android_Home

      

 

    

  2、gradle配置

    在 系统管理-全局工具配置中 添加一个gradle版本。  我们编译使用的V4.6 

 

 

 

五、Android打包工程配置

  1、创建一个自由风格的工程

    

  2、旧的构建数据丢弃 

       

  3、源码拉取,可以选择svn或者git,看项目使用的配置管理工具

          

  4、设置构建触发策略,我这里选择的定时触发(6点和12点自动构建打包)

        

  5、编译构建并将编译的包放到共享目录 

        1、测试环境或线上环境的编译任务assembleBetaDebug,可以咨询安卓开发

        2、添加一个Execute shell,将生成的apk包转移到共享目录下。  (大多人使用的windows的办公电脑,取包不方便,放到共享目录后 取包很方便了)

        

cp ./app/build/outputs/apk/beta/debug/app-beta-debug.apk /Users/mjb/Desktop/CI/android_new_trunk.apk
mv ./app/build/outputs/apk/beta/debug/app-beta-debug.apk /Users/mjb/Desktop/CI/android/trunk/xxx-${BUILD_ID}.apk

 

  

  

    放到共享目录后,取包方便很多 、    另外也可以考虑将包放到蒲公英平台或者生成固定二维码,直接下载。

 

 

六、IOS打包工程配置

  1、前面配置省略,跟安卓类似

    2、使用shell脚本编译  (jenkins对于xcode插件兼容性不好,所以建议调用shell执行xcodebuild脚本来编译)

     第一个的shell是编译xcodebuild,第二个shell是变换共享目录

    

 

    

#!/usr/bin/env bash
#xcodebuild clean -workspace /Users/mjb/.jenkins/workspace/mjd-app-ios/Sales.xcworkspace -sdk iphoneos -scheme "Sales" -configuration "Debug" archive #Release
xcodebuild -archivePath "/Users/mjb/.jenkins/workspace/mjd-app-ios/build/Sales.xcarchive" -workspace /Users/mjb/.jenkins/workspace/mjd-app-ios/Sales.xcworkspace -sdk iphoneos -scheme "Sales" -configuration "Debug" archive
xcodebuild -exportArchive -archivePath "/Users/mjb/.jenkins/workspace/mjd-app-ios/build/Sales.xcarchive" -exportPath "/Users/mjb/.jenkins/workspace/mjd-app-ios/build/Sales_debug" -exportOptionsPlist '/Users/mjb/.jenkins/workspace/mjd-app-ios/build/ExportOptions.plist' -allowProvisioningUpdates

 

注意,在编译前需要将这两个文件复制到对应目录 

 

最后实施完成的效果 :

安卓和IOS都能成功打包 apk和ipa了 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

              

 

 

 

 

 

 

    

おすすめ

転載: www.cnblogs.com/jsondai/p/11364793.html
おすすめ