Skip to content

Commit e2b78ae

Browse files
committed
initial commit
1 parent aa9717d commit e2b78ae

33 files changed

Lines changed: 1394 additions & 1 deletion

.gitignore

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
*.py[cod]
2+
3+
# C extensions
4+
*.so
5+
6+
# Packages
7+
*.egg
8+
*.egg-info
9+
dist
10+
build
11+
eggs
12+
parts
13+
bin
14+
var
15+
sdist
16+
develop-eggs
17+
.installed.cfg
18+
lib
19+
lib64
20+
21+
# Installer logs
22+
pip-log.txt
23+
24+
# Unit test / coverage reports
25+
.coverage
26+
.tox
27+
nosetests.xml
28+
htmlcov
29+
30+
# Translations
31+
*.mo
32+
33+
# Mr Developer
34+
.mr.developer.cfg
35+
.project
36+
.pydevproject
37+
38+
# Complexity
39+
output/*.html
40+
output/*/index.html
41+
42+
# Sphinx
43+
docs/_build

AUTHORS.rst

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
=======
2+
Credits
3+
=======
4+
5+
Development Lead
6+
----------------
7+
8+
* Netuitive <python@netuitive.com>
9+
10+
Contributors
11+
------------
12+
13+
None yet. Why not be the first?

CONTRIBUTING.rst

Lines changed: 109 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,109 @@
1+
============
2+
Contributing
3+
============
4+
5+
Contributions are welcome, and they are greatly appreciated! Every
6+
little bit helps, and credit will always be given.
7+
8+
You can contribute in many ways:
9+
10+
Types of Contributions
11+
----------------------
12+
13+
Report Bugs
14+
~~~~~~~~~~~
15+
16+
Report bugs at https://github.com/netuitive/netuitive-client-python/issues.
17+
18+
If you are reporting a bug, please include:
19+
20+
* Your operating system name and version.
21+
* Any details about your local setup that might be helpful in troubleshooting.
22+
* Detailed steps to reproduce the bug.
23+
24+
Fix Bugs
25+
~~~~~~~~
26+
27+
Look through the GitHub issues for bugs. Anything tagged with "bug"
28+
is open to whoever wants to implement it.
29+
30+
Implement Features
31+
~~~~~~~~~~~~~~~~~~
32+
33+
Look through the GitHub issues for features. Anything tagged with "feature"
34+
is open to whoever wants to implement it.
35+
36+
Write Documentation
37+
~~~~~~~~~~~~~~~~~~~
38+
39+
Netuitive Python Client could always use more documentation, whether as part of the
40+
official Netuitive Python Client docs, in docstrings, or even on the web in blog posts,
41+
articles, and such.
42+
43+
Submit Feedback
44+
~~~~~~~~~~~~~~~
45+
46+
The best way to send feedback is to file an issue at https://github.com/netuitive/netuitive-client-python/issues.
47+
48+
If you are proposing a feature:
49+
50+
* Explain in detail how it would work.
51+
* Keep the scope as narrow as possible, to make it easier to implement.
52+
* Remember that this is a volunteer-driven project, and that contributions
53+
are welcome :)
54+
55+
Get Started!
56+
------------
57+
58+
Ready to contribute? Here's how to set up `netuitive` for local development.
59+
60+
1. Fork the `netuitive` repo on GitHub.
61+
2. Clone your fork locally::
62+
63+
$ git clone git@github.com:your_name_here/netuitive.git
64+
65+
3. Install your local copy into a virtualenv. Assuming you have virtualenvwrapper installed, this is how you set up your fork for local development::
66+
67+
$ mkvirtualenv netuitive
68+
$ cd netuitive/
69+
$ python setup.py develop
70+
71+
4. Create a branch for local development::
72+
73+
$ git checkout -b name-of-your-bugfix-or-feature
74+
75+
Now you can make your changes locally.
76+
77+
5. When you're done making changes, check that your changes pass flake8 and the tests, including testing other Python versions with tox::
78+
79+
$ flake8 netuitive tests
80+
$ python setup.py test
81+
$ tox
82+
83+
To get flake8 and tox, just pip install them into your virtualenv.
84+
85+
6. Commit your changes and push your branch to GitHub::
86+
87+
$ git add .
88+
$ git commit -m "Your detailed description of your changes."
89+
$ git push origin name-of-your-bugfix-or-feature
90+
91+
7. Submit a pull request through the GitHub website.
92+
93+
Pull Request Guidelines
94+
-----------------------
95+
96+
Before you submit a pull request, check that it meets these guidelines:
97+
98+
1. The pull request should include tests.
99+
2. If the pull request adds functionality, the docs should be updated. Put
100+
your new functionality into a function with a docstring, and add the
101+
feature to the list in README.rst.
102+
3. The pull request should work for Python 2.6, 2.7, 3.3, and 3.4, and for PyPy.
103+
104+
Tips
105+
----
106+
107+
To run a subset of tests::
108+
109+
$ python -m unittest tests.test_netuitive

HISTORY.rst

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
.. :changelog:
2+
3+
History
4+
-------
5+
6+
0.0.1 (2015-05-28)
7+
---------------------
8+
9+
* First release on PyPI.

LICENSE

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -199,4 +199,3 @@
199199
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
200200
See the License for the specific language governing permissions and
201201
limitations under the License.
202-

MANIFEST.in

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
include AUTHORS.rst
2+
include CONTRIBUTING.rst
3+
include HISTORY.rst
4+
include LICENSE
5+
include README.rst
6+
7+
recursive-include tests *
8+
recursive-exclude * __pycache__
9+
recursive-exclude * *.py[co]
10+
11+
recursive-include docs *.rst conf.py Makefile make.bat

Makefile

Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
.PHONY: clean-pyc clean-build docs clean
2+
3+
help:
4+
@echo "clean - remove all build, test, coverage and Python artifacts"
5+
@echo "clean-build - remove build artifacts"
6+
@echo "clean-pyc - remove Python file artifacts"
7+
@echo "clean-test - remove test and coverage artifacts"
8+
@echo "lint - check style with flake8"
9+
@echo "test - run tests quickly with the default Python"
10+
@echo "test-all - run tests on every Python version with tox"
11+
@echo "coverage - check code coverage quickly with the default Python"
12+
@echo "docs - generate Sphinx HTML documentation, including API docs"
13+
@echo "release - package and upload a release"
14+
@echo "dist - package"
15+
@echo "install - install the package to the active Python's site-packages"
16+
17+
clean: clean-build clean-pyc clean-test
18+
19+
clean-build:
20+
rm -fr build/
21+
rm -fr dist/
22+
rm -fr .eggs/
23+
find . -name '*.egg-info' -exec rm -fr {} +
24+
find . -name '*.egg' -exec rm -f {} +
25+
26+
clean-pyc:
27+
find . -name '*.pyc' -exec rm -f {} +
28+
find . -name '*.pyo' -exec rm -f {} +
29+
find . -name '*~' -exec rm -f {} +
30+
find . -name '__pycache__' -exec rm -fr {} +
31+
32+
clean-test:
33+
rm -fr .tox/
34+
rm -f .coverage
35+
rm -fr htmlcov/
36+
37+
lint:
38+
flake8 netuitive tests
39+
40+
test:
41+
python setup.py test
42+
43+
test-all:
44+
tox
45+
46+
coverage:
47+
coverage run --source netuitive setup.py test
48+
coverage report -m
49+
coverage html
50+
open htmlcov/index.html
51+
52+
docs:
53+
rm -f docs/netuitive.rst
54+
rm -f docs/modules.rst
55+
sphinx-apidoc -o docs/ netuitive
56+
$(MAKE) -C docs clean
57+
$(MAKE) -C docs html
58+
open docs/_build/html/index.html
59+
60+
release: clean
61+
python setup.py sdist upload
62+
python setup.py bdist_wheel upload
63+
64+
dist: clean
65+
python setup.py sdist
66+
python setup.py bdist_wheel
67+
ls -l dist
68+
69+
install: clean
70+
python setup.py install

README.rst

Lines changed: 51 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
===============================
2+
Netuitive Python Client
3+
===============================
4+
5+
6+
7+
Python Boilerplate contains all the boilerplate you need to create a Python package.
8+
9+
* Free software: Apache License, Version 2.0
10+
* Documentation: https://netuitive.readthedocs.org.
11+
12+
Features
13+
--------
14+
15+
* Create a Netuitive Element with the following data:
16+
* Element Name
17+
* Attributes
18+
* Tags
19+
* Metric Samples
20+
21+
22+
## Usage
23+
24+
```
25+
import netuitive
26+
27+
# Setup the Client
28+
ApiClient = netuitive.Client('<my_api_url>', '<my_api_key>')
29+
30+
# setup the Element
31+
MyElement = netuitive.Element()
32+
33+
# Add an Attribute
34+
MyElement.add_attribute('Language', 'Python')
35+
36+
# Add a Tag
37+
MyElement.add_tag(('Production', 'True')
38+
39+
# Add a Metric Sample
40+
MyElement.add_sample('cpu.idle', 1432832135, 1, host='my_hostname')
41+
42+
# Send the Samples
43+
ApiClient.post(MyElement)
44+
45+
# Remove the samples already sent
46+
MyElement.clear_samples()
47+
```
48+
49+
## Copyright and License
50+
51+
Copyright 2015 Netuitive, Inc. under [the Apache 2.0 license](LICENSE).

0 commit comments

Comments
 (0)