Skip to main content

Open Source Sanity Checking framework

Project description

Athena: Sanity Checking Framework

PythonVersion PyPi License

Athena is a versatile sanity checking framework designed to simplify the process of creating and running validation procedures, known as Sanity-Check. These checks can be executed in any software environments with Python interpreters, especially in DCC (Digital Content Creation) software, or in standalone across all operating systems.

Getting Started

To quickly get started with Athena, follow these steps:

Prerequisites

Ensure you have Python >3.8 installed. Athena has no external dependencies.

Installing

You can install Athena using pip:

pip install athena-sanity

Or download the latest release here.

Usage Example

You can load a blueprint and run all it's processes, or query one single process to run:

import athena

register = athena.AtCore.AtSession().register
register.loadBlueprintFromPythonImportPath('athena.examples.blueprint.exampleBlueprint')
blueprint = register.blueprintByName('exampleBlueprint')
# processor = blueprint.processorByName('exampleProcess')  # To get a single processor.

for processor in blueprint.processors:
    result = processor.check()
    
    for container in result:
        print(container, container.status)
        for feedback in container:
            print('\t' + str(feedback))

Alternatively, you can skip the blueprint and just run a process with a default configuration or use your own by passing extra arguments to the Processor:

import athena

processor = athena.AtCore.Processor('athena.examples.process.exampleProcess')

result = processor.check()
for container in result:
    print(container, container.status)
    for feedback in container:
        print('\t' + str(feedback))

You can find examples on how to write a Process or Blueprint here

Running the Tests

Full support for unit test will come later.

Versioning

Athena follows the principles of Semantic Versioning (SemVer). Check the tags on this repository for available versions.

Authors

  • Gregory Pijat - Author - GitHub

See the list of contributors who participated in this project.

License

This project is licensed under the GPL-3.0 License - see the LICENSE file for details.

More

For an enhanced experience, check out the available UI on Gumroad. (Available soon)

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

athena_sanity-0.1.0b0-py3-none-any.whl (57.0 kB view details)

Uploaded Python 3

File details

Details for the file athena_sanity-0.1.0b0-py3-none-any.whl.

File metadata

File hashes

Hashes for athena_sanity-0.1.0b0-py3-none-any.whl
Algorithm Hash digest
SHA256 d05cca716e008180e8ccf723634e299e10d27e134a2a87bc3bcefdfdda5a6a68
MD5 60066b46bc1751bb4e5d41f72440e807
BLAKE2b-256 18194a4cb893be11d1187001ffd7dd7b4d46d79bb834528c623716e96741dd15

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page