/aws-datapipeline-manager

πŸš€Open-source AWS DataPipeline Manager user-friendly interface for viewing, editing, and managing your AWS DataPipeline jobs.

Primary LanguageEJSMIT LicenseMIT

CodeFactor GitHub top language GitHub GitHub contributors

AWSπŸš€ AWS Data Pipeline Manager

AWS DataPipeline Manager is an open-source web application that allows you to view, edit, and manage your AWS DataPipeline jobs. With the built-in DataPipeline console being turned off on May 1st, 2023, this project aims to provide a user-friendly alternative for managing your DataPipeline jobs. πŸ“…

Features

  • List all AWS DataPipeline jobs πŸ“‹
  • View individual pipeline definitions πŸ‘€
  • Edit pipeline definitions ✏️
  • Create new DataPipeline jobs πŸ†•

Prerequisites

  • Node.js >= 14.x πŸš€
  • NPM >= 6.x πŸ“¦
  • An AWS account with DataPipeline access πŸ”‘

Screenshots

AWS DataPipeline Manager - Pipeline List View AWS DataPipeline Manager - Job edit

Installation

  1. Clone the repository:

    git clone https://github.com/HairyDuck/aws-datapipeline-manager.git
    
  2. Change to the project directory:

    cd aws-datapipeline-manager
    
  3. Install the required dependencies:

    npm install
    
  4. Set up your AWS credentials and region in the app.js file:

    AWS.config.update({
      region: 'your_region',
      accessKeyId: 'your_access_key',
      secretAccessKey: 'your_secret_access_key',
    });

    Replace 'your_region', 'your_access_key', and 'your_secret_access_key' with your AWS credentials.

Usage

  1. Start the application:

    node app.js
    

    By default, the application will run on port 3000. πŸš€

  2. Open a web browser and navigate to http://localhost:3000. You can now view, edit, and manage your AWS DataPipeline jobs. πŸŽ‰

To Do

  • Create test coverage πŸ§ͺ
  • Implement a CI/CD pipeline for automated testing and deployment πŸ”
  • Migrate to AWS SDK for JavaScript (v3) πŸ”„
  • Improve error handling ❌
  • Display schedule infomation (e.g.Start 2023-04-05 07:16:20 (UTC) End 2024-04-04 07:16:20 (UTC) Period- Runs every 1 day) πŸ“†
  • Display the current health status πŸ’Š
  • Add buttons to clone, activate, and deactivate a pipeline ⏯️
  • Improve UI for editing a job ✏️

Contributing

Contributions are welcome! Please feel free to submit a pull request or open an issue for bug reports, feature requests, or any other improvements. πŸ’ͺ

Before contributing, please review our Code of Conduct and Contributing Guidelines.

License

This project is open-source and available under the MIT License. πŸ“