repo-manager
repo-manager is a tool that helps users manage their Compliance Engine repository, communicate with Cloudaware API, build documentation, etc.
Read full cli reference or execute repo-manager --help.
Requirements
The only requirement to run repo-manager is to have Java 8+ installed. We recommend installing the latest LTE version of Java.
If java/java.exe executable is not in your PATH, use the full path to the executable in all commands listed in this document.
Installation
The latest version of repo-manager is always available via this link https://ce.prod.cloudaware.com/repo-manager/repo-manager.jar
repo-manager is distributed via a single jar file. With a little bit of configuration you can make repo-manager callable with a simpler alias from CLI. Depending on the operating system you run:
Windows
-
Create and navigate to directory
C:\Users\{username}\.ca -
Download and store
repo-manager.jarin the crated directory -
Create
repo-manager.batwith the following content:@echo off
java -jar "%HOMEDRIVE%%HOMEPATH%\.ca\repo-manager.jar" %* -
Add
C:\Users\{username}\.cato PATH with a following PowerShell command:[Environment]::SetEnvironmentVariable("PATH", $env:Path + ";" + $env:HOMEDRIVE + $env:HOMEPATH + "\.ca", "User") -
Restart your shell
Now you can run repo-manager command in any directory on your machine.
Linux
TODO
macOS
TODO
Configuration files
There are several important files that repo-manager uses to operate:
repo-manager.jar- main executable, usually located in~/.ca/repo-manager.jarrepo-manager.json- configuration file, that will be automatically created in the same folder whererepo-manager.jaris located.cadirectory is a directory whererepo-managerwill look for configuration files, specificallyprofiles.jsonfor API authentication.repo-managerwill look for this file in the following locations, in order of decreasing priority:- If
--config=/exmple/path/my-caoption used,repo-managerwill look forprofiles.jsonin/exmple/path/my-ca/profiles.json - If
--repository=/example/path/to/repooption used, then/example/path/to/repo/.ca/profiles.json - If
.cadirectory present in you current working directory, then.ca/profiles.json - Otherwise
~/.ca/profiles.jsonwill be used
- If
Auto-update
While using repo-manager it will periodically try to update itself. It is important to keep functionality of repo-manager consistent with the latest Cloudaware APIs and the latest logic implemented in repo-manager itself.
You can alter auto-update behavior by using the following options when running commands:
--auto-updatewill trigger auto-update check immediately; you can use it in conjunction with other subcommands, e.g.repo-manager --auto-update gocs generate--no-auto-updatewill suppress the auto-update check for this execution. If you're using multiplerepo-managercommands in succession and would like auto-update to be suppressed for all of them, you need to add--no-auto-updateto all of them- no options will trigger auto-update check if more than 24 hours have passed since the last check