Build Android App
Learn how to add and configure the "Build Android App" action in your Buddy pipeline
提示
POST参数
名称 | 类型 | 描述 |
---|---|---|
name 必填 | String | 操作名称 |
type 必填 | String | The type of the action. Should be set to BUILD . |
docker_image_name 必填 | String | The name of the Docker image. |
docker_image_tag 必填 | String | The tag of the Docker image. |
execute_commands 必填 | String[] | The commands that will be executed. |
cached_dirs | String[] | The dependencies & directories to be cached and available to every execution in this pipeline. |
volume_mappings | String[] | The path preceding the colon is the filesystem path (the folder from the filesystem to be mounted in the container). The path after the colon is the container path (the path in the container, where this filesystem will be located). |
working_directory | String | The directory in which the pipeline filesystem will be mounted. |
setup_commands | String[] | The command that will be executed only on the first run. |
services | Service[] | The containers with the services that will be attached to this environment. Available types: MYSQL , MONGO_DB , MARIADB , POSTGRE_SQL , REDIS , MEMCACHED , ELASTICSEARCH , CUSTOM . |
示例
请求
POST https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/2/actions
JSON
{
"name": "Build Android app",
"type": "BUILD",
"trigger_time": "ON_EVERY_EXECUTION",
"docker_image_name": "library/openjdk",
"docker_image_tag": "8",
"volume_mappings":
"/:/buddy/mount/directory",
"execute_commands": [
"export ANDROID_HOME=\"/opt/android/sdk/\"",
"export BUILD_TOOLS_VER=\"27.0.3\"",
"export PATH=$PATH:/opt/android/sdk/build-tools/$BUILD_TOOLS_VER",
"#build",
"chmod +x gradlew",
"#./gradlew assembleDebug",
"./gradlew assembleRelease"
],
"setup_commands": [
"mkdir -p /opt/android/sdk && mkdir .android",
"cd /opt/android/sdk && curl -o sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-3859397.zip && unzip sdk.zip && rm sdk.zip",
"yes | /opt/android/sdk/tools/bin/sdkmanager --licenses",
"/opt/android/sdk/tools/bin/sdkmanager --update",
"/opt/android/sdk/tools/bin/sdkmanager platform-tools",
"/opt/android/sdk/tools/bin/sdkmanager tools",
"/opt/android/sdk/tools/bin/sdkmanager emulator",
"/opt/android/sdk/tools/bin/sdkmanager \"extras;android;m2repository\"",
"/opt/android/sdk/tools/bin/sdkmanager \"extras;google;m2repository\"",
"/opt/android/sdk/tools/bin/sdkmanager \"extras;google;google_play_services\"",
"/opt/android/sdk/tools/bin/sdkmanager \"build-tools;27.0.3\"",
"/opt/android/sdk/tools/bin/sdkmanager \"platforms;android-27\""
],
"working_directory": "/buddy/my-repo-dir"
}
示例响应
HTTP
Status: 201 Created
X-Rate-Limit-Limit: 1
X-Rate-Limit-Remaining: 999
JSON
{
"url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/2/actions/2",
"html_url": "https://app.buddy.works/buddy/company-website/pipelines/action/2/edit",
"id": 2,
"name": "Build Android app",
"type": "BUILD",
"trigger_time": "ON_EVERY_EXECUTION",
"last_execution_status": "INITIAL",
"docker_image_name": "library/openjdk",
"docker_image_tag": "8",
"execute_commands": [
"export ANDROID_HOME=\"/opt/android/sdk/\"",
"export BUILD_TOOLS_VER=\"27.0.3\"",
"export PATH=$PATH:/opt/android/sdk/build-tools/$BUILD_TOOLS_VER",
"#build",
"chmod +x gradlew",
"#./gradlew assembleDebug",
"./gradlew assembleRelease"
],
"setup_commands": [
"mkdir -p /opt/android/sdk && mkdir .android",
"cd /opt/android/sdk && curl -o sdk.zip https://dl.google.com/android/repository/sdk-tools-linux-3859397.zip && unzip sdk.zip && rm sdk.zip",
"yes | /opt/android/sdk/tools/bin/sdkmanager --licenses",
"/opt/android/sdk/tools/bin/sdkmanager --update",
"/opt/android/sdk/tools/bin/sdkmanager platform-tools",
"/opt/android/sdk/tools/bin/sdkmanager tools",
"/opt/android/sdk/tools/bin/sdkmanager emulator",
"/opt/android/sdk/tools/bin/sdkmanager \"extras;android;m2repository\"",
"/opt/android/sdk/tools/bin/sdkmanager \"extras;google;m2repository\"",
"/opt/android/sdk/tools/bin/sdkmanager \"extras;google;google_play_services\"",
"/opt/android/sdk/tools/bin/sdkmanager \"build-tools;27.0.3\"",
"/opt/android/sdk/tools/bin/sdkmanager \"platforms;android-27\""
],
"working_directory": "/buddy/my-repo-dir",
"pipeline": {
"url": "https://api.buddy.works/workspaces/buddy/projects/company-website/pipelines/2",
"html_url": "https://app.buddy.works/buddy/company-website/pipelines/pipeline/2",
"id": 2,
"name": "Live mirror",
"on": "CLICK",
"refs": [
"refs/heads/master"
],
"last_execution_status": "SUCCESSFUL",
"last_execution_revision": "506a3963507943d6908154f4bc9646e829128a08"
}
}