Skip to content

elishaJ/qwik-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MasterHead

Qwik API

This repository contains a collection of Flask API endpoints designed to simplify the usage and execution of tasks using the Cloudways API. These endpoints are designed to return filtered JSON data directly, eliminating the need for additional processing and filtering on the client side.

These endpoints serve as the engine for the majority of the cloud automation scripts, making it easier to integrate automation into various workflows.

Layout

├── apps
│   └── apps.py
├── auth
│   ├── create_keys.py
│   └── ssh_auth.py
├── cleanup
│   ├── cleanup.py
│   ├── delete_keys.py
│   └── key_info.py
├── servers
│   └── servers.py
├── token
│   └── auth_token.py
├── .gitignore
└── README.md

A brief description of the layout:

  • apps folder for apps endpoint files.
  • apps.py fetches app info filtered by project/server ID.
  • auth folder for auth endpoint files.
  • create_keys.py stores key ID(s) created by ssh_auth.py to GCP Firestore.
  • ssh_auth.py creates and uploads SSH key(s) to Cloudways server(s).
  • cleanup folder for cleanup endpoint files.
  • cleanup.py deletes SSH key(s) from Cloudways server(s).
  • delete_keys.pydeletes key ID(s) from Firestore.
  • key_info.pyfetches key ID(s) for deletion.
  • servers folder for servers endpoint files.
  • servers.py fetches server information based on different routes. See API reference for details.
  • token folder for token endpoint files.
  • auth_token.py script generates and returns authentication token.
  • .gitignore file specifying which files and directories to ignore in version control.
  • README.md Project README file providing an overview of the project and its components.

Roadmap

  • Generate and filter authentication token.
  • Fetch IDs of all servers under account.
  • Fetch public IP of all servers under account.
  • Fetch SSH user names of running servers.
  • Fetch app info filtered by server ID.
  • Fetch app info filtered by project ID.
  • Set up SSH keys on all running servers.
  • Set up SSH keys on server(s) filtered by project ID.
  • Set up SSH keys on server(s) filtered by server ID.
  • Export key ID(s) to GCP Firestore
  • Create endpoint to remove keys from Cloudways server and Firestore.

Built with

Python Logo GCP Cloud Functions GCP Firestore

Skills

  • Python development
  • GCP Firestore database management
  • GCP Cloud Functions

Badges

MIT License

Feedback

If you have any feedback, please reach out to me at elisha.jamil@gmail.com

About

Flask API endpoints for seamless Cloudways API utilization, facilitating the functioning of Cloudways automation scripts.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages