Saravanan666/pypi-org huggingface dataset:
Package: resoto-plugin-cleanup-aws-vpcs
resoto-plugin-cleanup-aws-vpcsAWS VPC Cleanup Plugin for ResotoThis plugin marks all VPC dependencies for cleanup. The VPC must have been previously marked for cleanup by another cleanup plugin.The following resources are currently being marked for cleanupAWS VPC Peering ConnectionsAWS EC2 Network ACLsAWS EC2 Network InterfacesAWS ELBAWS ALBAWS ALB Target GroupsAWS EC2 SubnetsAWS EC2 Security GroupsAWS EC2 Internet GatewaysAWS EC2 NAT GatewaysAWS EC2 Route TablesUsageInreshexecute> config edit resoto.workerand find the following sectionplugin_cleanup_aws_vpcs:
  # Dictionary of key cloud with list of account IDs for which the plugin should be active as value
  config:
    aws:
      - '1234567'
      - '567890'
  # Enable plugin?
  enabled: false
Package: resoto-plugin-cleanup-expired
resoto-plugin-cleanup-expiredResoto plugin for cleanup of expired resourcesThis plugin looks for resources with the tagsexpirationorresoto:expiresand flags them for cleanup if they are expired.Tag formatTagFormatDescriptionresoto:expires2019-09-05T10:40:11+00:00ISO 8601 Timestampexpiration24hA timedelta relative to the resource's creation timeExample of valid units for theexpirationtag:weeks
days
hours
minutesEach of them can be abbreviated down to one letter. E.g.7d,24h,60m, etc. A space in between the numeric and the unit is optional, meaning7dand7 daysare equivalent.UsageInreshexecute> config edit resoto.workerand find the following sectionplugin_cleanup_expired:
  # Enable plugin?
  enabled: false
Package: resoto-plugin-cleanup-untagged
resoto-plugin-cleanup-untaggedCleanup Untagged Plugin for ResotoThis plugin deletes cloud resources that are missing mandatory tags after a certain amount of time has passed since their creation.UsageInreshexecute> config edit resoto.workerand find the following sectionplugin_cleanup_untagged:
  # Configuration for the plugin
  config:
    default:
      age: '2h'
    tags:
      - 'owner'
      - 'expiration'
    kinds:
      - 'aws_ec2_instance'
      - 'aws_ec2_volume'
      - 'aws_vpc'
      - 'aws_cloudformation_stack'
      - 'aws_elb'
      - 'aws_alb'
      - 'aws_alb_target_group'
      - 'aws_eks_cluster'
      - 'aws_eks_nodegroup'
      - 'example_instance'
      - 'example_network'
    accounts:
      aws:
        068564737731:
          name: 'playground'
          age: '7d'
        '575584959047':
          name: 'eng-sre'
      example:
        Example Account:
          name: 'Example Account'
  # Enable plugin?
  enabled: falseConfig section formatThe config section consists of four sub-sections.default,tags,classesandaccounts. Thedefaultsection specifies the defaultagea resource must have before we enforce mandatory tags on it. For instance ifageis set to2hthis means that whatever mechanism creates a resource has two hours to add those mandatory tags.Thetagssection is a list of tag names that MUST exist on every resource class specified inclasses. Theclassessection is a list of resource class names for which tags specified in thetagslist must exist.Theaccountssection contains a dictionary with cloud IDs as keys (e.g.aws) and account IDs for which tags will be enforced as values (e.g.068564737731). Those in turn contain anameand optionally anageoverride.The following age units are valid:weeks
days
hours
minutesEach of them can be abbreviated down to one letter. E.g.7d,24h,60m, etc. A space in between the numeric and the unit is optional, meaning7dand7 daysare equivalent.
Package: resoto-plugin-cleanup-volumes
resoto-plugin-cleanup-volumesVolume cleanup plugin for ResotoThis plugin cleans up storage volumes.UsageInreshexecute> config edit resoto.workerand find the following sectionplugin_cleanup_volumes:
  # Enable plugin?
  enabled: false
  # Minimum age of unused volumes to cleanup
  min_age: '14 days'The default volume age is 14 days. Meaning if a volume is not in use and has not had any read or write IOPS within the last 14 days it will be deleted.Optionally change the age cutoff value using themin_ageoption.Example of valid age units:weeks
days
hours
minutesEach of them can be abbreviated down to one letter. E.g.7d,24h,60m, etc. A space in between the numeric and the unit is optional, meaning7dand7 daysare equivalent.
Package: resoto-plugin-dockerhub
resoto-plugin-dockerhubDocker Hub Collector Plugin for ResotoThis collector plugin is used to collect data from Docker Hub. It is used internally at Some Engineering to create metrics about image downloads.To export the number of image pulls add the following config toresoto.metricsresotometrics:
  [...]
  metrics:
    dockerhub_downloads_total:
      # Metric help text
      help: 'Docker Hub downloads'
      # Aggregation search to run
      search: 'aggregate(/ancestors.cloud.reported.name as cloud, /ancestors.account.reported.name as namespace, id as repository: sum(pull_count) as dockerhub_downloads_total): is(dockerhub_repository)'
      # Type of metric (gauge or counter)
      type: 'counter'LicenseSeeLICENSEfor details.
Package: resoto-plugin-posthog
resoto-plugin-posthogPosthog Collector Plugin for ResotoThis collector plugin is used to collect data from Posthog. It is used internally at Some Engineering to create metrics about resoto installations and usage.To export the number of running installations add the following config toresoto.metricsresotometrics:
  [...]
  metrics:
    running_installations:
      # Metric help text
      help: 'Number of running installations'
      # Aggregation search to run
      search: 'aggregate(/ancestors.cloud.reported.name as cloud: sum(count) as running_installations): is(posthog_event) and name=model.info'
      # Type of metric (gauge or counter)
      type: 'gauge'LicenseSeeLICENSEfor details.
Package: resoto-plugin-protector
resoto-plugin-protectorProtector Plugin for ResotoThis plugin protects important resources from deletion by Resoto.UsageInreshexecute> config edit resoto.workerand find the following sectionplugin_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: falseThe format of theconfigsection is as follows:cloud.id:
  account.id:
    region.id:
      kind:
        - resource.idImplementation detailsEach Resoto resource has an attributed/metadata.protectedwhich takes a boolean value. By default it is set tofalse. Each Resoto resource inherits BaseResource which contains two methods for cleaning up a resource,cleanup()anddelete(). Both those methods will refuse to manipulate a resource once theprotectedattribute has been set totrue. 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.
Package: resoto-plugin-random
resoto-plugin-randomRandom Cloud Collector for ResotoCreates a plausible pseudo-random cloud based on a configurable seed.The base infrastructure stays the same, but the number of instances vary slightly from run to run so that metrics show some more interesting up/down lines.The config valuerandom.seedis the seed Python's random number generator is seeded with.random.sizeis a float multiplier that's applied to every random min/max value causing exponential growth of the cloud. E.g. a value of 2 would create on average twice the number of accounts containing twice the number of networks containing twice the number of instances, with twice the number of volumes each.Given the same seed and size the cloud stays relatively the same plus/minus a couple of instances and their volumes (the jitter). If either seed or size is changed the entire cloud changes.LicenseSeeLICENSEfor details.
Package: resoto-plugin-scarf
Resoto 💜 ScarfScarf Collector Plugin for ResotoThis collector plugin is used to collect data from Scarf. It is used internally at Some Engineering to create metrics about image downloads.To export the number of image pulls add the following config toresoto.metricsresotometrics:
  [...]
  metrics:
    scarf_downloads_total:
      # Metric help text
      help: 'Scarf downloads'
      # Aggregation search to run
      search: 'aggregate(/ancestors.cloud.reported.name as cloud, /ancestors.account.reported.name as organization, name as repository: sum(pull_count) as scarf_downloads_total): is(scarf_package)'
      # Type of metric (gauge or counter)
      type: 'counter'LicenseSeeLICENSEfor details.
Package: resoto-plugin-tagvalidator
resoto-plugin-tagvalidatorTag Validator plugin for ResotoThis plugin validates the contents of expiration tags. With it you can enforce a max. expiration length for certain resources in an account. For instance you could have an org policy that says in our "dev" account compute instances are only allowed to exist for 2 days max. Then this plugin can ensure that the expiration tag on those instances is set to no more than 2 days. If it is set to e.g. 50h it would be corrected down to 48h.UsageInreshexecute> config edit resoto.workerand find the following sectionplugin_tagvalidator:
  # Configuration for the plugin
  # See https://github.com/someengineering/resoto/tree/main/plugins/tagvalidator for syntax details
  config:
    default:
      expiration: '24h'
    kinds:
      - 'aws_ec2_instance'
      - 'aws_vpc'
      - 'aws_cloudformation_stack'
      - 'aws_elb'
      - 'aws_alb'
      - 'aws_alb_target_group'
      - 'aws_eks_cluster'
      - 'aws_eks_nodegroup'
      - 'aws_ec2_nat_gateway'
    accounts:
      aws:
        '123465706934':
          name: 'eng-audit'
        '123479172032':
          name: 'eng-devprod'
        '123453451782':
          name: 'sales-lead-gen'
          expiration: '12h'
        '123415487488':
          name: 'sales-hosted-lead-gen'
          expiration: '8d'
  # Dry run
  dry_run: false
  # Enable plugin?
  enabled: falseStructure of the config sectionThe config contains a default section with the expiration that should be used for all accounts by default. The kinds section contains the list of kinds that these expiration tag rules apply to. The accounts section contain the cloud ids followed by the account ids. Each account id must contain anameand optionally anexpirationthat overwrites the global default.
Package: resotoshell
reshResoto ShellTable of contentsOverviewUsageExamplesBasicsIntermediateAdvancedContactLicenseOverviewreshstarts the resoto shell. It is used to interact withresotocore. It allows you to explore the graph, find resources of interest, mark them for cleanup, fix their tagging, aggregate over their metadata to create metrics and format the output for use in a 3rd party script or system.More information can be found below and inthe docs.Usagereshuses the following commandline arguments:--resotocore-uri RESOTOCORE_URI
                        resotocore URI (default: https://localhost:8900)
  --resotocore-section RESOTOCORE_SECTION
                        All queries are interpreted with this section name. If not set, the server default is used.
  --resotocore-graph RESOTOCORE_GRAPH
                        The name of the graph to use by default. If not set, the server default is used.
  --download-directory DOWNLOAD_DIRECTORY
                        If files are received, they are written to this directory.
  --no-color            Output should be rendered plain without any color escape sequences.
  --stdin               Read from STDIN instead of opening a shell
  --verbose, -v         Verbose logging
  --quiet               Only log errors
  --psk PSK             Pre-shared key
  --ca-cert CA_CERT     Path to custom CA certificate file
  --no-verify-certs     Turn off certificate verificationENV Prefix:RESOTOSHELL_Every CLI arg can also be specified using ENV variables.For instance--resotocore-uri http://foobar.tld:8900would becomeRESOTOSHELL_RESOTOCORE_URI=http://foobar.tld:8900.ExamplesBasicsEnterhelpintoreshto get an overview of all available commandsUsinghelpfollowed by a command will provide more information about that command.IntermediateShow all storage volumes that are in use> search is(volume) and volume_status = in-useShow all storage volumes in use and format the output as CSV> search is(volume) and volume_status = in-use | format {kind},{id},{name},{ctime}Show all storage volumes not in use with a size of more than 10 GB> search is(volume) and volume_status = available and volume_size > 10AdvancedFind volumes in cloud AWS that are in usesearch is(volume) and volume_status = in-use and /ancestors.cloud.reported.name = awsAlternatively instead of filtering for storage volumes of the genericvolumekind we can also be more specificsearch is(aws_ec2_volume) and volume_status = in-useFind unused AWS volumes older than 30 days with no I/O in the past 7 dayssearch is(aws_ec2_volume) and volume_status = available and ctime < -30d and atime < -7d and mtime < -7dContactIf you have any questions feel free tojoin our Discordoropen a GitHub issue.LicenseSeeLICENSEfor details.
Package: resotoui
Resoto UI Python PackageThe Resoto UI as a Python Package.LicenseCopyright 2022 Some Engineering Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Package: resource-allocator
PurposeThe objective of this module is to provide a common API to perform
Resource Allocation (network addresses, disks) using a KeyValue store
like consul, etcd or zookeeper as the persistence backend.Usage examplesBasic usage examples:import allocator

adresses = allocator.AddressManager()
adresses.get_free('private')
adresses.get_status('private', '10.112.254.101')
adresses.set_used('private', '10.112.254.101')
adresses.set_free('private', '10.112.254.101')

disks = allocator.DiskManager()
disks.get_free('node1.local')
disks.get_status('node1.local', '1')
disks.set_used('node1.local', '1')
disks.set_free('node1.local', '1')
Package: resource-api
# Resource APIA framework to:- declaratively define resources and their relationships- handle resource serialization/deserialization to arbitrary data storage (e.g.: MySQL, NoSQL, plain files)- expose HTTP interface- handle authorization for individual resourcesCheck documentation for more detailed information.## Code styleRun [pep8](https://pypi.python.org/pypi/pep8) and [pyflakes](https://pypi.python.org/pypi/pyflakes) in **src** directory## Version policy[Semantic version](http://semver.org/)## Changelog format```VERSION RELEASE-TIMESTAMP=YYYY-MM-DD[Author Name <author@email>]* CHANGE_TYPE=MAJOR|MINOR|PATCH: change description```Example```12.11.3 2014-01-12[John Smith <john.smith@example.com>]* PATCH: refactored the modules* MINOR: added a new class* MAJOR: removed deprecated function```Notes:- It is a good idea to annotate each commit with "1:", "2:" and "3:" message for PATCH|MINOR|MAJOR respectively so thatit is easier to control the version based on the output of `git log` command- There is no need to modify changelog when documentation or travis related files are updated. Only changes of thesource code are important.## Release steps1. Switch to **dev**2. Make sure that pep8 & pyflakes checks and tests pass3. Increment the version in **CHANGES** file according to the types of changes made since the latest release. Addtimestamp to indicate when the version was released.4. Commit the changes5. Switch to **master**6. Merge **dev** into **master**7. Execute `git tag VERSION -m VERSION`8. Push **dev** & **master** branches to upstream9. Push tags to upstream## Pull requestsAlways create your own feature branches from the **dev** branch. Not from **master** one.1. Make sure that all commits have descriptive messages and are up to the point2. pep8 and pyflakes checks are supposed to pass3. All tests are supposed to pass4. If it is a new feature - make sure that new tests are created and they pass5. Add a new set of bullet points to the latest changelog entry according to the specified format6. Create a pull request against the **dev** branch## Links- Travis CI: https://travis-ci.org/F-Secure/resource-api- Read the docs: http://resource-api.readthedocs.org/en/latest/## NoteThe core part of the project development work was done within the Digile’s Data to Intelligenceprogram http://www.datatointelligence.fi/ and supported by Tekes, the Finnish Funding Agency for Innovation.
Package: resource-api-http
# Resource APIA framework to:- declaratively define resources and their relationships- handle resource serialization/deserialization to arbitrary data storage (e.g.: MySQL, NoSQL, plain files)- expose HTTP interface- handle authorization for individual resourcesCheck documentation for more detailed information.## Code styleRun [pep8](https://pypi.python.org/pypi/pep8) and [pyflakes](https://pypi.python.org/pypi/pyflakes) in **src** directory## Version policy[Semantic version](http://semver.org/)## Changelog format```VERSION RELEASE-TIMESTAMP=YYYY-MM-DD[Author Name <author@email>]* CHANGE_TYPE=MAJOR|MINOR|PATCH: change description```Example```12.11.3 2014-01-12[John Smith <john.smith@example.com>]* PATCH: refactored the modules* MINOR: added a new class* MAJOR: removed deprecated function```Notes:- It is a good idea to annotate each commit with "1:", "2:" and "3:" message for PATCH|MINOR|MAJOR respectively so thatit is easier to control the version based on the output of `git log` command- There is no need to modify changelog when documentation or travis related files are updated. Only changes of thesource code are important.## Release steps1. Switch to **dev**2. Make sure that pep8 & pyflakes checks and tests pass3. Increment the version in **CHANGES** file according to the types of changes made since the latest release. Addtimestamp to indicate when the version was released.4. Commit the changes5. Switch to **master**6. Merge **dev** into **master**7. Execute `git tag VERSION -m VERSION`8. Push **dev** & **master** branches to upstream9. Push tags to upstream## Pull requestsAlways create your own feature branches from the **dev** branch. Not from **master** one.1. Make sure that all commits have descriptive messages and are up to the point2. pep8 and pyflakes checks are supposed to pass3. All tests are supposed to pass4. If it is a new feature - make sure that new tests are created and they pass5. Add a new set of bullet points to the latest changelog entry according to the specified format6. Create a pull request against the **dev** branch## Links- Travis CI: https://travis-ci.org/F-Secure/resource-api- Read the docs: http://resource-api.readthedocs.org/en/latest/## NoteThe core part of the project development work was done within the Digile’s Data to Intelligenceprogram http://www.datatointelligence.fi/ and supported by Tekes, the Finnish Funding Agency for Innovation.
Package: resource-api-http-client
# Resource APIA framework to:- declaratively define resources and their relationships- handle resource serialization/deserialization to arbitrary data storage (e.g.: MySQL, NoSQL, plain files)- expose HTTP interface- handle authorization for individual resourcesCheck documentation for more detailed information.## Code styleRun [pep8](https://pypi.python.org/pypi/pep8) and [pyflakes](https://pypi.python.org/pypi/pyflakes) in **src** directory## Version policy[Semantic version](http://semver.org/)## Changelog format```VERSION RELEASE-TIMESTAMP=YYYY-MM-DD[Author Name <author@email>]* CHANGE_TYPE=MAJOR|MINOR|PATCH: change description```Example```12.11.3 2014-01-12[John Smith <john.smith@example.com>]* PATCH: refactored the modules* MINOR: added a new class* MAJOR: removed deprecated function```Notes:- It is a good idea to annotate each commit with "1:", "2:" and "3:" message for PATCH|MINOR|MAJOR respectively so thatit is easier to control the version based on the output of `git log` command- There is no need to modify changelog when documentation or travis related files are updated. Only changes of thesource code are important.## Release steps1. Switch to **dev**2. Make sure that pep8 & pyflakes checks and tests pass3. Increment the version in **CHANGES** file according to the types of changes made since the latest release. Addtimestamp to indicate when the version was released.4. Commit the changes5. Switch to **master**6. Merge **dev** into **master**7. Execute `git tag VERSION -m VERSION`8. Push **dev** & **master** branches to upstream9. Push tags to upstream## Pull requestsAlways create your own feature branches from the **dev** branch. Not from **master** one.1. Make sure that all commits have descriptive messages and are up to the point2. pep8 and pyflakes checks are supposed to pass3. All tests are supposed to pass4. If it is a new feature - make sure that new tests are created and they pass5. Add a new set of bullet points to the latest changelog entry according to the specified format6. Create a pull request against the **dev** branch## Links- Travis CI: https://travis-ci.org/F-Secure/resource-api- Read the docs: http://resource-api.readthedocs.org/en/latest/## NoteThe core part of the project development work was done within the Digile’s Data to Intelligenceprogram http://www.datatointelligence.fi/ and supported by Tekes, the Finnish Funding Agency for Innovation.