alertlogic-sdk-definitions


Namealertlogic-sdk-definitions JSON
Version 0.1.79 PyPI version JSON
download
home_pagehttps://github.com/alertlogic/alertlogic-sdk-definitions
SummaryThe Alert Logic API definitions.
upload_time2022-08-03 12:09:14
maintainer
docs_urlNone
authorAlert Logic Inc.
requires_python>=3.6
licenseMIT license
keywords alcli almdr alsdkdefs alertlogic alertlogic-cli
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Alert Logic APIs definitions

[![Build Status](https://travis-ci.com/alertlogic/alertlogic-sdk-definitions.svg?branch=master)](https://travis-ci.com/alertlogic/alertlogic-sdk-definitions)
[![PyPI version](https://badge.fury.io/py/alertlogic-sdk-definitions.svg)](https://badge.fury.io/py/alertlogic-sdk-definitions)

Repository contains static definitions of Alert Logic APIs, used for documentation generation, 
[SDK](https://github.com/alertlogic/alertlogic-sdk-python) and [CLI](https://github.com/alertlogic/alcli).

### Usage

#### Install 
`pip install alertlogic-sdk-definitions`

For the one who doesn't require python code, GitHub releases are produced 
containing an archive with OpenAPI definitions only, see
[here](https://github.com/alertlogic/alertlogic-sdk-definitions/releases)

#### Test
`python -m unittest`

#### Use

List available service definitions:
```
>>> import alsdkdefs
>>> alsdkdefs.list_services()
OrderedDict([('aecontent', ServiceDefinition(aecontent)), ('aefr', ServiceDefinition(aefr)), ('aepublish', ServiceDefinition(aepublish)), ('aerta', ServiceDefinition(aerta)), ('aetag', ServiceDefinition(aetag)), ('aetuner', ServiceDefinition(aetuner)), ('aims', ServiceDefinition(aims)), ('assets_query', ServiceDefinition(assets_query)), ('assets_write', ServiceDefinition(assets_write)), ('connectors', ServiceDefinition(connectors)), ('credentials', ServiceDefinition(credentials)), ('deployments', ServiceDefinition(deployments)), ('herald', ServiceDefinition(herald)), ('ingest', ServiceDefinition(ingest)), ('iris', ServiceDefinition(iris)), ('kalm', ServiceDefinition(kalm)), ('notify', ServiceDefinition(notify)), ('otis', ServiceDefinition(otis)), ('policies', ServiceDefinition(policies)), ('remediations', ServiceDefinition(remediations)), ('responder', ServiceDefinition(responder)), ('search', ServiceDefinition(search)), ('subscriptions', ServiceDefinition(subscriptions)), ('themis', ServiceDefinition(themis))])
```

Get path to a service definitions paths:
```
>>> import alsdkdefs
>>> alsdkdefs.get_service_defs("aerta")
['/usr/local/lib/python3.8/site-packages/alsdkdefs/apis/aerta/aerta.v1.yaml']
```

Get normalised service spec of a service(all refs resolved, 
                                 path parameters moved to the methods, 
                                 allOfs are merged if possible):
```
>>> import alsdkdefs
>>> alsdkdefs.load_service_spec("aerta")
```

Validate service spec: 
```
>>> import alsdkdefs
>>> service_spec = alsdkdefs.load_service_spec("aerta")
>>> alsdkdefs.validate(service_spec)
```

#### Quick validation of a definition

While YAML definition is developed apart from the current package and current repo,
it is required to validate it prior to push, please add this to your `Makefile` 
in order to achieve quick validation:

`curl -s https://raw.githubusercontent.com/alertlogic/alertlogic-sdk-definitions/master/scripts/validate_my_definition.sh | bash -s <path/to/definitions/directory>`

If no directory is specified, by default `doc/openapi/` directory will be used, if such behaviour is desired, use following line instead:

`curl -s https://raw.githubusercontent.com/alertlogic/alertlogic-sdk-definitions/master/scripts/validate_my_definition.sh | bash `

It is recommended to invoke it via curl, since validation of the definitions might be extended with time.
Script requires `python3` to be available in the system.

Validation checks:
* YAML of a definition is valid
* Definition passes OpenAPI 3 schema validation

### Development

Please submit a PR. Please note that API definitions are updated automatically and any changes to it will be overwritten, see:
[automatic update process](doc/automatic_releases.md)



            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/alertlogic/alertlogic-sdk-definitions",
    "name": "alertlogic-sdk-definitions",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.6",
    "maintainer_email": "",
    "keywords": "alcli,almdr,alsdkdefs,alertlogic,alertlogic-cli",
    "author": "Alert Logic Inc.",
    "author_email": "devsupport@alertlogic.com",
    "download_url": "https://files.pythonhosted.org/packages/cd/c7/e7d6c72ee1b395f8c1e7a7c876fd98ade5d87d0a2f0ebde658e3d5830b45/alertlogic-sdk-definitions-0.1.79.tar.gz",
    "platform": "any",
    "description": "# Alert Logic APIs definitions\n\n[![Build Status](https://travis-ci.com/alertlogic/alertlogic-sdk-definitions.svg?branch=master)](https://travis-ci.com/alertlogic/alertlogic-sdk-definitions)\n[![PyPI version](https://badge.fury.io/py/alertlogic-sdk-definitions.svg)](https://badge.fury.io/py/alertlogic-sdk-definitions)\n\nRepository contains static definitions of Alert Logic APIs, used for documentation generation, \n[SDK](https://github.com/alertlogic/alertlogic-sdk-python) and [CLI](https://github.com/alertlogic/alcli).\n\n### Usage\n\n#### Install \n`pip install alertlogic-sdk-definitions`\n\nFor the one who doesn't require python code, GitHub releases are produced \ncontaining an archive with OpenAPI definitions only, see\n[here](https://github.com/alertlogic/alertlogic-sdk-definitions/releases)\n\n#### Test\n`python -m unittest`\n\n#### Use\n\nList available service definitions:\n```\n>>> import alsdkdefs\n>>> alsdkdefs.list_services()\nOrderedDict([('aecontent', ServiceDefinition(aecontent)), ('aefr', ServiceDefinition(aefr)), ('aepublish', ServiceDefinition(aepublish)), ('aerta', ServiceDefinition(aerta)), ('aetag', ServiceDefinition(aetag)), ('aetuner', ServiceDefinition(aetuner)), ('aims', ServiceDefinition(aims)), ('assets_query', ServiceDefinition(assets_query)), ('assets_write', ServiceDefinition(assets_write)), ('connectors', ServiceDefinition(connectors)), ('credentials', ServiceDefinition(credentials)), ('deployments', ServiceDefinition(deployments)), ('herald', ServiceDefinition(herald)), ('ingest', ServiceDefinition(ingest)), ('iris', ServiceDefinition(iris)), ('kalm', ServiceDefinition(kalm)), ('notify', ServiceDefinition(notify)), ('otis', ServiceDefinition(otis)), ('policies', ServiceDefinition(policies)), ('remediations', ServiceDefinition(remediations)), ('responder', ServiceDefinition(responder)), ('search', ServiceDefinition(search)), ('subscriptions', ServiceDefinition(subscriptions)), ('themis', ServiceDefinition(themis))])\n```\n\nGet path to a service definitions paths:\n```\n>>> import alsdkdefs\n>>> alsdkdefs.get_service_defs(\"aerta\")\n['/usr/local/lib/python3.8/site-packages/alsdkdefs/apis/aerta/aerta.v1.yaml']\n```\n\nGet normalised service spec of a service(all refs resolved, \n                                 path parameters moved to the methods, \n                                 allOfs are merged if possible):\n```\n>>> import alsdkdefs\n>>> alsdkdefs.load_service_spec(\"aerta\")\n```\n\nValidate service spec: \n```\n>>> import alsdkdefs\n>>> service_spec = alsdkdefs.load_service_spec(\"aerta\")\n>>> alsdkdefs.validate(service_spec)\n```\n\n#### Quick validation of a definition\n\nWhile YAML definition is developed apart from the current package and current repo,\nit is required to validate it prior to push, please add this to your `Makefile` \nin order to achieve quick validation:\n\n`curl -s https://raw.githubusercontent.com/alertlogic/alertlogic-sdk-definitions/master/scripts/validate_my_definition.sh | bash -s <path/to/definitions/directory>`\n\nIf no directory is specified, by default `doc/openapi/` directory will be used, if such behaviour is desired, use following line instead:\n\n`curl -s https://raw.githubusercontent.com/alertlogic/alertlogic-sdk-definitions/master/scripts/validate_my_definition.sh | bash `\n\nIt is recommended to invoke it via curl, since validation of the definitions might be extended with time.\nScript requires `python3` to be available in the system.\n\nValidation checks:\n* YAML of a definition is valid\n* Definition passes OpenAPI 3 schema validation\n\n### Development\n\nPlease submit a PR. Please note that API definitions are updated automatically and any changes to it will be overwritten, see:\n[automatic update process](doc/automatic_releases.md)\n\n\n",
    "bugtrack_url": null,
    "license": "MIT license",
    "summary": "The Alert Logic API definitions.",
    "version": "0.1.79",
    "split_keywords": [
        "alcli",
        "almdr",
        "alsdkdefs",
        "alertlogic",
        "alertlogic-cli"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "md5": "98d98c86e208cd1d33e4ef9c7ef2e9b1",
                "sha256": "66362589182e60748cd67b85fb2852f2ee27135c7f3ecd3dc2d1ec2f0a28e98d"
            },
            "downloads": -1,
            "filename": "alertlogic_sdk_definitions-0.1.79-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "98d98c86e208cd1d33e4ef9c7ef2e9b1",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.6",
            "size": 866902,
            "upload_time": "2022-08-03T12:09:12",
            "upload_time_iso_8601": "2022-08-03T12:09:12.475366Z",
            "url": "https://files.pythonhosted.org/packages/bf/97/3424b2aeee2adb52d58d861964999f240562b8764f587a6908b70883ee3f/alertlogic_sdk_definitions-0.1.79-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "a96ee4c3140ffdeeb7bf0d38ea3c3c4f",
                "sha256": "380908641a78a8d66a39569e94759dcd255b797a9c297dbe3b686de2046ab3d0"
            },
            "downloads": -1,
            "filename": "alertlogic-sdk-definitions-0.1.79.tar.gz",
            "has_sig": false,
            "md5_digest": "a96ee4c3140ffdeeb7bf0d38ea3c3c4f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.6",
            "size": 885998,
            "upload_time": "2022-08-03T12:09:14",
            "upload_time_iso_8601": "2022-08-03T12:09:14.383956Z",
            "url": "https://files.pythonhosted.org/packages/cd/c7/e7d6c72ee1b395f8c1e7a7c876fd98ade5d87d0a2f0ebde658e3d5830b45/alertlogic-sdk-definitions-0.1.79.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2022-08-03 12:09:14",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "github_user": "alertlogic",
    "github_project": "alertlogic-sdk-definitions",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "tox": true,
    "lcname": "alertlogic-sdk-definitions"
}
        
Elapsed time: 0.42708s