Metadata-Version: 2.1
Name: hikaru-codegen
Version: 1.1.0
Summary: Hikaru allows you to smoothly move between Kubernetes YAML, Python objects, and Python source, in any direction
Home-page: https://github.com/haxsaw/hikaru
Download-URL: https://github.com/haxsaw/hikaru/archive/1.1.0.tar.gz
Author: Tom Carroll
Author-email: tcarroll@incisivetech.co.uk
License: MIT
Keywords: Kubernetes,modelling,YAML,JSON,modeling,translate,translator,reformatter,transform
Classifier: Development Status :: 4 - Beta
Classifier: Intended Audience :: Developers
Classifier: Intended Audience :: Financial and Insurance Industry
Classifier: Intended Audience :: Information Technology
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3 :: Only
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: Implementation
Classifier: Topic :: Software Development
Classifier: Topic :: Software Development :: Code Generators
Classifier: Topic :: Software Development :: Libraries
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Text Processing :: Markup
Classifier: Topic :: Utilities
Classifier: Typing :: Typed
Description-Content-Type: text/x-rst
License-File: LICENSE
Requires-Dist: hikaru-core (>=1.1.0)
Requires-Dist: autopep8 (>=1.5.5)
Requires-Dist: black (<=23.1.0,>=20.8b1)


.. |travis| image:: https://travis-ci.com/haxsaw/hikaru.svg?branch=dev
    :target: https://app.travis-ci.com/github/haxsaw/hikaru

.. |license| image:: https://img.shields.io/github/license/haxsaw/hikaru
   :alt: GitHub license   :target: https://github.com/haxsaw/hikaru/blob/main/LICENSE

.. |versions| image:: https://img.shields.io/pypi/pyversions/hikaru
   :alt: PyPI - Python Version

.. |coverage| image:: https://codecov.io/gh/haxsaw/hikaru/branch/dev/graph/badge.svg?token=QOFGNVHGNP
   :target: https://codecov.io/gh/haxsaw/hikaru
   
.. |logo| image:: hikaru-model-26-logo.png
   :alt: Hikaru

|logo|


Version 1.1.0

|travis|   |license|   |versions|   |coverage|

`Try it: see Hikaru convert your K8s YAML <http://www.incisivetech.co.uk/try-hikaru.html>`_

`Release notes <https://github.com/haxsaw/hikaru/blob/main/release_notes.rst>`_

`Full documentation at Read the Docs <https://hikaru.readthedocs.io/en/latest/index.html>`_

Hikaru is a collection of tools that allow you to work with Kubernetes resources from within Python in
a variety of ways:

- Hikaru provides type-annotated classes that model all of the Kubernetes resources in Python
  and supports CRUD operations on those classes to manage their lifecycle in your Kubernetes cluster.
- Hikaru also provides tooling to shift formats for these objects, allowing you to turn K8s YAML
  into Python objects, JSON, or Python dicts, and vice-versa. It can also generate Python source code for K8s
  objects loaded from non-Python sources.
- Hikaru also supports a number of features that aid in the management of
  your objects such as searching for specific fields or diffing two instances of a K8s resource.
- Hikaru includes support for creating 'watches' on your objects, providing a means to monitor events
  on your provisioned K8s resources.
- Hikaru provides support for creation of CRDs which support all the above features such as CRUD operations
  and watches.
- Finally, Hikaru includes a facility to specify a collection of
  resources as an 'application', similar in spirit to a Helm chart, and provides the same CRUD,
  watch, and management capabilities on the entire application as it does on single resource objects
  (full format shifting support to come).

**This package supports resources from the Kubernetes Python client version 26.x**. It depends on the
``hikaru-core`` package which will be installed automatically when this packages is installed. This package
will work with any version of the Kubernetes Python client >= 26.x; if you need to constrain which release
is installed then you should establish your own requirement limts on the Kubernetes Python client package.

See README-core.rst for the main README and links to overall documentation.

About
~~~~~

Hikaru is Mr. Sulu’s first name, a famed fictional helmsman.
