---
title: "Jenkins Android Integration"
description: "Learn how to integrate DoveRunner Mobile App Security CLI tool with Jenkins for automated security in your CI/CD pipeline."
---
> For the complete documentation index, see [llms.txt](/llms.txt).

Jenkins, a versatile open-source automation server, can be effectively paired with the DoveRunner Mobile App Security CLI tool for enhanced security automation. Follow our step-by-step guide for straightforward installation and integration [using the configuration file](../basic-configuration/#run-sealingjar-using-the-configtxt-file). Additionally, explore advanced integration options through Jenkins Parameter settings for tailored security measures.

## Jenkins parameter settings

:::note[API Endpoint by Region]
| Region | URL |
|--------|-----|
| Global / Tokyo | `https://api.appsealing.com/covault/gw` |
| India (Mumbai) | `https://in-api.appsealing.com/covault/gw` |
| Indonesia (Jakarta) | `https://jakarta-api.appsealing.com/covault.gw` |
:::

| **Parameters** | **Definition** | **Type** | **Settings Value** |
| --- | --- | --- | --- |
| **AS\_JAR_PATH** \<Required> | **sealing.jar file path** | String | ex) /opt/appsealing/sealing.jar |
| **AS\_URL** \<Required> | **Sealing API URL** — select based on your region (see table above) | String | Regional URL |
| **AS\_AUTH\_KEY** \<Required> |**Authentication key**| String |( **Provided separately** ) |
| **AS_SRC_APK** \<Required> |**original APK/AAB file path** | String | ex)./source/application.apk |
| **AS\_SEALED_APK** \<Required> |**Path to save the Sealed APK/AAB file** | String | ex)./source/application\_sealed.apk |
| **AS\_APP\_TYPE** | Sealing security service<br />- _GAME : Game security service_ <br />- _NON\_GAME : Non-game security service_ | String | _Default : GAME_ |
| **AS\_SERVICE\_VERSION** | _Sealing service version number_ | String | _Ex) 2.31.0.0_<br />Default: latest |  
| **AS\_DEPLOY\_MODE** \<Required> |**Deploy mode** <br /># _- test : AppSealing watermark displayed_  <br /># - release : No AppSealing watermark_ | Choice |**\{test / release\}** <br />_Default : test_ |
| **AS\_DEX\_ENCRYPT**|**DEX encryption option**  <br />-no : DEX encryption not applied  <br />-yes : apply DEX encryption | Choice |**\{ no / yes \}**  <br /> Default : no |
| **AS\_SELECTIVE\_DEX\_ENCRYPT** | **Selective Dex Encryption Option**<br />**(This option is Recognized only when the DEX encryption is applied.)**<br />- no: encryption for whole dex files<br />- yes: encryption for some classes and packages | Choice | **\{no / yes\}** <br />Default : no |
| **AS\_BLOCK\_ENVIRONMENT**|**Emulator and root environment option** <br />- emulator : Blocks app running on emulator<br />- rooting : Blocks app running on rooted device<br />- Supported emulator : BlueStacks, Nox, LDPlayer | Extended choice |**\{ emulator, rooting\}** <br />Default : not selected |
| **AS\_ALLOW\_EMULATOR** | **Allow exceptional emulator when all emulator is blocked** <br />- LDPlayer : Allow LDPlayer  <br />- BlueStacks : Allow Bluestacks  <br />- Nox : Allow Nox app player<br />- Other emulators will be supported in future | Extended choice | **\{ BlueStacks, Nox, LDPlayer \}**  <br />Default : not selected |  
| **AS\_BLOCK\_WORK\_PROFILE**|**Work profile option(Block app execution from work profile environment such as Samsung Secure folder)**  <br />- yes : Block app execution  <br />- no : Allow app execution | Choice |**\{yes / no\}**<br />**Default : yes** |
| **AS\_ALLOW\_WORK\_PROFILES** | **Allow exceptional work profiles when all work profiles are blocked.**  <br />- Samsung SecureFolder| Extended Choice | **\{Samsung SecureFolder\}** <br />Default: not selected |  
| **AS\_BLOCK\_KEYLOGGER** | **Key logger block option**  <br />- yes :Block app running with key logging tool <br />- no : Allow app running with key logging tool| Choice |**\{yes / no\}**  <br />**Default : no** |
| **AS\_HIDE\_OVERLAY_WINDOWS** | **Hide screen overlay option. This option will work from Android 12 device.**  <br />- yes :Hide overlay windows on sealed app  <br />- no : Allow overlay windows on sealed app| Choice |**\{yes / no\}**  <br />**Default : no** |
| **AS\_ALLOW\_EXTERNAL\_TOOL**|**Macro and network tool option**  <br />- macro : Allow macro tools  <br />- sniff : Allow packet sniffing and spoofing tools | Extended Choice |**\{macro, sniff\}**  <br />Default: not selected |
| **AS\_SERVICE\_TYPE**|**AppSealing service type options**  <br />- HYBRID\_AOS : Hybrid AppSealing. React Native, Ionic, Cordova Framework should use this option.  <br />- NATIVE\_AOS :Native AppSealing.If your app is not the HYBRID\_AOS type, currently this option is not required. | Choice | **\{ HYBRID\_AOS / NATIVE\_AOS \}** <br />**Default : NATIVE\_AOS** |
| **AS\_FRAMEWORK** | **Your App's framework**  <br />- **Hybrid Frameworks should explicitly use this option**  <br />- REACT\_NATIVE: Use this when you are uploading React Native app.  <br />- IONIC: Use this when you are uploading Ionic app.  <br />- CORDOVA: Use this when you are uploading Cordova app.| Choice |**\{REACT\_NATIVE / IONIC / CORDOVA\}**   <br />Default : not selected |
| **AS\_APP\_SIGNING** | **Automatic app signing option after sealing** <br />App-signing can be applied along with sealing.<br />- **none** : Only sealing is applied without additional app signing.  <br />- **appsealing\_key** : After sealing, it is signed with the appsealing`s signing key for test purpose. In case of AAB package, this option applies as &#39;none&#39; value and the app is unsigned.  <br />- **registered\_key** : After sealing, it is signed with the app signing key registered on AppSealign console with your account. | Choice | **\{none / appsealing\_key / registered\_key\}** <br />**Default : none** |

_**\* Provided separately and only the provided value must be used**_

_**\*\* Must select only one value**_

_**\*\*\* Multiple values can be selected by using delimiter with &#39;,&#39; (comma). Default value is None(Empty String)**_

_\[Required] Parameter must be configured and Default value is not configured_


## Execution Script Configuration

### Linux &amp; Mac
```
java -jar ${AS_JAR_PATH} -url ${AS_URL} -authkey ${AS_AUTH_KEY} -srcapk ${AS_SRC_APK} -sealedapk ${AS_SEALED_APK} 
-deploymode ${AS_DEPLOY_MODE} -block_environment ${AS_BLOCK_ENVIRONMENT} -allow_emulator ${AS_ALLOW_EMULATOR} -allow_external_tool ${AS_ALLOW_EXTERNAL_TOOL} -dex_encrypt ${AS_DEX_ENCRYPT} 
-select_dex_encrypt #{AS_SELECTIVE_DEX_ENCRYPT} -service_version ${AS_SERVICE_VERSION} -app_type ${AS_APP_TYPE} -allow_external_tool ${AS_ALLOW_EXTERNAL_TOOL} -block_work_profile=${AS_BLOCK_WORK_PROFILE} -allow_work_profiles=${AS_ALLOW_WORK_PROFILES} -block_keylogger=${AS_BLOCK_KEYLOGGER} -service_type ${AS_SERVICE_TYPE} -framework ${AS_FRAMEWORK} –app_signing ${AS_APP_SIGNING}
```

### Windows
```
java -jar %AS_JAR_PATH% -url %AS_URL% -authkey %AS_AUTH_KEY% -srcapk %AS_SRC_APK% -sealedapk %AS_SEALED_APK% -deploymode %AS_DEPLOY_MODE% -block_environment %AS_BLOCK_ENVIRONMENT% -allow_emulator %AS_ALLOW_EMULATOR% -allow_external_tool %AS_ALLOW_EXTERNAL_TOOL% -dex_encrypt %AS_DEX_ENCRYPT% -select_dex_encrypt %AS_SELECTIVE_DEX_ENCRYPT% -service_version %AS_SERVICE_VERSION% -app_type %AS_APP_TYPE% -allow_external_tool %AS_ALLOW_EXTERNAL_TOOL% -block_work_profile %AS_BLOCK_WORK_PROFILE% -allow_work_profiles %AS_ALLOW_WORK_PROFILES% -block_keylogger %AS_BLOCK_KEYLOGGER% -service_type %AS_SERVICE_TYPE% -framework %AS_FRAMEWORK% -app_signing %AS_APP_SIGNING%
```