Metadata-Version: 2.1
Name: atlaspyapi
Version: 0.1.9
Summary: This atlas python api can generate atlas entities and import them into Atlas instances.
Home-page: https://git.lab.sspcloud.fr/pengfei/atlaspyapi
Author: Pengfei Liu
Author-email: pengfei.liu@insee.fr
License: Apache License 2.0
Description: # Apache Atlas Client in Python
        
        This python client is only compatible with Apache Atlas REST API v2. 
        
        In this repository, we develop a python api to generate atlas entities and import them into atlas instances.
        
        ## Quick start
        
        ### Create a client to connect to an Atlas instance
        ```python
        from atlas_client.client import Atlas
        # login with your token
        hostname = "https://atlas.lab.sspcloud.fr"
        port = 443
        oidc_token = "<your_token>"
        atlas_client = Atlas(hostname, port, oidc_token=oidc_token)
        
        # login with your username and password
        atlas_client = Atlas(hostname, port, username='',password='')
        ```
        ### Search entity and return entity's guid
        ```python
        from atlas_client.entity_search.EntityFinder import EntityFinder
        
        finder = EntityFinder(atlas_client)
        search_result = finder.search_full_text("aws_s3_bucket", "test")
        
        EntityFinder.show_search_results(search_result)
        entity_number = EntityFinder.get_entity_number(search_result)
        print("Find " + str(entity_number) + " result in total")
        
        guid_list = EntityFinder.get_result_entity_guid_list(search_result)
        
        for guid in guid_list:
            print("result:" + guid)
        
        
        ```
        
        ### Atlas entities CRUD
        ```python
        from atlas_client.entity_management.s3.S3BucketManager import S3BucketManager
        
        s3_bucket_manager = S3BucketManager(atlas_client)
        
        # creat s3 bucket in atlas
        name = "test"
        domain = "s3://test.org"
        qualified_name = "s3://test.org/test1"
        description = "test for me"
        s3_bucket_manager.create_entity(name, domain, qualified_name, description)
        # get s3 bucket via guid
        guid = "9642d134-4d0e-467c-8b36-ca73902d4c14"
        e = s3_bucket_manager.get_entity(guid)
        s3_bucket_manager.show_entity_attributes(e)
        e_attributes = s3_bucket_manager.get_entity_attributes(e)
        e_attributes_key_list = s3_bucket_manager.get_s3_attributes_key_list(e)
        print(e_attributes_key_list)
        print(e_attributes['description'])
        
        # update s3 bucket attributes
        s3_bucket_manager.update_entity(guid, 'description', 'update description from api')
        
        # delete s3 bucket
        s3_bucket_manager.delete_entity(guid)
        
        ``` 
        
        
        ### Generate atlas entity json file
        If you want to use the Atlas rest api by yourself, we also provide you the support of json file generation
        ```python
        from atlas_client.entity_source_generation.S3BucketEntityGenerator import S3BucketEntityGenerator
        name = "test"
        domain = "s3://test.org"
        qualified_name = "s3://test.org/test1"
        description = "test for me"
        
        s3_bucket_json_source = S3BucketEntityGenerator.generate_s3_bucket_json_source(name, domain,qualified_name,description
                                                                                       , creator_id="toto")
        print(s3_bucket_json_source)
        
        ```
        
        ## Package organization
        
        ### entity_source_generation
        
        In the entity_source_generation folder, you can find various templates and generators for generating atlas entities.
        
        ### entity_search
        
        In the entity_search folder, you can find EntityFinder which help you to find entity in an Atlas instance
        
        ### entity_management
        
        In the entity_management folder, you can find various rest client to upload entities into atlas
        
        ### docs
        
        In the docs folder, you can find helper function which shows which entity type and attributes are supported by this api
        
        
        ## Prerequisites
        
        This tool only requires python 3.7 or above
        
        ## Supported OS
        
        Windows XP/7/8/10
        
        Linux  
        
        MacOS
        
        
        ## Authors
        
        * **Pengfei Liu** 
        
        
        ## License
        
        This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details
        
        ## Acknowledgement
        
        This package was created by using [verdan/pyatlasclient](<https://github.com/verdan/pyatlasclient>) project
Platform: UNKNOWN
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Operating System :: OS Independent
Requires-Python: >=3.7
Description-Content-Type: text/markdown
