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.jar
in the crated directory -
Create
repo-manager.bat
with the following content:@echo off
java -jar "%HOMEDRIVE%%HOMEPATH%\.ca\repo-manager.jar" %* -
Add
C:\Users\{username}\.ca
to 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.jar
repo-manager.json
- configuration file, that will be automatically created in the same folder whererepo-manager.jar
is located.ca
directory is a directory whererepo-manager
will look for configuration files, specificallyprofiles.json
for API authentication.repo-manager
will look for this file in the following locations, in order of decreasing priority:- If
--config=/exmple/path/my-ca
option used,repo-manager
will look forprofiles.json
in/exmple/path/my-ca/profiles.json
- If
--repository=/example/path/to/repo
option used, then/example/path/to/repo/.ca/profiles.json
- If
.ca
directory present in you current working directory, then.ca/profiles.json
- Otherwise
~/.ca/profiles.json
will 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-update
will trigger auto-update check immediately; you can use it in conjunction with other subcommands, e.g.repo-manager --auto-update gocs generate
--no-auto-update
will suppress the auto-update check for this execution. If you're using multiplerepo-manager
commands in succession and would like auto-update to be suppressed for all of them, you need to add--no-auto-update
to all of them- no options will trigger auto-update check if more than 24 hours have passed since the last check