Storage
Storage configuration contains info about remote storage which will be used for files transfer operations. For example, for tests artifacts transfer between Emcee workers and CLI client.
Storage feature is required for Android platform only
Artifactory#
Artifactory setup (including deploy via containers) was tested on Artifactory version 7.63.11. If you want to use different version of the Artifactory be aware that other versions might require additional configurations in Docker/Kubernetes files. See Artifactory documentation and Artifactory release notes.
storage:
type: artifactory
baseUrl: http://localhost:8081/artifactory/
repository: some-repository
user: user_name
password: user_password
connectionTimeout: 30
readTimeout: 600
writeTimeout: 600
Parameter | Description | Default value |
---|---|---|
baseUrl |
Address of deployed Artifactory | |
user |
User for Artifactory. Omit if there is no authorization in Artifactory | "" |
password |
Password for Artifactory. Omit if there is no authorization in Artifactory | "" |
repository |
Repository to put files in Artifactory | |
connectionTimeout |
Client timeout to get first byte from Artifactory response | 30 |
readTimeout |
Timeout for downloading files from Artifactory | 600 |
writeTimeout |
Timeout for uploading files to Artifactory | 600 |
Setup Artifactory#
Artifactory instance should be accessible from both client and worker which in turn runs inside docker container
You need:
-
create a new repository with
Generic
type and a name of your choice. Use this repository name asrepository
for Artifactory storage in emceeplan. Theemcee-transport
folder will then be created in it for Emcee to operate -
create new or use an existing Artifactory user, or enable anonymous access in the settings. The user, including anonymous, must have read, write and delete rights
New repository might be created using panel Administration - Repositories - Add repository - Local repository
Anonymous access might be enabled using panel Administration - User management - Settings.
If you enable authorization in Artifactory, then set up a username and password for both the Emcee client and the workers
- The Emcee client uses Artifactory for uploading apk files and downloading test artifacts
- The Emcee worker uses Artifactory for downloading apk files and uploading test artifacts
Configured Artifactory image#
For demonstration purposes we provide a Docker image with a preconfigured Artifactory.
You can use this image instead of the standard OSS Artifactory image. You can deploy and start to use this Artifactory without additional configuration. Just use the username, password and repository in the Emcee configurations for the worker and client.
However, we do not recommend use this image in production because you should understand how to configure Artifactory and configure it according to your needs.
Here is preconfigured Artifactory image:
Credentials:
- username: emcee_user
- password: Emcee_password1
- repository: emcee-transport
Also, in this image default admin user is available.
Important, do not use any Docker volume for this image because it will override previous configuration.
Example of the image run:
Example of the storage configuration in the Emcee cli config: