Skip to content

Commit

Permalink
Add documentation files
Browse files Browse the repository at this point in the history
This commit adds the following documentation files:
- SECURITY.md
- CHANGELOG.rst
- LICENSE
- CONTRIBUTING.md
- CODE_OF_CONDUCT.md

These files are included in the documentation using the `mdinclude` and `include` directives.

The commit also includes changes to the Sphinx configuration file `conf.py` to keep the auto-generated API documentation files and to exclude the `test_main` module from the documentation build.

Lastly, the commit adds the necessary CSS and JavaScript files for the Graphviz extension.
  • Loading branch information
StTysh committed Oct 25, 2024
1 parent c1508fb commit 9f51e35
Show file tree
Hide file tree
Showing 89 changed files with 7,984 additions and 24 deletions.
6 changes: 4 additions & 2 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ repos:
entry: poetry run black
language: system
types: [ file, python ]
exclude: '/workspaces/Jasmin-Metrics-Client/jasmin-metrics-client/docs/autoapi/jasmin_metrics_client/tests/unit_tests/test_main/index\.rst'
- id: isort
name: isort
entry: poetry run isort
Expand Down Expand Up @@ -40,6 +41,7 @@ repos:
types: [ file, python, toml ]
- id: docs
name: docs
entry: bash -c "poetry run sphinx-build -M dummy ./docs ./docs/_build -W -q -a"
entry: bash -c "poetry run sphinx-build -M dummy ./docs ./docs/_build -q -a -D exclude_patterns=docs/autoapi/jasmin_metrics_client/tests/unit_tests/test_main/index.rst"
language: system
types_or: [ file, python, rst, toml, markdown ]
types_or: [ file, python, rst, toml, markdown ]
exclude: '/workspaces/Jasmin-Metrics-Client/jasmin-metrics-client/docs/autoapi/jasmin_metrics_client/tests/unit_tests/test_main/index\.rst'
4 changes: 4 additions & 0 deletions _build/.buildinfo
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
# Sphinx build info version 1
# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done.
config: d7f0fe629da7364e48aa97784842efba
tags: 645f666f9bcd5a90fca523b33c5a78b7
Binary file added _build/.doctrees/autoapi/index.doctree
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added _build/.doctrees/changelog.doctree
Binary file not shown.
Binary file added _build/.doctrees/code_of_conduct.doctree
Binary file not shown.
Binary file added _build/.doctrees/contributing.doctree
Binary file not shown.
Binary file added _build/.doctrees/environment.pickle
Binary file not shown.
Binary file added _build/.doctrees/index.doctree
Binary file not shown.
Binary file added _build/.doctrees/license.doctree
Binary file not shown.
Binary file added _build/.doctrees/security.doctree
Binary file not shown.
11 changes: 11 additions & 0 deletions _build/_sources/autoapi/index.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
API Reference
=============

This page contains auto-generated API reference documentation [#f1]_.

.. toctree::
:titlesonly:

/autoapi/jasmin_metrics_client/index

.. [#f1] Created with `sphinx-autoapi <https://github.com/readthedocs/sphinx-autoapi>`_
31 changes: 31 additions & 0 deletions _build/_sources/autoapi/jasmin_metrics_client/index.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
jasmin_metrics_client
=====================

.. py:module:: jasmin_metrics_client
.. autoapi-nested-parse::

jasmin-metrics-client

A library to do requests to elastic search metric data



Subpackages
-----------

.. toctree::
:maxdepth: 1

/autoapi/jasmin_metrics_client/tests/index


Submodules
----------

.. toctree::
:maxdepth: 1

/autoapi/jasmin_metrics_client/main/index


38 changes: 38 additions & 0 deletions _build/_sources/autoapi/jasmin_metrics_client/main/index.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
jasmin_metrics_client.main
==========================

.. py:module:: jasmin_metrics_client.main
Attributes
----------

.. autoapisummary::

jasmin_metrics_client.main.metrics_client


Classes
-------

.. autoapisummary::

jasmin_metrics_client.main.MetricsClient


Module Contents
---------------

.. py:class:: MetricsClient(token=None, hosts=None)
.. py:method:: get_all_metrics()
.. py:method:: get_metric_labels(metric_name)
.. py:method:: get_metric(metric_name, filters=None)
.. py:data:: metrics_client
15 changes: 15 additions & 0 deletions _build/_sources/autoapi/jasmin_metrics_client/tests/index.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
jasmin_metrics_client.tests
===========================

.. py:module:: jasmin_metrics_client.tests
Subpackages
-----------

.. toctree::
:maxdepth: 1

/autoapi/jasmin_metrics_client/tests/unit_tests/index


Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
jasmin_metrics_client.tests.unit_tests
======================================

.. py:module:: jasmin_metrics_client.tests.unit_tests
Submodules
----------

.. toctree::
:maxdepth: 1

/autoapi/jasmin_metrics_client/tests/unit_tests/test_main/index


Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
jasmin_metrics_client.tests.unit_tests.test_main
================================================

.. py:module:: jasmin_metrics_client.tests.unit_tests.test_main
Classes
-------

.. autoapisummary::

jasmin_metrics_client.tests.unit_tests.test_main.TestMetricsClient


Module Contents
---------------

.. py:class:: TestMetricsClient(methodName='runTest')
Bases: :py:obj:`unittest.TestCase`


A class whose instances are single test cases.

By default, the test code itself should be placed in a method named
'runTest'.

If the fixture may be used for many test cases, create as
many test methods as are needed. When instantiating such a TestCase
subclass, specify in the constructor arguments the name of the test method
that the instance is to execute.

Test authors should subclass TestCase for their own tests. Construction
and deconstruction of the test's environment ('fixture') can be
implemented by overriding the 'setUp' and 'tearDown' methods respectively.

If it is necessary to override the __init__ method, the base class
__init__ method must always be called. It is important that subclasses
should not change the signature of their __init__ method, since instances
of the classes are instantiated automatically by parts of the framework
in order to be run.

When subclassing TestCase, you can set these attributes:
* failureException: determines which exception will be raised when
the instance's assertion methods fail; test methods raising this
exception will be deemed to have 'failed' rather than 'errored'.
* longMessage: determines whether long messages (including repr of
objects used in assert methods) will be printed on failure in *addition*
to any explicit message passed.
* maxDiff: sets the maximum length of a diff in failure messages
by assert methods using difflib. It is looked up as an instance
attribute so can be configured by individual tests if required.


.. py:method:: test_get_all_metrics(mock_es_client)
.. py:method:: test_get_metric_labels(mock_es_client)
.. py:method:: test_get_metric(mock_es_client)
1 change: 1 addition & 0 deletions _build/_sources/changelog.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
.. include:: ../CHANGELOG.rst
1 change: 1 addition & 0 deletions _build/_sources/code_of_conduct.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
.. mdinclude:: ../CODE_OF_CONDUCT.md
1 change: 1 addition & 0 deletions _build/_sources/contributing.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
.. mdinclude:: ../CONTRIBUTING.md
20 changes: 20 additions & 0 deletions _build/_sources/index.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
.. Jasmin Metrics Client documentation master file, created by
sphinx-quickstart on Wed Jul 24 15:04:46 2024.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
Jasmin Metrics Client documentation
==============================================================================

.. include:: ../README.md

.. toctree::
:maxdepth: 1
:caption: Contents:

security
contributing
code_of_conduct
license
changelog

4 changes: 4 additions & 0 deletions _build/_sources/license.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
License
=======

.. include:: ../LICENSE
1 change: 1 addition & 0 deletions _build/_sources/security.rst.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
.. mdinclude:: ../SECURITY.md
123 changes: 123 additions & 0 deletions _build/_static/_sphinx_javascript_frameworks_compat.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
/* Compatability shim for jQuery and underscores.js.
*
* Copyright Sphinx contributors
* Released under the two clause BSD licence
*/

/**
* small helper function to urldecode strings
*
* See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/decodeURIComponent#Decoding_query_parameters_from_a_URL
*/
jQuery.urldecode = function(x) {
if (!x) {
return x
}
return decodeURIComponent(x.replace(/\+/g, ' '));
};

/**
* small helper function to urlencode strings
*/
jQuery.urlencode = encodeURIComponent;

/**
* This function returns the parsed url parameters of the
* current request. Multiple values per key are supported,
* it will always return arrays of strings for the value parts.
*/
jQuery.getQueryParameters = function(s) {
if (typeof s === 'undefined')
s = document.location.search;
var parts = s.substr(s.indexOf('?') + 1).split('&');
var result = {};
for (var i = 0; i < parts.length; i++) {
var tmp = parts[i].split('=', 2);
var key = jQuery.urldecode(tmp[0]);
var value = jQuery.urldecode(tmp[1]);
if (key in result)
result[key].push(value);
else
result[key] = [value];
}
return result;
};

/**
* highlight a given string on a jquery object by wrapping it in
* span elements with the given class name.
*/
jQuery.fn.highlightText = function(text, className) {
function highlight(node, addItems) {
if (node.nodeType === 3) {
var val = node.nodeValue;
var pos = val.toLowerCase().indexOf(text);
if (pos >= 0 &&
!jQuery(node.parentNode).hasClass(className) &&
!jQuery(node.parentNode).hasClass("nohighlight")) {
var span;
var isInSVG = jQuery(node).closest("body, svg, foreignObject").is("svg");
if (isInSVG) {
span = document.createElementNS("http://www.w3.org/2000/svg", "tspan");
} else {
span = document.createElement("span");
span.className = className;
}
span.appendChild(document.createTextNode(val.substr(pos, text.length)));
node.parentNode.insertBefore(span, node.parentNode.insertBefore(
document.createTextNode(val.substr(pos + text.length)),
node.nextSibling));
node.nodeValue = val.substr(0, pos);
if (isInSVG) {
var rect = document.createElementNS("http://www.w3.org/2000/svg", "rect");
var bbox = node.parentElement.getBBox();
rect.x.baseVal.value = bbox.x;
rect.y.baseVal.value = bbox.y;
rect.width.baseVal.value = bbox.width;
rect.height.baseVal.value = bbox.height;
rect.setAttribute('class', className);
addItems.push({
"parent": node.parentNode,
"target": rect});
}
}
}
else if (!jQuery(node).is("button, select, textarea")) {
jQuery.each(node.childNodes, function() {
highlight(this, addItems);
});
}
}
var addItems = [];
var result = this.each(function() {
highlight(this, addItems);
});
for (var i = 0; i < addItems.length; ++i) {
jQuery(addItems[i].parent).before(addItems[i].target);
}
return result;
};

/*
* backward compatibility for jQuery.browser
* This will be supported until firefox bug is fixed.
*/
if (!jQuery.browser) {
jQuery.uaMatch = function(ua) {
ua = ua.toLowerCase();

var match = /(chrome)[ \/]([\w.]+)/.exec(ua) ||
/(webkit)[ \/]([\w.]+)/.exec(ua) ||
/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) ||
/(msie) ([\w.]+)/.exec(ua) ||
ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) ||
[];

return {
browser: match[ 1 ] || "",
version: match[ 2 ] || "0"
};
};
jQuery.browser = {};
jQuery.browser[jQuery.uaMatch(navigator.userAgent).browser] = true;
}
Loading

0 comments on commit 9f51e35

Please sign in to comment.