resoto-plugin-protector


Nameresoto-plugin-protector JSON
Version 3.6.4 PyPI version JSON
download
home_page
SummaryResoto Protector Plugin
upload_time2023-07-24 18:31:57
maintainer
docs_urlNone
authorSome Engineering Inc.
requires_python>=3.9
license
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # resoto-plugin-protector
Protector Plugin for Resoto

This plugin protects important resources from deletion by Resoto.

## Usage

In `resh` execute

```
> config edit resoto.worker
```

and find the following section

```
plugin_protector:
  # Configuration for the plugin
  # See https://github.com/someengineering/resoto/tree/main/plugins/protector for syntax details
  config:
    aws:
      '110465657741':
        us-east-1:
          aws_ec2_instance:
            - 'i-0fcbe8974615bfd37'
  # Enable plugin?
  enabled: false
```

The format of the `config` section is as follows:

```
cloud.id:
  account.id:
    region.id:
      kind:
        - resource.id
```

### Implementation details

Each Resoto resource has an attributed `/metadata.protected` which takes a boolean value. By default it is set to `false`. Each Resoto resource inherits BaseResource which contains two methods for cleaning up a resource, `cleanup()` and `delete()`. Both those methods will refuse to manipulate a resource once the `protected` attribute has been set to `true`. Meaning if a resource is marked as protected but has also been flagged for cleanup the cleanup will fail because protected resources cannot be deleted.

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "resoto-plugin-protector",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.9",
    "maintainer_email": "",
    "keywords": "",
    "author": "Some Engineering Inc.",
    "author_email": "",
    "download_url": "https://files.pythonhosted.org/packages/83/2c/9cdc7d92ff72bb65592151d292e26f5377cce977239ff3f9e35afe4d6ae9/resoto-plugin-protector-3.6.4.tar.gz",
    "platform": null,
    "description": "# resoto-plugin-protector\nProtector Plugin for Resoto\n\nThis plugin protects important resources from deletion by Resoto.\n\n## Usage\n\nIn `resh` execute\n\n```\n> config edit resoto.worker\n```\n\nand find the following section\n\n```\nplugin_protector:\n  # Configuration for the plugin\n  # See https://github.com/someengineering/resoto/tree/main/plugins/protector for syntax details\n  config:\n    aws:\n      '110465657741':\n        us-east-1:\n          aws_ec2_instance:\n            - 'i-0fcbe8974615bfd37'\n  # Enable plugin?\n  enabled: false\n```\n\nThe format of the `config` section is as follows:\n\n```\ncloud.id:\n  account.id:\n    region.id:\n      kind:\n        - resource.id\n```\n\n### Implementation details\n\nEach Resoto resource has an attributed `/metadata.protected` which takes a boolean value. By default it is set to `false`. Each Resoto resource inherits BaseResource which contains two methods for cleaning up a resource, `cleanup()` and `delete()`. Both those methods will refuse to manipulate a resource once the `protected` attribute has been set to `true`. Meaning if a resource is marked as protected but has also been flagged for cleanup the cleanup will fail because protected resources cannot be deleted.\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "Resoto Protector Plugin",
    "version": "3.6.4",
    "project_urls": {
        "Documentation": "https://resoto.com",
        "Source": "https://github.com/someengineering/resoto/tree/main/plugins/protector"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "57bf49af631ce2cc6433791777a299f66169ce317749944d780922d6e1bdfc32",
                "md5": "09f11b536b4c83300fe9060bac684566",
                "sha256": "e131f674e281ac92ee8b982da468ac0ab8ebe787c2879063c1886fb8ffa718f2"
            },
            "downloads": -1,
            "filename": "resoto_plugin_protector-3.6.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "09f11b536b4c83300fe9060bac684566",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.9",
            "size": 4064,
            "upload_time": "2023-07-24T18:31:56",
            "upload_time_iso_8601": "2023-07-24T18:31:56.426198Z",
            "url": "https://files.pythonhosted.org/packages/57/bf/49af631ce2cc6433791777a299f66169ce317749944d780922d6e1bdfc32/resoto_plugin_protector-3.6.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "832c9cdc7d92ff72bb65592151d292e26f5377cce977239ff3f9e35afe4d6ae9",
                "md5": "27247d7244ad640218a030dfcc6701d8",
                "sha256": "4c24d4e9db3ab59717f31d736b846799fae194f817f567139271b9b3f5e3396a"
            },
            "downloads": -1,
            "filename": "resoto-plugin-protector-3.6.4.tar.gz",
            "has_sig": false,
            "md5_digest": "27247d7244ad640218a030dfcc6701d8",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.9",
            "size": 3796,
            "upload_time": "2023-07-24T18:31:57",
            "upload_time_iso_8601": "2023-07-24T18:31:57.263110Z",
            "url": "https://files.pythonhosted.org/packages/83/2c/9cdc7d92ff72bb65592151d292e26f5377cce977239ff3f9e35afe4d6ae9/resoto-plugin-protector-3.6.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-07-24 18:31:57",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "someengineering",
    "github_project": "resoto",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [],
    "lcname": "resoto-plugin-protector"
}
        
Elapsed time: 0.40013s