SAP BTP Start-up avatar
SAP BTP Start-up

Pricing

Pay per usage

Go to Apify Store
SAP BTP Start-up

SAP BTP Start-up

SAP BTP Landscape Portal Starter

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Warren Eiserman

Warren Eiserman

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

1

Monthly active users

3 days ago

Last modified

Categories

Share

SAP BTP System Management Automation

An Apify Actor that automates starting and stopping SAP BTP systems through the Landscape Portal using Playwright and Python.

🎯 Features

  • Automated Login: Handles SAP BTP authentication automatically
  • System Management: Start or stop SAP BTP systems programmatically
  • Flexible Configuration: Manage different systems with simple configuration changes
  • Debug Mode: Run in non-headless mode locally to see browser interactions
  • Error Handling: Comprehensive error handling with screenshots for debugging
  • Video Recording: Optional video recording of browser sessions for troubleshooting

πŸ“‹ Prerequisites

  • Python 3.8 or higher
  • Node.js 14 or higher
  • Apify CLI
  • macOS, Linux, or Windows

πŸš€ Quick Start

1. Installation

# Clone the repository
git clone <your-repo-url>
cd sap-btp-automation
# Install Apify CLI globally
npm install -g apify-cli
# Create Python virtual environment
python3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install Python dependencies
pip install -r requirements.txt
# Install Playwright browsers
playwright install
playwright install-deps

2. Configuration

Create an input.json file in the project root:

{
"start_urls": [
{
"url": "https://shared-services.us10.landscape-portal.cloud.sap/ui#systemhibernation-manage"
}
],
"system_to_start": "H01",
"action": "Start",
"btp_username": "your-username@company.com",
"btp_password": "your-password",
"headless": false
}

3. Run the Actor

# Run with input.json
apify run -p input.json
# Run with defaults (configured in main.py)
apify run

πŸ“ Configuration Options

Input Schema

ParameterTypeRequiredDefaultDescription
start_urlsArrayYes-Array containing the Landscape Portal URL
system_to_startStringYes"H01"System ID to manage (e.g., H01, H02, H03)
actionStringNo"Start"Action to perform: "Start" or "Stop"
btp_usernameStringYes-Your SAP BTP username
btp_passwordStringYes-Your SAP BTP password
headlessBooleanNofalseRun browser in headless mode

Example Configurations

Starting a System

{
"system_to_start": "H01",
"action": "Start",
"btp_username": "user@company.com",
"btp_password": "password"
}

Stopping a System

{
"system_to_start": "H02",
"action": "Stop",
"btp_username": "user@company.com",
"btp_password": "password"
}

πŸ› οΈ Development

Local Development Setup

  1. Enable Debug Mode: Set headless: false in your input.json to see the browser
  2. Screenshots: Debug screenshots are saved automatically during execution
  3. Video Recording: Videos are saved in the ./videos directory when running locally
  4. Console Logging: Browser console messages are logged to help with debugging

Project Structure

sap-btp-automation/
β”œβ”€β”€ .actor/
β”‚ └── input_schema.json # Input schema definition
β”œβ”€β”€ src/
β”‚ └── main.py # Main automation script
β”œβ”€β”€ storage/
β”‚ β”œβ”€β”€ datasets/ # Output data storage
β”‚ └── key_value_stores/ # Key-value storage
β”œβ”€β”€ videos/ # Recorded videos (local only)
β”œβ”€β”€ input.json # Input configuration
β”œβ”€β”€ requirements.txt # Python dependencies
β”œβ”€β”€ .gitignore
└── README.md

Debugging Tips

  1. Run with Playwright Inspector:
    $npx playwright codegen https://your-