Skip to main content

RoostGPT CLI Installation Guide - EC2 Linux

Overview

RoostGPT is an AI-powered testing tool. This guide will help you install RoostGPT on your EC2 (RHEL or Ubuntu) instance in just a few minutes.


Pilot Prerequisites

Before installing RoostGPT, ensure your system meets the following requirements:

Requirement Specification
Operating System RHEL 9.5 or Ubuntu 22.04
CPU (or vCPUs) 8 or more 
RAM 16 GB or more
Instance Type c5a.2xlarge or better
Root Disk Space Minimum 100 GB available
Additional Volume Minimum 150 GB
Mount Point for additional volume /var/tmp/Roost (with full permissions granted to SSH user)
Network Internet connection enabled
Permissions sudo/root access required (SSH user should have sudo permissions)
   

AWS Key & Secret

Set in environment or in .profile for accessing AWS Services

AWS IAM User Role

Policy: AmazonBedrockFullAccess 

or

Custom Bedrock Policy as defined below

AWS Bedrock Model (one or more of these listed models)

global.anthropic.claude-sonnet-4-5-20250929-v1:0

global.anthropic.claude-sonnet-4-20250514-v1:0

 

eu.anthropic.claude-sonnet-4-5-20250929-v1:0

eu.anthropic.claude-sonnet-4-20250514-v1:0

eu.anthropic.claude-3-7-sonnet-20250219-v1:0



RoostGPT License & Installer

Provided by Roost Team



POC 1 - Input Sample  

1. Word document or PDF with User Story or System Analysis Document 

2. Optional: API Specification that is representative of current features

POC 2 - Input Sample

1. Swagger API Spec

AWS Bedrock Model Access to one or more of the anthropic (cross-region) models is fine.

Custom Bedrock Policy for AWS IAM User
{
    Version = "2012-10-17"
    Statement = [
        {
            Effect = "Allow"
            Action = [
              "bedrock:InvokeModel",
              "bedrock:InvokeModelWithResponseStream",
              "bedrock:ListFoundationModels",
              "bedrock:GetFoundationModel"
            ]
            Resource = "*"
        },
        {
            "Effect": "Allow",
            "Action": [
                "bedrock:GetInferenceProfile",
                "bedrock:ListInferenceProfiles",
            ],
            "Resource": [
                "arn:aws:bedrock:*:*:inference-profile/*",
                "arn:aws:bedrock:*:*:application-inference-profile/*"
            ]
        }
    ]
}
  • Configure AWS profile into launched server, either by

    • setting AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY, in $HOME/.profile

    • Or stage $HOME/.aws/credentials

  • Transfer Roost license file (.ral) into EC2 instance.

  • Transfer roostgpt-installer executable into the EC2 instance
  • Ensure Python3 & AWS CLI is installed on the instance to support troubleshooting.


Details of Roost Installer 

Bundled artifact in the Roost installer

RoostGPT can be executed locally for Unit Tests. However, it is recommended that the necessary language version and build tools, dependency have to be installed on EC2 (Linux).

Name Purpose / Description Location
roostgpt-linux CLI executable for roostGPT v1.1.18/roostgpt-linux
RoostJavaASTParser.jar Java language AST Parser v1.1.18/RoostJavaASTParser.jar
RoostPythonASTParser-linux Python language AST Parser v1.1.18/RoostGolangASTParser-linux
RoostGolangASTParser-linux Golang language AST Parser v1.1.18/RoostGolangASTParser-linux
RoostCSharpASTParser-linux CSharp language AST Parser v1.1.18/RoostCSharpASTParser-linux
RoostUITestGenerator-linux UI Playwright Test Generator v1.1.18/RoostUITestGenerator-linux
roostenc-linux Decryt/Encrypt binary for troubleshooting RoostGPT behaviour Not available publicly but bundled in the roostgpt-installer
license/license.ral Roost License File Not available publicly but provided directly to the customer
workspace/postman-api-test Sample swagger API spec file and env to generate postman collection with tests API Spec: https://openweathermap.org/api
workspace/java-maven-test Sample Java Maven project with env roost-io/API-MusicBlender-Java
workspace/java-gradle-test Sample Java Gradle project with env roost-io/gradle-app
workspace/csharp-nunit-test Sample CSharp DotNet project with env roost-io/C-Sharp

List of Language, Build Tools and Dependencies:

Language Dependency requirement
Java - Maven JDK, JRE, Maven
Java - Gradle JDK, JRE, Gradle
Csharp dotnet
Golang go
Python python, pytest, unittest
Postman No Dependency
Rest Assured JDK, JRE, Maven
Karate JDK, JRE, Maven

Installation Steps

Mount EBS Volume (optional, if not done already)
  1. Verify that /var/tmp/Roost does not exist already
  2. Check the read/write/execute permissions on the mount point
  3.  Extract the volume ID
  4. Mount the disk, volume as Roost folder
  5. Add fstab entry for handling m/c reboot
df -h /var/tmp/Roost

 

Copy the installer and license file
  1. Download Installer from Shared Google Drive <LOCATION SENT OVER EMAIL>
    • You have to download the RoostGPT installer and Roost License file from a shared Google Drive.
  2. Transfer Installer and License file using scp
  3. Make Installer executable
# From your local machine, copy installer and license to Ubuntu instance
scp roostgpt-installer.sh license.ral ubuntu@<your-instance-ip>:~/

# Then SSH into your instance
ssh ubuntu@<your-instance-ip>

# Move license.ral to $HOME/.roost
mkdir $HOME/.roost
mv $HOME/license.ral $HOME/.roost

# Add execute permissions to installer
chmod +x roostgpt-installer.sh

# Execute Roost Installer
sudo ./roostgpt-installer.sh
Installation interface:
╔════════════════════════════════════════════════════════════╗
║                                                            ║
║              RoostGPT Installer                            ║
║                                                            ║
╚════════════════════════════════════════════════════════════╝

[→] Checking system requirements...
[✓] System requirements met

Continue with installation? [Y/n]

Press Y and Enter to continue.

The installer will:

  • Extract files
  • Install RoostGPT binary
  • Unpack the code parsers
  • Copy workspace with pre-canned examples
  • Configure all necessary permissions

Installation typically completes in under 1 minute.


Verify Installation

After successful installation, you'll see:

╔════════════════════════════════════════════════════════════╗
║                                                            ║
║     ✓ RoostGPT Installation Completed Successfully!       ║
║                                                            ║
╚════════════════════════════════════════════════════════════╝

Now you can run: roostgpt
Installed Samples
# Show the installed sample workspaces

find ~/workspace -ls
Structure - Roost Sample Workspace 

The workspace contains example projects to help you get started:

~/workspace/
├── Folder1/
│   └── .env          # Configuration for project 1
└── Folder2/
    └── .env          # Configuration for project 2


Configuring AWS Credentials  

Adding AWS Credentials

# SSH into your instance
ssh ubuntu@<your-instance-ip>

# Edit $HOME/.profile
vim $HOME/.profile

# Add export AWS keys to your $HOME/.profile and save the file
export AWS_ACCESS_KEY_ID=xxx
export AWS_SECRET_ACCESS_KEY=xxx
export AWS_DEFAULT_REGION=eu-west-1
export AWS_BEDROCK_MODEL_TYPE=cross-region # Supports [foundation, cross-region]
export AWS_BEDROCK_MODEL=global.anthropic.claude-sonnet-4-20250514-v1:0

# Source the file .profile to make the AWS creds available in the same session
. $HOME/.profile

Using RoostGPT

Running RoostGPT

You can now access RoostGPT from anywhere on your system, using the command roostgpt

Quick Start Example

# 1. SSH into your Ubuntu instance
ssh ubuntu@<your-instance-ip>

# 2. Navigate to workspace
cd ~/workspace/functional-test

# 3. Run RoostGPT
./run.sh

# OR you can run using the full command
roostgpt test create -c functional-test.env

Viewing Roost Test Results

roostgpt test result

Here's a complete workflow from login to running RoostGPT:


Configure a new test

Each project folder in your workspace contains a <UNIQUE-TEST-NAME>.env file for configuration. You can copy this env and modify the contents for a new test run. Or create a new test env file.

Execute roostgpt with this new env.


# Create a new Roost Test Configuration File
vim new_test.env

###################################
# Modify the below attributes
TEST_NAME=ANY_UNIQUE_NAME    # Any unique_name to represent the test configuration
TEST_TYPE=functional         # Default is unit; Supports [unit, functional, api-spec-test, integration]
AI_TYPE=bedrock_ai           # Default is openai; Supports [openai, azure_open_ai, claude_ai, dbrx, bedrock_ai, gemini]

ROOST_USER_INPUT_TYPE=file                # Roost User input Type for test generation; Supports [text, file]
ROOST_USER_INPUT_FILE=USER_FILE_PATH      # The user input file-path will be used to generate tests

# GIT env vars
GIT_TYPE=local               # Default is github; Supports [github, gitlab, azure, bitbucket, local]
LOCAL_PROJECT_PATH=PATH_TO_WORKSPACE_FOLDER       # Required if GIT_TYPE is local, Path to your workspace.

# AWS Bedrock env vars
AWS_ACCESS_KEY_ID=                                # Required: If not defined here, it will be picked from environment 
AWS_SECRET_ACCESS_KEY=                            # Required: If not defined here, it will be picked from environment
AWS_SESSION_TOKEN=                                # Optional; AWS Session token.
AWS_DEFAULT_REGION=eu-west-1                      # Required if AI_TYPE=aws_bedrock.
AWS_BEDROCK_MODEL_TYPE=cross-region               # Required if AI_TYPE=aws_bedrock.
AWS_BEDROCK_MODEL=global.anthropic.claude-sonnet-4-20250514-v1:0       # Required if AI_TYPE=aws_bedrock.

# Api Spec env vars
API_SPEC_TYPE=swagger                             # Optional; Supports [swagger]
API_SPEC_SOURCE=file                              # Optional; Supports [file, gitpath, url]
API_SPEC_FILE_PATH="$HOME/FILE"                   # Optional; path of the source file.
API_SPEC_URL=                                     # Optional; URL of the source file, if source is url

###################################

# Run the new test configuration
roostgpt test -c new_test.env


Troubleshooting

Installation Issues

Problem: Permission denied when running installer

# Solution: Make sure you're using sudo
sudo ./roostgpt-installer.sh

Problem: Command not found: roostgpt

# Solution: Verify installation completed successfully
which roostgpt
# Should output: /usr/local/bin/roostgpt

# Check executable permissions on roostgpt and grant if missing
chmod +x $(which roostgpt)

# If not found, re-run the installer
sudo ./roostgpt-installer.sh

Problem: Insufficient disk space

# Solution: Check available space
df -h $HOME /var/tmp/Roost

# Free up space or use an instance with more storage

Runtime Issues

Problem: Can't find workspace

# Solution: Workspace is in your home directory
cd ~/workspace
ls -la

Problem: Configuration not loading

# Solution: Ensure .env files exist and are readable
find ~/workspace/ -name '*.env' -ls
find ~/workspace/ -name '*.env' -exec chmod 644 {} \;

Verify AWS Bedrock Access 

aws cli <>