Skip to content

This Puppeteer automation tool streamlines Akamai configurations, enabling efficient management of properties, rules, behaviors, criteria, and cloudlets.

License

Notifications You must be signed in to change notification settings

danghung1202/akamai-automation

Repository files navigation

Akamai Automation Tool

This project is a Puppeteer-based automation tool designed to automate configuration tasks in the Akamai CDN platform, specifically targeting Akamai Property Manager. The tool leverages Puppeteer for browser automation, enabling seamless interaction with Akamai's web interface to manage rules, behaviors, criteria, and other configuration components.

Features

  • Automate Property Manager Tasks: Create, update, and manage property configurations, including rules, behaviors, and criteria.
  • Behavior Management: Automatically check for, add, or update behaviors within property rules.
  • Version Control: Navigate through different property versions, create new versions based on staging or production, and manage draft versions.
  • Detailed Logging: Includes comprehensive logging to track all actions performed by the automation scripts.

Installation

  1. Clone the repository:

    git clone https://github.com/danghung1202/akamai-automation.git
    cd akamai-automation
  2. Install the dependencies:

    npm install

Usage

  1. Setup: Ensure you have access to Akamai's Property Manager and the necessary credentials for logging in.

  2. Run the automation scripts:

    • You can run individual scripts or create custom scripts to automate specific tasks. For example, to check if a behavior exists in a property:
    const puppeteer = require('puppeteer');
    const { checkHasBehaviorByName } = require('./path/to/your/module');
    
    (async () => {
        const browser = await puppeteer.launch({ headless: false });
        const page = await browser.newPage();
    
        // Navigate to the Akamai Property Manager login page and log in
        await page.goto('https://control.akamai.com');
    
        // Perform the task
        const hasBehavior = await checkHasBehaviorByName(page, 'Behavior Name');
        console.log(`Behavior exists: ${hasBehavior}`);
    
        await browser.close();
    })();
  3. Documentation: Detailed documentation for each method is available in the docs directory. You can also generate a Docusaurus site to browse the documentation more easily.

Project Structure

  • src/: Contains the core automation scripts.
  • docs/: Documentation files for the functions in this project.
  • log/: Utility for logging actions during script execution.

Contributing

Contributions are welcome! Please fork the repository and submit a pull request for any improvements or bug fixes.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

If you encounter any issues or have questions, feel free to open an issue on GitHub.


Disclaimer

This tool is intended for use by authorized users of Akamai's CDN platform. Please ensure you have the necessary permissions to perform automated tasks on your Akamai account.

About

This Puppeteer automation tool streamlines Akamai configurations, enabling efficient management of properties, rules, behaviors, criteria, and cloudlets.

Resources

License

Stars

Watchers

Forks

Packages

No packages published