" Note, that we can't create repos in parallel (recording to repo cache may fail).
However, for now, we do not expect such cases (i.e. repos are created rarely)
Input: {
(repo_uoa) - repo UOA (where to create entry)
data_uoa - data UOA
(data_uid) - data UID (if uoa is an alias)
(data_name) - user friendly data name
(cids[0]) - as uoa or full CID
(path) - if !='' - create in this path or import from this path
(here) - if =='yes', create in current path
(use_default_path) - if 'yes' create repository in the default path (CK_REPOS)
instead of the current path (default is 'yes')
(use_current_path) - if 'yes' create repository in the current path
(default is 'no')
(default) - if 'yes', no path is used,
but the repository is taken either
from the CK directory or from CK_LOCAL_REPO
(import) - if 'yes', register repo in the current directory in CK
(when received from someone else)
(remote) - if 'yes', remote repository
(remote_repo_uoa) - if !='' and type=='remote' repository UOA on the remote CK server
(shared) - if not remote and =='git', repo is shared/synced through GIT
(share) - (for user-friendly CMD) if 'yes', set shared=git
(allow_writing) - if 'yes', allow writing
(useful when kernel is set to allow writing only to such repositories)
(url) - if type=='remote' or 'git', URL of remote repository or git repository
(hostname) - if !='', automatically form url above (add http:// + /ck?)
(port) - if !='', automatically add to url above
(hostext) - if !='', add to the end of above URL instead of '/ck?' -
useful when CK server is accessed via Apache2, IIS, Nginx or other web servers
(githubuser) - if shared repo, use this GitHub user space instead of default "ctuning"
(sync) - if 'yes' and type=='git', sync repo after each write operation
(gitzip) - if 'yes', download as zip from GitHub
(zip) - path to zipfile (local or remote http/ftp)
(overwrite) - if 'yes', overwrite files when unarchiving
(repo_deps) - dict with dependencies on other shared repositories with following keys:
"repo_uoa"
("repo_uid") - specific UID (version) of a repo
("repo_url") - URL of the shared repository (if not from github.com/ctuning)
(quiet) - if 'yes', do not ask questions unless really needed
(skip_reusing_remote_info) - if 'yes', do not reuse remote .cmr.json description of a repository
(current_repos) - if resolving dependencies on other repos, list of repos being updated (to avoid infinite recursion)
(describe) - describe repository for Artifact Evaluation (see http://cTuning.org/ae)
(stable) - take stable version (highly experimental)
(version) - checkout version (default - stable)
(branch) - git branch
(checkout) - git checkout
(private) - if 'yes', mark as private (do not automatically list entries, etc)
(split_all_dirs) - if !='0' force split of all dirs in this repo (be careful)
must be empty before doing this!
(recache) - if 'yes' force recache
}
Output: {
return - return code = 0, if successful
16, repository with a given path is already registered in CK
> 0, if error
(error) - error text if return > 0
}
"