Jenkins+git+iOS+タンポポ自動化構築(macローカル版)
2643 ワード
Jenkinsは、ソフトウェアの構築、テスト、導入など、さまざまなタスクを自動化するオープンソース
Jenkinsのインストール
CI&CD
ソフトウェアです.Jenkinsは、システムパッケージ、Docker、または独立したJavaプログラムを介してさまざまな動作をサポートします.jenkins
は、プラグインの拡張をサポートし、異なる機能を実現します.Jenkinsは現在、千種類以上のプラグインを提供しており、本当にあなたのニーズを実現していると言えます.Jenkins公式ドキュメントJenkinsのインストール
brew services list
コマンドを使用して、現在のHomebrew
によって管理されているサービスを表示できます.brew install jenkins
コマンドを使用して、jenkins
をインストールします.Homebrew
は、java
を含むすべての依存をダウンロードしてインストールします.jenkins
コマンドが作成され、brew uninstall jenkins
を使用してjenkins
サービスを開始することができます.このようにして起動されたbrew services start jenkins
サービスはバックグラウンド運転をサポートし、端末を閉じることができる.jenkins
コマンドを使用して、jenkins
サービスを有効にすることもできます.しかし、この方法ではバックグラウンドの実行はサポートされず、コマンドラインツールを閉じ、サービスは自動的に閉じます.jenkins
jenkins
サービスを再開brew services restart jenkins
jenkins
brew services stop jenkins
サービスを停止します.jenkins
でサービスを停止することもできますし、http://localhost:8080/exit
でサービスを再起動することもできます.http://localhost:8080/restart
でサービス構成`jenkinsを再ロードしてjenkinsのインストールを完了した後、ブラウザ種でlocalhost:8080を開くと、構成jenkinsページに入ります.次のように#!/bin/bash
#
SECONDS=0
#
project_path=$(pwd)
#
now=$(date +"%Y_%m_%d_%H_%M_%S")
# scheme
scheme="TRZX"
# Release Debug Adhoc
configuration="Debug"
# , app-store, package, ad-hoc, enterprise, development, developer-id, xcodebuild method
export_method='development'
#
workspace_path="$project_path/TRZX.xcworkspace"
#
output_path="project_path/APP"
#
archive_path="$output_path/TRZX_${now}.xcarchive"
# ipa
ipa_path="$output_path/TRZX_${now}.ipa"
# ipa
ipa_name="TRZX_${now}.ipa"
# commit message
commit_msg="$1"
#
echo "===workspace path: ${workspace_path}==="
echo "===archive path: ${archive_path}==="
echo "===ipa path: ${ipa_path}==="
echo "===export method: ${export_method}==="
echo "===commit msg: $1==="
# build
gym --workspace ${workspace_path} --scheme ${scheme} --clean --configuration ${configuration} --archive_path ${archive_path} --export_method ${export_method} --output_directory ${output_path} --output_name ${ipa_name}
#fir_token
fir_token="3e4e8cb212eaeef08b891dd70bfd5cea"
# fir
fir publish ${ipa_path} -T "${fir_token}" -c "${commit_msg}"
#
echo "===Finished. Total time: ${SECONDS}s==="