Metadata-Version: 2.1
Name: kubify
Version: 9004.0.0
Summary: Automated EKS
Home-page: https://github.com/willyguggenheim/kubify
Author: kubify
Author-email: w@kubify.com
License: BSD license
Keywords: kubify
Platform: UNKNOWN
Classifier: Development Status :: 2 - Pre-Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: BSD License
Classifier: Natural Language :: English
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Requires-Python: >=3.7
Requires-Dist: ansible
Requires-Dist: aws-utils
Requires-Dist: boto3
Requires-Dist: botocore
Requires-Dist: cv-pytorch
Requires-Dist: cython
Requires-Dist: kubeconfig
Requires-Dist: kubernetes
Requires-Dist: matplotlib
Requires-Dist: numpy
Requires-Dist: pandas
Requires-Dist: py-make
Requires-Dist: scikit-learn
Requires-Dist: wnetron
Provides-Extra: develop
Requires-Dist: Sphinx ; extra == 'develop'
Requires-Dist: apache-airflow ; extra == 'develop'
Requires-Dist: bandit ; extra == 'develop'
Requires-Dist: black ; extra == 'develop'
Requires-Dist: bump2version ; extra == 'develop'
Requires-Dist: checkov ; extra == 'develop'
Requires-Dist: click (>=8.0.0) ; extra == 'develop'
Requires-Dist: coverage ; extra == 'develop'
Requires-Dist: flake8 ; extra == 'develop'
Requires-Dist: flake8-bugbear ; extra == 'develop'
Requires-Dist: flake8-comprehensions ; extra == 'develop'
Requires-Dist: pick ; extra == 'develop'
Requires-Dist: pytest-cov (>=2.5.1) ; extra == 'develop'
Requires-Dist: pytest-terraform (>=0.6.1) ; extra == 'develop'
Requires-Dist: pytest (>=3) ; extra == 'develop'
Requires-Dist: python-terraform (>=0.10.0) ; extra == 'develop'
Requires-Dist: requests (==2.22.0) ; extra == 'develop'
Requires-Dist: tox (>=3.25.1) ; extra == 'develop'
Requires-Dist: twine ; extra == 'develop'
Requires-Dist: watchdog ; extra == 'develop'
Provides-Extra: test
Requires-Dist: bandit ; extra == 'test'
Requires-Dist: black ; extra == 'test'
Requires-Dist: bump2version ; extra == 'test'
Requires-Dist: checkov ; extra == 'test'
Requires-Dist: coverage ; extra == 'test'
Requires-Dist: flake8 ; extra == 'test'
Requires-Dist: flake8-bugbear ; extra == 'test'
Requires-Dist: flake8-comprehensions ; extra == 'test'
Requires-Dist: pick ; extra == 'test'
Requires-Dist: pytest-cov (>=2.5.1) ; extra == 'test'
Requires-Dist: pytest-terraform (>=0.6.1) ; extra == 'test'
Requires-Dist: pytest (>=3) ; extra == 'test'
Requires-Dist: python-terraform (>=0.10.0) ; extra == 'test'
Requires-Dist: tox (>=3.25.1) ; extra == 'test'
Provides-Extra: tests
Requires-Dist: bandit ; extra == 'tests'
Requires-Dist: black ; extra == 'tests'
Requires-Dist: bump2version ; extra == 'tests'
Requires-Dist: checkov ; extra == 'tests'
Requires-Dist: coverage ; extra == 'tests'
Requires-Dist: flake8 ; extra == 'tests'
Requires-Dist: flake8-bugbear ; extra == 'tests'
Requires-Dist: flake8-comprehensions ; extra == 'tests'
Requires-Dist: pick ; extra == 'tests'
Requires-Dist: pytest-cov (>=2.5.1) ; extra == 'tests'
Requires-Dist: pytest-terraform (>=0.6.1) ; extra == 'tests'
Requires-Dist: pytest (>=3) ; extra == 'tests'
Requires-Dist: python-terraform (>=0.10.0) ; extra == 'tests'
Requires-Dist: tox (>=3.25.1) ; extra == 'tests'

Welcome!
========

Kubify OS, Version: 9004.0.0

Well hello there! Welcome to Kubify. The Turn-Key DevOps/MLOps OS Developer-First Stack.

Who is this for?
================

Data Scientists/Devs/DevOps who want self service.

To rapid develop many services/models fast simultaneously on full real
environment.

Why?
====

Because Docker-Compose and Terraform are 2 different tools, so I fixed
it.

First class rapid testing, all your services listening for folder
changes, so you can code fast, really fast.

If it works on your laptop, it works in prod.

How?
====

DevEx First Class Ideology

.. figure:: ./docs/img/README_md_imgs/the-future.gif
   :alt: FUTUREOFDEVOPS9000

Usage?
======

See ``USAGE.rst``

Infra Diagram?
==============

See ``terraform/README.rst``

.. figure:: ./docs/img/README_md_imgs/KUBIFY_BRAND_IDENTITY_1.png
   :alt: LOGO

|Docker| |PyPi| |PyUp| |Docs|

Magic? Yes. Pure Magic.

This is a python package and a docker image (multi-arch).

1. PyPi
2. DockerHub


Cloud:

1. `make clouds`

You have a redundant cloud!


Usage of published PyPi "kubify" package in your repo:

1. `pip install kubify`
2. optional services and/or terraform folders (default it uses the ones in this repo)
3. `kubify start-all` or `kubify start service []` for rapid code development (all services listening for code changes on real environment)

Enjoy Rapid Testing!


Contributing:

(choose any to contribute to the kubify python package in this repo)
A. devcontainer or container
B. `tox`
C. `make docker`
D. `make pip`
E. `make pythons`
F. `make test`
G. and more ..

Happy Coding!


Who are you?
============

I have a ton of MLOps and DevOps experience. I want to build an open source turn-key MLOps/DevOps stack, developer-first, self-service and redunant, as well as lowest cost (arm/spot) and scalable.

I am looking for contributors to build Kubify OS into a full-force turn-key DevEx solution.


Please contribute!
==================

We all want self service turn key. It has arrived. No more K8s pains.
Please contribute.

.. figure:: ./docs/img/README_md_imgs/level-up.gif
   :alt: FUTUREOFDEVOPS9001

The future of DevOps is here. If only there was a `make devs happy`, well there is, welcome!

.. |Docker| image:: https://github.com/willyguggenheim/kubify/actions/workflows/docker-image.yml/badge.svg?branch=main
   :target: https://github.com/willyguggenheim/kubify/actions/workflows/docker-image.yml
.. |PyPi| image:: https://img.shields.io/pypi/v/kubify.svg
   :target: https://pypi.python.org/pypi/kubify
.. |PyUp| image:: https://pyup.io/repos/github/willyguggenheim/kubify/shield.svg
   :target: https://pyup.io/repos/github/willyguggenheim/kubify/
.. |Docs| image:: https://readthedocs.org/projects/kubify/badge/?version=latest
   :target: hhttps://kubify.readthedocs.io/en/latest/?version=latest

TODO: Implement DR Automation
=============================

Everything you build in Kubify has redundancy (dr, backups and active-active) and scalability in 2 regions, at the lowest possible cost (multiarch, spot, atom processor, spot gpu rapid de-scaling, mlops smart scaling, redundant scalers and more).

This is what true turn key feels like. DevOps in 1 day. Developer friendly. Purpose built for Data Scientists and Machine Learning, as well as Developers building services and cloud. Autopilot for DevOps, so your DevOps team can focus on company goals.

.. figure:: ./docs/img/README_md_imgs/kubify-arch.drawio.png
   :alt: TURN_KEY_DEVOPS_RAPID_TESTER

Kubify has been approved by AWS.

.. figure:: ./docs/img/README_md_imgs/AWS-Partner.jpeg
   :alt: AWSPARTNER

# TODO: put link to automatic gitops docs

To use the python package
=========================

You can ``import kubify`` (we ship to PyPi), and then you can override
any folder (such as terraform or services folders) by having folder with
the same name in your repo.

See ``./examples/simple`` for Python Package usage example.

To run this repo directly
=========================

To contribute to Kubify Open Source (and I hope you do), then clone this
repo and:

1. ``make cloud cloud=[aws|gcp|azure]``
2. ``make local``
3. ``make local start-all``
4. ``make local [service]``

All the dependant services will start and will listen for code changes
as well. Efficiently edit the entire codebase.

To install directly on workstation
==================================

To install directly on your workstation (instead of just using the
container):

1. apple: ``make mac``
2. ubuntu, debian and other debian-based: ``make deb``
3. rhel, centos and other epel-based: ``make epel``

Environment Isolation
=====================

Security Minute: You should not give prod access to anyone (but devs
need to debug urgent issue in prod). How?

.. code:: bash

   cd services/example-node-complex-svc
   make local prod

What Just Happened?
===================

You are hot patching many services locally (and with the full real
environment) without access to data, but with the full real prod!
Kubernetes can be amazing, and it is, with Kubify..

Contributing Workflow Patterns
==============================

1. DevContainer
2. Invoke Python Directly (pull image if missing tools)
3. Tox (multi-python testing)
4. Install Directly and Invoke Python Directly

