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

25 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-