Bitbucketパイプラインからビットライズビルドをトリガーする方法は?
2982 ワード
こんにちはフェローコーダー!
最近のプロジェクトでは、Bitbucketのパイプラインからビットライズを引き起こす必要性を感じました.私は、あなたの心に来る最初の質問がそれの後の理由であることを望みます.
それで、見ましょう.
動機
あなたがプロジェクトに「ABC」を持っていると仮定しましょう.(例えばモバイル、ウェブ、サーバー)、そして、あなたはこれらの3つのプロジェクトのために同じBitbucket Repoを使いたいです.しかし、Webまたはサーバーのフォルダにいくつかの変更をプッシュするたびに、それは必要とされていないbitriseモバイルのビルドをトリガします.
基本的に、BitriseがBitbucket Repoでどんな変化を感じても、それは自動的に起動します.
ビットライズを有効にするには、現在Bitbucket Repoに対して選択的なビルド機能を使用できません.
モバイルターゲットの変更を見つけたら、モバイルビルドを実行することになります
解決方法
私たちは自動的なBitriseの引き金の代わりにbitriseのAPIを使用するつもりです、そして、我々はbitbucketパイプラインを通してbitrise API終点を打ちます.
始めましょう.
Postmanを使用したトリガのビットストリーム(省略可)
私たちは、Bitrise APIをテストするために、ここでPostmanを使用していますは、bitrise(https://api.bitrise.io/v0.1/apps/$Slug_number/builds)のURLからスラグ数を集めることができます. コールのヘッダーに認証トークンhttps://devcenter.bitrise.io/api/authentication/を追加します. リクエストの本文に次のオブジェクトを追加します.
オープンバケット.エディタのプロジェクトのYMLファイル. テスト目的のためのは、最初にノードイメージを使用してBitbucketパイプラインでモバイルビルドのためのステップを作成します.
ステップ2の後にパイプラインが正常に動作した場合、さらに進む.そうでなければ、YMLファイルに何か悪いことがあります. ステップで変更セット条件を適用します(このフォルダの変更を行う場合のみ実行します).
私たちは名前“MobileBuilds”とプロジェクト内のフォルダを作成します. フォルダ内の私たちは2ファイルを追加します.
ここでこれらの手順を実行します.最新のGitコミットを取得します. アンドロイドの中でヒットbitrise API.js
アンドロイドを起動します.BitbucketパイプラインからのJSファイル.また、AxiosとGitの最後のコミットのような必要な依存関係が含まれます.
$ bitriseoundトークンはBitbucketの変数から値をAndroidに渡すことです.jsファイル.) 今ちょうどパイプラインを実行します.
最近のプロジェクトでは、Bitbucketのパイプラインからビットライズを引き起こす必要性を感じました.私は、あなたの心に来る最初の質問がそれの後の理由であることを望みます.
それで、見ましょう.
動機
あなたがプロジェクトに「ABC」を持っていると仮定しましょう.(例えばモバイル、ウェブ、サーバー)、そして、あなたはこれらの3つのプロジェクトのために同じBitbucket Repoを使いたいです.しかし、Webまたはサーバーのフォルダにいくつかの変更をプッシュするたびに、それは必要とされていないbitriseモバイルのビルドをトリガします.
基本的に、BitriseがBitbucket Repoでどんな変化を感じても、それは自動的に起動します.
ビットライズを有効にするには、現在Bitbucket Repoに対して選択的なビルド機能を使用できません.
モバイルターゲットの変更を見つけたら、モバイルビルドを実行することになります
解決方法
私たちは自動的なBitriseの引き金の代わりにbitriseのAPIを使用するつもりです、そして、我々はbitbucketパイプラインを通してbitrise API終点を打ちます.
始めましょう.
Postmanを使用したトリガのビットストリーム(省略可)
私たちは、Bitrise APIをテストするために、ここでPostmanを使用しています
const data = {
hook_info: {
type: 'bitrise',
triggered_by: '',
},
build_params: {
branch: 'master',
commit_message: "",
commit_hash: "",
workflow_id: 'primary',
},
};
//Now post the api
- step:
name: Run Android Build
image: node:10.15.3
script:
- echo "Going to trigger Android Build"
- step:
name: Run Android Build
image: node:10.15.3
condition:
changesets:
includePaths:
- "mobile/**"
script:
- echo "Going to trigger Android Build"
ここでこれらの手順を実行します.
- step:
name: Run Android Build
image: node:10.15.3
condition:
changesets:
includePaths:
- "mobile/**"
script:
- echo "Going to trigger Android Build"
- npm install axios
- npm install git-last-commit
- cd mobile/MobileBuilds
- node Android.js $BITRISE_TOKEN
Reference
この問題について(Bitbucketパイプラインからビットライズビルドをトリガーする方法は?), 我々は、より多くの情報をここで見つけました https://dev.to/mehakfatima/how-to-trigger-bitrise-build-from-bitbucket-pipeline-336fテキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol