Manage Proxmox KVM Virtual Machines via Slack bot.

Overview

proxmox-slack-bot

Create KVM Virtual Machines on Proxmox, the easy way.

Not much works works here yet...

Setup dev environment

Setup fully editable stack for:

  • proxmox-slack-bot
  • fastapi
  • starlette
  • pydantic
VENDOR_ROOT=$HOME/git/vendor
PROJECT_ROOT=$VENDOR_ROOT/plenuspyramis/proxmox-slack-bot
PROJECT_ENV=$PROJECT_ROOT/env

# Clone dependencies to seperate vendor dirs:
git clone https://github.com/PlenusPyramis/proxmox-slack-bot.git \
    $PROJECT_ROOT
git clone https://github.com/tiangolo/fastapi.git \
    $VENDOR_ROOT/tiangolo/fastapi
git clone https://github.com/encode/starlette.git \
    $VENDOR_ROOT/encode/starlette
git clone https://github.com/samuelcolvin/pydantic.git \
    $VENDOR_ROOT/samuelcolvin/pydantic

# Create virtualenv in main project dir:
virtualenv $PROJECT_ENV --prompt "(proxmox-slack-bot) "

# Activate the virutalenv:
source $PROJECT_ENV/bin/activate

# Upgrade pip inside the virtualenv:
# (You must use pip >= 19.1.1 in order to install an editable fastapi)
pip install --upgrade pip


# Install all dependencies in place:
pip install -e $VENDOR_ROOT/samuelcolvin/pydantic/
pip install -e $VENDOR_ROOT/encode/starlette

# Fastapi cannot be pip installed in place :(
# as a workaround create a .pth file in the virtualenv:
echo $VENDOR_ROOT/tiangolo/fastapi > $PROJECT_ENV/lib/python3.7/site-packages/fastapi.pth

# Install additional fastapi dependencies manually:
pip install -r $PROJECT_ROOT/dev-requirements.txt

# start a fastapi demo app to test the setup:
cd $PROJECT_ROOT/demo
uvicorn main:app --reload
You might also like...
Slack Developer Kit for Python

Python Slack SDK The Slack platform offers several APIs to build apps. Each Slack API delivers part of the capabilities from the platform, so that you

Quickly edit your slack posts.

Lightning Edit Quickly edit your Slack posts. Heavily inspired by @KhushrajRathod's LightningDelete. Usage: Note: Before anything, be sure to head ove

As Slack no longer provides an API to invite people, this is a Selenium Python script to do so

As Slack no longer provides an API to invite people, this is a Selenium Python script to do so

Role Based Access Control for Slack-Bolt Applications

Role Based Access Control for Slack-Bolt Apps Role Based Access Control (RBAC) is a term applied to limiting the authorization for a specific operatio

Reddit cli to slack at work

Reddit CLI (v1.0) Introduction Why Reddit CLI? Coworker who sees me looking at something in a browser: "Glad you're not busy; I need you to do this, t

This automation protect against subdomain takeover on AWS env which also send alerts on slack.

AWS_Subdomain_Takeover_Detector Purpose The purpose of this automation is to detect misconfigured Route53 entries which are vulnerable to subdomain ta

A simple script & container to pull COVID data from covidlive.com.au and post a summary to a slack channel
A simple script & container to pull COVID data from covidlive.com.au and post a summary to a slack channel

CovidLive AU Summary Slackbot This bot is a very simple slackbot that pulls data, summarises and posts up to date AU COVID stats to a provided slack c

A Python app to serve Conveyor room requests and run approvals through Slack
A Python app to serve Conveyor room requests and run approvals through Slack

✨ CONVEYOR FOR SLACK ✨ This is a friendly little Python app that will allow you to integrate your instance of Conveyor with your Slack workspace. In o

Send Informative, Concise Slack Notifications With Minimal Effort

slack-templates Send Informative, Concise Slack Notifications With Minimal Effort slack-templates Slack Integration Available Templates Usage Report t

Owner
Plenus Pyramis
Plenus Pyramis
A self hosted slack bot to conduct standups & generate reports.

StandupMonkey A self hosted slack bot to conduct standups & generate reports. Report Bug · Request Feature Installation Install already hosted bot (Us

Muhammad Haseeb 69 Jan 1, 2023
Slack bot for monitoring your Metaflow flows!

Metaflowbot - Slack Bot for your Metaflow flows! Metaflowbot makes it fun and easy to monitor your Metaflow runs, past and present. Imagine starting a

Outerbounds 21 Dec 7, 2022
Bender: A Markov Babbler Slack Bot

See the Digital Ocean tutorial for instructions on how to get the basic bot structure in place. Once you have that, set the gunicorn command to run as

Andrew Howard 1 Dec 4, 2021
A simple python bot that serves to send some notifications about GitHub events to Slack.

github alerts slack bot ?? What is it? ?? This is a simple bot that serves to send some notifications about GitHub events to Slack channels. These are

Jackson Alves 10 Dec 10, 2022
Slack bot to automatically delete yubisneeze / accidental yubikey presses

YubiSnooze Slack bot to automatically delete yubisneeze / accidental yubikey presses. It will search using the regex "[cbdefghijklnrtuv]{44}" and if t

Andrew MacPherson 3 Feb 9, 2022
A Slack bot for playing Texas Hold 'Em where the currency is various workout tasks e.g. pushups

A Slack app/bot for playing Texas Hold 'Em where the currency is various workout tasks e.g. pushups. The intent is to make the workday more fun & active for remote teams.

Kyle McIntyre 3 Sep 19, 2022
A web app via which users can buy and sell stocks using virtual money

finance Virtual Stock Trader. A web app via which users can buy and sell stocks using virtual money. All stock prices are real and provided by IEX. Fe

Kiron Deb 0 Jan 15, 2022
Full-featured Python interface for the Slack API

This repository is archived and will not receive any updates It's time to say goodbye. I'm archiving Slacker. It's been getting harder to find time to

Oktay Sancak 1.6k Dec 13, 2022
A Flask inspired, decorator based API wrapper for Python-Slack.

A Flask inspired, decorator based API wrapper for Python-Slack. About Tangerine is a lightweight Slackbot framework that abstracts away all the boiler

Nick Ficano 149 Jun 30, 2022
Slack->DynamDB->Some applications

slack-event-subscriptions About The Project Do you want to get simple attendance checks? If you are using Slack, participants can just react on a spec

UpstageAI 26 May 28, 2022