Installation script for the impact analysis. See system requirements at the end of this document.
Arcan Impact Analysis installation script for Linux or MacOS. You need wget
, sed
and base64
installed on your system.
wget -q https://raw.githubusercontent.com/Arcan-Tech/impact-installation-script/refs/heads/master/install.sh && chmod +x ./install.sh && ./install.sh
To start the installation run the ./install.sh
script, the script will guide you through.
The first prompt will ask your registry token to pull the images, without this step you won't be able to pull the images. If you don't have any token please contact us. This will generate a configuration file that will be used by run-impact.sh without altering the machine's docker credentials.
The next prompt will ask you to configure the impact analysis
At the current state the express option it is the fastest option to install and serve the tool locally with the latest stable version. It will serve the application over HTTP, enables the auto updater and use the directory "./repos" for local analyses
The custom option will prompt with the following settings:
- Version: At the current state is only possible to use latest or snapshot. Latest is the most recent stable version of the tool, the snapshot is the most recent unstable.
- Protocol: If you wish to serve the application only over HTTPS you can set HTTPS, otherwise use HTTP. Choosing HTTPS will make the application accepts credentials with HTTPS
Warning: In order to use HTTPS the host's machine must be configured to do so
- Auto updater: Enable this to automatically update images every 2 hours, if valid credentials are available.
Warning: Using the auto-updater with the snapshot version may compromise your deployed application and data
- Repository directory: Specify the path to local repositories on your machine. Ensure the path is correct; otherwise, local analysis will fail.
- Ip: Define the IP address to serve the tool's web interface and API.
Before completing the configuration you will be showed a summary and you will be asked to confirm, if you choose to not confirm the configuration step will start over
Once the installation is completed you should see a message saying so and the address where you can access the tool. It should be < protocol you set >://< IP you set >:3000, e.g. http://192.168.1.8:3000 or in the cose of express installation http://localhost:3000.
You can launch the tool with ./run-impact.sh
, once all the containers have launched you can access the tool
Follow these steps:
- Download this repository (green button "Code" and then "Download ZIP"). Extract all contents and open the directory.
- Make a copy of
.base.env
and call it.env
- Create a directory called
repos
- Create the file
docker-conf/config.json
and copy the following content in it:
{
"auths": {
"ghcr.io": {
"auth": "TOKEN"
}
}
}
- Replace
TOKEN
with the token provided to you by our team. - Create the file
runtime-config.js
and paste the following contents:
window.runConfig = {
apiBaseUrl: 'http://localhost:8080/api',
socketUrl: 'http://localhost:9092/'
}
- Run the following
docker --config .\docker-conf compose up
- You can now visit http://localhost:3000, which will open the dashboard.
- To uninstall, run the following
docker compose down -v
- When you first launch the tool, no users will exist. You must create a user account.
- User accounts are only used to associate projects and repositories.
Note: Password recovery is not implemented, so keep your credentials secure. The user is limited to the running instance
To perform a local analysis:
- Add a repository:
- Select the Local option.
- Enter the repository name in the input below.
- Ensure the repository is cloned into the
./repos
folder (default for Express mode) or the directory specified during configuration.Example:
If your repository is namedmy-repo
, clone it into the./repos
directory:
git clone https://github.com/user/my-repo ./repos/my-repo
. - Ensure the branches to analyzed have been fetched, add those you wish to analyze
- When telling the dashboard where to find the repository, use
/repos/<my-repo>
(NOTE: the absence of the dot at the beginning).
ONLY public repositories are supported at the moment!
- Add a repository:
- Select the Remote option.
- Enter the repository URL (e.g.,
https://github.com/user/repository
) on the input below.
- All availables branches will be fetched, add those you wish to analyze
Private repositories must be analyzed locally due to access restrictions.
After creating at least one repository in a project you will be able to perform an analysis by clicking the button "Request new analysis", most of the field will be already filled. If you added more than 1 branch in any of the repositories you will have to select it
- Bash & wget (installation)
- Running Docker Engine >20.10
- At least 4 CPU cores (preferably 6+)
- At least 16GB of RAM
- At least 30 GB of disk space for images and space for analyses
- if you chose HTTPS, valid certificates are necessary.