linode-api4 5.47.0__tar.gz → 5.49.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {linode_api4-5.47.0/linode_api4.egg-info → linode_api4-5.49.0}/PKG-INFO +27 -27
- {linode_api4-5.47.0 → linode_api4-5.49.0}/README.rst +4 -7
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/linode.py +8 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/monitor.py +16 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/nodebalancer.py +21 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/linode.py +71 -2
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/monitor.py +18 -4
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/nodebalancer.py +17 -2
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/region.py +1 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/version.py +1 -1
- {linode_api4-5.47.0 → linode_api4-5.49.0/linode_api4.egg-info}/PKG-INFO +27 -27
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4.egg-info/SOURCES.txt +2 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4.egg-info/requires.txt +22 -14
- {linode_api4-5.47.0 → linode_api4-5.49.0}/pyproject.toml +18 -12
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances.json +11 -3
- linode_api4-5.49.0/test/fixtures/linode_instances_123_clone.json +45 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_123_nodebalancers.json +3 -0
- linode_api4-5.49.0/test/fixtures/monitor_streams_quotas.json +21 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/nodebalancers.json +8 -2
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/nodebalancers_123456.json +5 -2
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/conftest.py +143 -34
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/filters/fixtures.py +6 -1
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/linode_client/test_linode_client.py +19 -6
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/account/test_account.py +6 -1
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/firewall/test_firewall.py +6 -2
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/image/test_image.py +2 -2
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/linode/test_linode.py +162 -17
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/lke/test_lke.py +13 -5
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/lock/test_lock.py +6 -2
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/monitor/test_monitor_logs.py +22 -2
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/networking/test_networking.py +3 -2
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/nodebalancer/test_nodebalancer.py +14 -1
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/placement/test_placement.py +2 -1
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/sharegroups/test_sharegroups.py +6 -1
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/volume/test_blockstorage.py +11 -2
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/volume/test_volume.py +2 -2
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/vpc/test_vpc.py +2 -1
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/linode_client_test.py +94 -14
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/linode_test.py +55 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/monitor_test.py +36 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/nodebalancers_test.py +86 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/LICENSE +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/MANIFEST.in +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/examples/install-on-linode/app.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/examples/install-on-linode/make_stackscript.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/__init__.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/common.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/errors.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/__init__.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/account.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/beta.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/database.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/domain.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/group.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/image.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/image_share_group.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/lke.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/lke_tier.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/lock.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/longview.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/maintenance.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/monitor_api.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/networking.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/object_storage.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/placement.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/polling.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/profile.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/region.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/support.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/tag.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/volume.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/groups/vpc.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/linode_client.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/login_client.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/__init__.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/account.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/base.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/beta.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/database.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/dbase.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/domain.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/filtering.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/image.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/image_share_group.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/linode_interfaces.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/lke.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/lock.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/longview.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/monitor_api.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/networking.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/object_storage.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/placement.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/profile.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/serializable.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/support.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/tag.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/volume.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/objects/vpc.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/paginated_list.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/polling.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4/util.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4.egg-info/dependency_links.txt +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/linode_api4.egg-info/top_level.txt +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/setup.cfg +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/setup.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/__init__.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_availability.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_availability_us-east.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_betas.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_betas_cool.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_child-accounts.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_child-accounts_123456.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_child-accounts_123456_token.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_events_123.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_invoices.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_invoices_123.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_invoices_123456_items.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_logins.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_logins_123.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_maintenance.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_notifications.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_oauth-clients_2737bf16b39ab5d7b4a1.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_payment-method_123.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_payment-methods.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_payments.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_promo-codes.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_service-transfers.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_service-transfers_12345.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_settings.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_transfer.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/account_users_test-user.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/betas.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/betas_active.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/databases_engines.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/databases_instances.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/databases_mysql_config.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/databases_mysql_instances.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/databases_mysql_instances_123_credentials.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/databases_mysql_instances_123_credentials_reset.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/databases_mysql_instances_123_patch.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/databases_mysql_instances_123_resume.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/databases_mysql_instances_123_ssl.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/databases_mysql_instances_123_suspend.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/databases_postgresql_config.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/databases_postgresql_instances.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/databases_postgresql_instances_123_credentials.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/databases_postgresql_instances_123_credentials_reset.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/databases_postgresql_instances_123_patch.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/databases_postgresql_instances_123_resume.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/databases_postgresql_instances_123_ssl.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/databases_postgresql_instances_123_suspend.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/databases_types.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/domains.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/domains_12345_clone.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/domains_12345_records.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/domains_12345_zone-file.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/domains_import.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/images.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/images_private_1234_sharegroups.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/images_private_123_regions.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/images_private_1337.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/images_sharegroups.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/images_sharegroups_1234.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/images_sharegroups_1234_images.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/images_sharegroups_1234_images_shared_1.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/images_sharegroups_1234_members.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/images_sharegroups_1234_members_abc123.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/images_sharegroups_tokens.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/images_sharegroups_tokens_abc123.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/images_sharegroups_tokens_abc123_sharegroup.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/images_sharegroups_tokens_abc123_sharegroup_images.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/images_upload.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_123_backups.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_123_configs.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_123_configs_456789.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_123_configs_456789_interfaces.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_123_configs_456789_interfaces_123.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_123_configs_456789_interfaces_123_put.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_123_configs_456789_interfaces_321.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_123_configs_456789_interfaces_456.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_123_disks.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_123_disks_12345_clone.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_123_firewalls.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_123_ips.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_123_transfer.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_123_transfer_2023_4.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_123_volumes.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_124.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_124_interfaces.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_124_interfaces_123.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_124_interfaces_123_firewalls.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_124_interfaces_456.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_124_interfaces_789.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_124_interfaces_999.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_124_interfaces_settings.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_instances_124_upgrade-interfaces.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_stackscripts_10079.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_types.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/linode_types_g6-nanode-1.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/lke_clusters.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/lke_clusters_18881.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/lke_clusters_18881_control__plane__acl.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/lke_clusters_18881_dashboard.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/lke_clusters_18881_nodes_123456.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/lke_clusters_18881_pools_456.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/lke_clusters_18882.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/lke_clusters_18882_pools_789.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/lke_tiers_standard_versions.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/lke_types.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/lke_versions.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/locks.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/locks_1.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/longview_clients.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/longview_plan.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/longview_subscriptions.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/maintenance_policies.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/mongodb.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_alert-channels.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_alert-definitions.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_dashboards.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_dashboards_1.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_services.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_services_dbaas.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_services_dbaas_alert-definitions.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_services_dbaas_alert-definitions_12345.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_services_dbaas_alert-definitions_12345_clone.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_services_dbaas_alert-definitions_12345_entities.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_services_dbaas_dashboards.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_services_dbaas_metric-definitions.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_services_dbaas_metrics.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_services_dbaas_token.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_services_linode_token.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_streams.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_streams_1_history.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_streams_2.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_streams_3.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_streams_destinations.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_streams_destinations_1_history.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/monitor_streams_destinations_2.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/network-transfer_prices.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/networking_firewalls.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/networking_firewalls_123.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/networking_firewalls_123_devices.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/networking_firewalls_123_devices_123.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/networking_firewalls_123_devices_456.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/networking_firewalls_123_history.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/networking_firewalls_123_history_rules_2.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/networking_firewalls_123_rules.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/networking_firewalls_settings.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/networking_firewalls_templates.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/networking_firewalls_templates_public.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/networking_firewalls_templates_vpc.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/networking_ips_127.0.0.1.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/networking_ipv6_pools.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/networking_ipv6_ranges.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/networking_ipv6_ranges_2600%3A3c01%3A%3A.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/networking_reserved_ips.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/networking_reserved_ips_types.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/networking_vlans.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/nodebalancers_123456_configs.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/nodebalancers_123456_configs_65432_nodes.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/nodebalancers_12345_configs_4567_rebuild.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/nodebalancers_12345_firewalls.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/nodebalancers_12345_stats.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/nodebalancers_types.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/object-storage_buckets.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/object-storage_buckets_us-east-1.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/object-storage_buckets_us-east-1_example-bucket.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/object-storage_buckets_us-east-1_example-bucket_object-acl.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/object-storage_buckets_us-east-1_example-bucket_object-list.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/object-storage_buckets_us-east-1_example-bucket_object-url.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/object-storage_buckets_us-east-1_example-bucket_ssl.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/object-storage_buckets_us-east_example-bucket_access.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/object-storage_clusters.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/object-storage_global-quotas.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/object-storage_global-quotas_obj-access-keys-per-account.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/object-storage_global-quotas_obj-access-keys-per-account_usage.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/object-storage_keys.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/object-storage_quotas.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/object-storage_quotas_obj-objects-us-ord-1.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/object-storage_quotas_obj-objects-us-ord-1_usage.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/object-storage_transfer.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/object-storage_types.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/placement_groups.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/placement_groups_123.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/profile.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/profile_device_123.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/profile_devices.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/profile_logins.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/profile_logins_123.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/profile_preferences.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/profile_security-questions.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/profile_sshkeys.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/regions.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/regions_availability.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/regions_us-east_availability.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/regions_us-east_vpc-availability.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/regions_vpc-availability.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/support_tickets_123.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/tags.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/tags_nothing.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/tags_something.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/testmappedobj1.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/volumes.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/volumes_types.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/vpcs.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/vpcs_123456.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/vpcs_123456_ips.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/vpcs_123456_subnets.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/vpcs_123456_subnets_789.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/vpcs_default-ranges.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/fixtures/vpcs_ips.json +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/__init__.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/filters/model_filters_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/helpers.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/linode_client/__init__.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/linode_client/test_errors.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/linode_client/test_retry.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/login_client/test_login_client.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/__init__.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/database/helpers.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/database/test_database.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/database/test_database_engine_config.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/domain/test_domain.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/firewall/test_firewall_templates.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/linode/interfaces/test_interfaces.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/lock/__init__.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/longview/test_longview.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/maintenance/test_maintenance.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/monitor/test_monitor.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/monitor_api/test_monitor_api.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/object_storage/test_obj.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/object_storage/test_obj_quotas.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/profile/test_profile.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/region/test_region.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/integration/models/tag/test_tag.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/__init__.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/base.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/errors_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/fixtures.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/groups/__init__.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/groups/database_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/groups/image_share_group_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/groups/image_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/groups/linode_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/groups/lke_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/groups/lke_tier_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/groups/lock_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/groups/monitor_api_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/groups/networking_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/groups/object_storage_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/groups/placement_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/groups/polling_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/groups/region_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/groups/vpc_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/login_client_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/account_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/base_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/beta_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/database_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/domain_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/firewall_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/image_share_group_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/image_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/linode_interface_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/lke_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/lock_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/longview_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/mapped_object_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/networking_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/object_storage_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/placement_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/profile_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/property_alias_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/region_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/serializable_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/support_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/tag_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/volume_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/objects/vpc_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/paginated_list_test.py +0 -0
- {linode_api4-5.47.0 → linode_api4-5.49.0}/test/unit/util_test.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: linode_api4
|
|
3
|
-
Version: 5.
|
|
3
|
+
Version: 5.49.0
|
|
4
4
|
Summary: The official Python SDK for Linode API v4
|
|
5
5
|
Author-email: Linode <devs@linode.com>
|
|
6
6
|
License: BSD-3-Clause
|
|
@@ -25,29 +25,32 @@ License-File: LICENSE
|
|
|
25
25
|
Requires-Dist: requests
|
|
26
26
|
Requires-Dist: polling
|
|
27
27
|
Requires-Dist: deprecated
|
|
28
|
-
Provides-Extra: test
|
|
29
|
-
Requires-Dist:
|
|
30
|
-
|
|
31
|
-
Requires-Dist:
|
|
32
|
-
|
|
33
|
-
Requires-Dist:
|
|
34
|
-
Requires-Dist:
|
|
35
|
-
|
|
36
|
-
Requires-Dist:
|
|
37
|
-
Requires-Dist:
|
|
38
|
-
|
|
39
|
-
Requires-Dist:
|
|
40
|
-
Requires-Dist:
|
|
41
|
-
Requires-Dist:
|
|
42
|
-
Requires-Dist:
|
|
43
|
-
Requires-Dist:
|
|
44
|
-
Requires-Dist: build>=0.10.0; extra == "
|
|
45
|
-
Requires-Dist: twine>=4.0.2; extra == "dev"
|
|
46
|
-
Requires-Dist: pytest-rerunfailures; extra == "dev"
|
|
28
|
+
Provides-Extra: test-shared
|
|
29
|
+
Requires-Dist: pytest>=7.3.1; extra == "test-shared"
|
|
30
|
+
Requires-Dist: httpretty>=1.1.4; extra == "test-shared"
|
|
31
|
+
Requires-Dist: pytest-rerunfailures; extra == "test-shared"
|
|
32
|
+
Provides-Extra: unit-test
|
|
33
|
+
Requires-Dist: linode_api4[test-shared]; extra == "unit-test"
|
|
34
|
+
Requires-Dist: mock>=5.0.0; extra == "unit-test"
|
|
35
|
+
Provides-Extra: int-test
|
|
36
|
+
Requires-Dist: linode_api4[test-shared]; extra == "int-test"
|
|
37
|
+
Requires-Dist: cryptography; extra == "int-test"
|
|
38
|
+
Provides-Extra: lint
|
|
39
|
+
Requires-Dist: black>=23.1.0; extra == "lint"
|
|
40
|
+
Requires-Dist: isort>=5.12.0; extra == "lint"
|
|
41
|
+
Requires-Dist: autoflake>=2.0.1; extra == "lint"
|
|
42
|
+
Requires-Dist: pylint; extra == "lint"
|
|
43
|
+
Requires-Dist: twine>=4.0.2; extra == "lint"
|
|
44
|
+
Requires-Dist: build>=0.10.0; extra == "lint"
|
|
47
45
|
Provides-Extra: doc
|
|
48
46
|
Requires-Dist: Sphinx>=6.0.0; extra == "doc"
|
|
49
47
|
Requires-Dist: sphinx-autobuild>=2021.3.14; extra == "doc"
|
|
50
48
|
Requires-Dist: sphinxcontrib-fulltoc>=1.2.0; extra == "doc"
|
|
49
|
+
Provides-Extra: dev
|
|
50
|
+
Requires-Dist: linode_api4[unit-test]; extra == "dev"
|
|
51
|
+
Requires-Dist: linode_api4[int-test]; extra == "dev"
|
|
52
|
+
Requires-Dist: linode_api4[lint]; extra == "dev"
|
|
53
|
+
Requires-Dist: linode_api4[doc]; extra == "dev"
|
|
51
54
|
Dynamic: license-file
|
|
52
55
|
|
|
53
56
|
linode_api4
|
|
@@ -154,14 +157,13 @@ Tests
|
|
|
154
157
|
-----
|
|
155
158
|
|
|
156
159
|
Tests live in the ``test`` directory. When invoking tests, make sure you are
|
|
157
|
-
in the root directory of this project.
|
|
158
|
-
|
|
160
|
+
in the root directory of this project. Install unit-test dependencies and run
|
|
161
|
+
the mocked unit suite with:
|
|
159
162
|
|
|
160
163
|
.. code-block:: shell
|
|
161
164
|
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
Running tox also runs pylint and coverage reports.
|
|
165
|
+
python3 -m pip install -e ".[unit-test]"
|
|
166
|
+
make test-unit
|
|
165
167
|
|
|
166
168
|
The test suite uses fixtures stored as JSON in ``test/fixtures``. These files
|
|
167
169
|
contain sanitized JSON responses from the API - the file name is the URL called
|
|
@@ -183,8 +185,6 @@ from the api base url that should be returned, for example::
|
|
|
183
185
|
linode = self.client.linode.instance_create('g6-standard-2', 'us-east')
|
|
184
186
|
self.assertEqual(linode.id, 123) # passes
|
|
185
187
|
|
|
186
|
-
.. _tox: http://tox.readthedocs.io
|
|
187
|
-
|
|
188
188
|
|
|
189
189
|
Integration Tests
|
|
190
190
|
-----------------
|
|
@@ -102,14 +102,13 @@ Tests
|
|
|
102
102
|
-----
|
|
103
103
|
|
|
104
104
|
Tests live in the ``test`` directory. When invoking tests, make sure you are
|
|
105
|
-
in the root directory of this project.
|
|
106
|
-
|
|
105
|
+
in the root directory of this project. Install unit-test dependencies and run
|
|
106
|
+
the mocked unit suite with:
|
|
107
107
|
|
|
108
108
|
.. code-block:: shell
|
|
109
109
|
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
Running tox also runs pylint and coverage reports.
|
|
110
|
+
python3 -m pip install -e ".[unit-test]"
|
|
111
|
+
make test-unit
|
|
113
112
|
|
|
114
113
|
The test suite uses fixtures stored as JSON in ``test/fixtures``. These files
|
|
115
114
|
contain sanitized JSON responses from the API - the file name is the URL called
|
|
@@ -131,8 +130,6 @@ from the api base url that should be returned, for example::
|
|
|
131
130
|
linode = self.client.linode.instance_create('g6-standard-2', 'us-east')
|
|
132
131
|
self.assertEqual(linode.id, 123) # passes
|
|
133
132
|
|
|
134
|
-
.. _tox: http://tox.readthedocs.io
|
|
135
|
-
|
|
136
133
|
|
|
137
134
|
Integration Tests
|
|
138
135
|
-----------------
|
|
@@ -18,6 +18,7 @@ from linode_api4.objects.base import _flatten_request_body_recursive
|
|
|
18
18
|
from linode_api4.objects.filtering import Filter
|
|
19
19
|
from linode_api4.objects.linode import (
|
|
20
20
|
Backup,
|
|
21
|
+
InstanceACLPAlertsOptions,
|
|
21
22
|
InstancePlacementGroupAssignment,
|
|
22
23
|
InterfaceGeneration,
|
|
23
24
|
NetworkInterface,
|
|
@@ -167,6 +168,9 @@ class LinodeGroup(Group):
|
|
|
167
168
|
boot_size: Optional[int] = None,
|
|
168
169
|
authorized_users: Optional[List[str]] = None,
|
|
169
170
|
ipv4: Optional[List[str]] = None,
|
|
171
|
+
alerts: Optional[
|
|
172
|
+
Union[Dict[str, Any], InstanceACLPAlertsOptions]
|
|
173
|
+
] = None,
|
|
170
174
|
**kwargs,
|
|
171
175
|
):
|
|
172
176
|
"""
|
|
@@ -359,6 +363,9 @@ class LinodeGroup(Group):
|
|
|
359
363
|
:param ipv4: A list of reserved IPv4 addresses to assign to this Instance.
|
|
360
364
|
NOTE: Reserved IP feature may not currently be available to all users.
|
|
361
365
|
:type ipv4: list[str]
|
|
366
|
+
:param alerts: ACLP alerts available to define during instance creation.
|
|
367
|
+
This is v4beta only and may not be available to all users.
|
|
368
|
+
:type alerts: dict[str, Any] or InstanceACLPAlertsOptions
|
|
362
369
|
|
|
363
370
|
:returns: A new Instance object
|
|
364
371
|
:rtype: Instance
|
|
@@ -385,6 +392,7 @@ class LinodeGroup(Group):
|
|
|
385
392
|
"image": image,
|
|
386
393
|
"root_pass": root_pass,
|
|
387
394
|
"authorized_keys": load_and_validate_keys(authorized_keys),
|
|
395
|
+
"alerts": alerts,
|
|
388
396
|
"authorized_users": authorized_users,
|
|
389
397
|
# These will automatically be flattened below
|
|
390
398
|
"firewall_id": firewall,
|
|
@@ -22,6 +22,7 @@ from linode_api4.objects.monitor import (
|
|
|
22
22
|
AkamaiObjectStorageLogsDestinationDetails,
|
|
23
23
|
CustomHTTPSLogsDestinationDetails,
|
|
24
24
|
LogsStreamDetails,
|
|
25
|
+
LogsStreamQuota,
|
|
25
26
|
)
|
|
26
27
|
|
|
27
28
|
__all__ = [
|
|
@@ -625,3 +626,18 @@ class MonitorGroup(Group):
|
|
|
625
626
|
)
|
|
626
627
|
|
|
627
628
|
return LogsStream(self.client, result["id"], result)
|
|
629
|
+
|
|
630
|
+
def stream_quotas(self) -> PaginatedList:
|
|
631
|
+
"""
|
|
632
|
+
Retrieve quota definitions available for the authenticated account's streams.
|
|
633
|
+
|
|
634
|
+
This reads from ``/monitor/streams/quotas`` on the API v4 endpoint.
|
|
635
|
+
|
|
636
|
+
API Documentation: TODO
|
|
637
|
+
|
|
638
|
+
:returns: A paginated list of stream quota definitions.
|
|
639
|
+
:rtype: PaginatedList[LogsStreamQuota]
|
|
640
|
+
"""
|
|
641
|
+
return self.client._get_objects(
|
|
642
|
+
"/monitor/streams/quotas", LogsStreamQuota
|
|
643
|
+
)
|
|
@@ -35,6 +35,27 @@ class NodeBalancerGroup(Group):
|
|
|
35
35
|
:param ipv4: A reserved IPv4 address to assign to this NodeBalancer.
|
|
36
36
|
NOTE: Reserved IP feature may not currently be available to all users.
|
|
37
37
|
:type ipv4: str
|
|
38
|
+
:param type: The NodeBalancer type. Supported values include
|
|
39
|
+
``common``, ``premium``, ``premium_40gb``, and
|
|
40
|
+
``enterprise``. This cannot be changed after creation.
|
|
41
|
+
NOTE: Creating premium or enterprise NodeBalancers may not
|
|
42
|
+
currently be available to all users.
|
|
43
|
+
:type type: str
|
|
44
|
+
:param backend_connectivity: How this NodeBalancer communicates with
|
|
45
|
+
backends (``legacy``, ``ipv6``, or ``vpc``). If omitted,
|
|
46
|
+
the API infers a value from ``vpcs`` or config nodes, or
|
|
47
|
+
returns ``undefined`` until the first node is added.
|
|
48
|
+
``undefined`` cannot be sent by clients. This cannot be
|
|
49
|
+
changed after creation.
|
|
50
|
+
NOTE: This field may not currently be available to all users.
|
|
51
|
+
:type backend_connectivity: NodeBalancerBackendConnectivity | str
|
|
52
|
+
:param vpcs: VPC attachments for this NodeBalancer. Required when
|
|
53
|
+
``backend_connectivity`` is ``vpc``.
|
|
54
|
+
:type vpcs: list[dict]
|
|
55
|
+
:param configs: NodeBalancer configs and optional nodes to create
|
|
56
|
+
with this NodeBalancer. Node addresses must match the
|
|
57
|
+
selected or inferred backend connectivity.
|
|
58
|
+
:type configs: list[dict]
|
|
38
59
|
|
|
39
60
|
:returns: The new NodeBalancer
|
|
40
61
|
:rtype: NodeBalancer
|
|
@@ -790,6 +790,67 @@ class UpgradeInterfacesResult(JSONObject):
|
|
|
790
790
|
)
|
|
791
791
|
|
|
792
792
|
|
|
793
|
+
@dataclass
|
|
794
|
+
class InstanceAlerts(JSONObject):
|
|
795
|
+
"""
|
|
796
|
+
Represents both legacy and ACLP alerts for a Linode Instance.
|
|
797
|
+
"""
|
|
798
|
+
|
|
799
|
+
cpu: int = 0
|
|
800
|
+
io: int = 0
|
|
801
|
+
network_in: int = 0
|
|
802
|
+
network_out: int = 0
|
|
803
|
+
transfer_quota: int = 0
|
|
804
|
+
system_alerts: Optional[List[int]] = None
|
|
805
|
+
user_alerts: Optional[List[int]] = None
|
|
806
|
+
|
|
807
|
+
|
|
808
|
+
@dataclass
|
|
809
|
+
class InstanceACLPAlertsOptions(JSONObject):
|
|
810
|
+
"""
|
|
811
|
+
Represents the ACLP alerts available to define during instance creation and cloning.
|
|
812
|
+
"""
|
|
813
|
+
|
|
814
|
+
system_alerts: Optional[List[int]] = None
|
|
815
|
+
user_alerts: Optional[List[int]] = None
|
|
816
|
+
|
|
817
|
+
|
|
818
|
+
@dataclass
|
|
819
|
+
class InstanceBackupSchedule(JSONObject):
|
|
820
|
+
"""
|
|
821
|
+
InstanceBackupSchedule represents when automatic backups of a Linode Instance are taken.
|
|
822
|
+
"""
|
|
823
|
+
|
|
824
|
+
include_none_values = True
|
|
825
|
+
|
|
826
|
+
day: Optional[str] = None
|
|
827
|
+
window: Optional[str] = None
|
|
828
|
+
|
|
829
|
+
|
|
830
|
+
@dataclass
|
|
831
|
+
class InstanceBackupsOptions(JSONObject):
|
|
832
|
+
"""
|
|
833
|
+
InstanceBackupsOptions is used to update the backup settings of a Linode Instance.
|
|
834
|
+
"""
|
|
835
|
+
|
|
836
|
+
enabled: bool = False
|
|
837
|
+
schedule: Optional[InstanceBackupSchedule] = None
|
|
838
|
+
|
|
839
|
+
|
|
840
|
+
@dataclass
|
|
841
|
+
class InstanceBackups(JSONObject):
|
|
842
|
+
"""
|
|
843
|
+
InstanceBackups represents the backup settings and status of a Linode Instance.
|
|
844
|
+
"""
|
|
845
|
+
|
|
846
|
+
put_class = InstanceBackupsOptions
|
|
847
|
+
|
|
848
|
+
enabled: bool = False
|
|
849
|
+
available: bool = False
|
|
850
|
+
schedule: Optional[InstanceBackupSchedule] = None
|
|
851
|
+
last_successful: Optional[str] = None
|
|
852
|
+
|
|
853
|
+
|
|
793
854
|
class Instance(Base):
|
|
794
855
|
"""
|
|
795
856
|
A Linode Instance.
|
|
@@ -806,12 +867,12 @@ class Instance(Base):
|
|
|
806
867
|
"created": Property(is_datetime=True),
|
|
807
868
|
"updated": Property(volatile=True, is_datetime=True),
|
|
808
869
|
"region": Property(slug_relationship=Region),
|
|
809
|
-
"alerts": Property(mutable=True),
|
|
870
|
+
"alerts": Property(mutable=True, json_object=InstanceAlerts),
|
|
810
871
|
"image": Property(slug_relationship=Image),
|
|
811
872
|
"disks": Property(derived_class=Disk),
|
|
812
873
|
"configs": Property(derived_class=Config),
|
|
813
874
|
"type": Property(slug_relationship=Type),
|
|
814
|
-
"backups": Property(mutable=True),
|
|
875
|
+
"backups": Property(mutable=True, json_object=InstanceBackups),
|
|
815
876
|
"ipv4": Property(unordered=True),
|
|
816
877
|
"ipv6": Property(),
|
|
817
878
|
"hypervisor": Property(),
|
|
@@ -1913,6 +1974,9 @@ class Instance(Base):
|
|
|
1913
1974
|
Dict[str, Any],
|
|
1914
1975
|
int,
|
|
1915
1976
|
] = None,
|
|
1977
|
+
alerts: Optional[
|
|
1978
|
+
Union[Dict[str, Any], InstanceACLPAlertsOptions]
|
|
1979
|
+
] = None,
|
|
1916
1980
|
):
|
|
1917
1981
|
"""
|
|
1918
1982
|
Clones this linode into a new linode or into a new linode in the given region
|
|
@@ -1951,6 +2015,10 @@ class Instance(Base):
|
|
|
1951
2015
|
:param placement_group: Information about the placement group to create this instance under.
|
|
1952
2016
|
:type placement_group: Union[InstancePlacementGroupAssignment, PlacementGroup, Dict[str, Any], int]
|
|
1953
2017
|
|
|
2018
|
+
:param alerts: ACLP monitor alert definitions associated with the cloned Instance.
|
|
2019
|
+
This is under v4beta and may not be available to all users.
|
|
2020
|
+
:type alerts: dict[str, Any] or InstanceACLPAlertsOptions
|
|
2021
|
+
|
|
1954
2022
|
:returns: The cloned Instance.
|
|
1955
2023
|
:rtype: Instance
|
|
1956
2024
|
"""
|
|
@@ -1981,6 +2049,7 @@ class Instance(Base):
|
|
|
1981
2049
|
"label": label,
|
|
1982
2050
|
"group": group,
|
|
1983
2051
|
"with_backups": with_backups,
|
|
2052
|
+
"alerts": alerts,
|
|
1984
2053
|
"placement_group": _expand_placement_group_assignment(
|
|
1985
2054
|
placement_group
|
|
1986
2055
|
),
|
|
@@ -40,6 +40,7 @@ __all__ = [
|
|
|
40
40
|
"LogsStreamStatus",
|
|
41
41
|
"LogsStreamDetails",
|
|
42
42
|
"LogsStreamDestination",
|
|
43
|
+
"LogsStreamQuota",
|
|
43
44
|
]
|
|
44
45
|
|
|
45
46
|
|
|
@@ -276,8 +277,8 @@ class MonitorDashboard(Base):
|
|
|
276
277
|
"id": Property(identifier=True),
|
|
277
278
|
"created": Property(is_datetime=True),
|
|
278
279
|
"label": Property(),
|
|
279
|
-
"service_type": Property(
|
|
280
|
-
"type": Property(
|
|
280
|
+
"service_type": Property(),
|
|
281
|
+
"type": Property(),
|
|
281
282
|
"group_by": Property(),
|
|
282
283
|
"widgets": Property(json_object=DashboardWidget),
|
|
283
284
|
"updated": Property(is_datetime=True),
|
|
@@ -294,7 +295,7 @@ class MonitorService(Base):
|
|
|
294
295
|
api_endpoint = "/monitor/services/{service_type}"
|
|
295
296
|
id_attribute = "service_type"
|
|
296
297
|
properties = {
|
|
297
|
-
"service_type": Property(
|
|
298
|
+
"service_type": Property(),
|
|
298
299
|
"label": Property(),
|
|
299
300
|
"alert": Property(json_object=ServiceAlert),
|
|
300
301
|
}
|
|
@@ -495,7 +496,7 @@ class AlertDefinition(DerivedBase):
|
|
|
495
496
|
"entity_ids": Property(mutable=True),
|
|
496
497
|
"description": Property(mutable=True),
|
|
497
498
|
"service_class": Property(alias_of="class"),
|
|
498
|
-
"scope": Property(
|
|
499
|
+
"scope": Property(),
|
|
499
500
|
"regions": Property(mutable=True),
|
|
500
501
|
"entities": Property(json_object=AlertEntities),
|
|
501
502
|
"channel_ids": Property(mutable=True),
|
|
@@ -904,3 +905,16 @@ class LogsStream(Base):
|
|
|
904
905
|
"{}/history".format(LogsStream.api_endpoint.format(id=self.id)),
|
|
905
906
|
LogsStreamHistory,
|
|
906
907
|
)
|
|
908
|
+
|
|
909
|
+
|
|
910
|
+
@dataclass
|
|
911
|
+
class LogsStreamQuota(JSONObject):
|
|
912
|
+
"""
|
|
913
|
+
Represents a quota definition for logs streams.
|
|
914
|
+
"""
|
|
915
|
+
|
|
916
|
+
quota_id: str = ""
|
|
917
|
+
quota_name: str = ""
|
|
918
|
+
quota_limit: int = 0
|
|
919
|
+
quota_type: str = ""
|
|
920
|
+
description: str = ""
|
|
@@ -7,6 +7,16 @@ from linode_api4.objects.base import Base, MappedObject, Property
|
|
|
7
7
|
from linode_api4.objects.dbase import DerivedBase
|
|
8
8
|
from linode_api4.objects.networking import Firewall, IPAddress
|
|
9
9
|
from linode_api4.objects.region import Region
|
|
10
|
+
from linode_api4.objects.serializable import StrEnum
|
|
11
|
+
|
|
12
|
+
|
|
13
|
+
class NodeBalancerBackendConnectivity(StrEnum):
|
|
14
|
+
"""Backend connectivity modes accepted when creating a NodeBalancer."""
|
|
15
|
+
|
|
16
|
+
IPV6 = "ipv6"
|
|
17
|
+
LEGACY = "legacy"
|
|
18
|
+
UNDEFINED = "undefined"
|
|
19
|
+
VPC = "vpc"
|
|
10
20
|
|
|
11
21
|
|
|
12
22
|
class NodeBalancerType(Base):
|
|
@@ -162,8 +172,10 @@ class NodeBalancerConfig(DerivedBase):
|
|
|
162
172
|
|
|
163
173
|
API documentation: https://techdocs.akamai.com/linode-api/reference/post-node-balancer-node
|
|
164
174
|
|
|
165
|
-
:param address: The
|
|
166
|
-
|
|
175
|
+
:param address: The address and port where this backend can be reached.
|
|
176
|
+
The address may be a private IPv4 address, a public
|
|
177
|
+
IPv6 address, or a VPC address. The address type must
|
|
178
|
+
match this NodeBalancer's ``backend_connectivity``.
|
|
167
179
|
:type address: str
|
|
168
180
|
|
|
169
181
|
:param label: The label for this node. This is for display purposes only.
|
|
@@ -255,6 +267,9 @@ class NodeBalancer(Base):
|
|
|
255
267
|
"tags": Property(mutable=True, unordered=True),
|
|
256
268
|
"client_udp_sess_throttle": Property(mutable=True),
|
|
257
269
|
"locks": Property(unordered=True),
|
|
270
|
+
"type": Property(),
|
|
271
|
+
"backend_connectivity": Property(),
|
|
272
|
+
"backend_ipv6_prefix": Property(),
|
|
258
273
|
}
|
|
259
274
|
|
|
260
275
|
# create derived objects
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: linode_api4
|
|
3
|
-
Version: 5.
|
|
3
|
+
Version: 5.49.0
|
|
4
4
|
Summary: The official Python SDK for Linode API v4
|
|
5
5
|
Author-email: Linode <devs@linode.com>
|
|
6
6
|
License: BSD-3-Clause
|
|
@@ -25,29 +25,32 @@ License-File: LICENSE
|
|
|
25
25
|
Requires-Dist: requests
|
|
26
26
|
Requires-Dist: polling
|
|
27
27
|
Requires-Dist: deprecated
|
|
28
|
-
Provides-Extra: test
|
|
29
|
-
Requires-Dist:
|
|
30
|
-
|
|
31
|
-
Requires-Dist:
|
|
32
|
-
|
|
33
|
-
Requires-Dist:
|
|
34
|
-
Requires-Dist:
|
|
35
|
-
|
|
36
|
-
Requires-Dist:
|
|
37
|
-
Requires-Dist:
|
|
38
|
-
|
|
39
|
-
Requires-Dist:
|
|
40
|
-
Requires-Dist:
|
|
41
|
-
Requires-Dist:
|
|
42
|
-
Requires-Dist:
|
|
43
|
-
Requires-Dist:
|
|
44
|
-
Requires-Dist: build>=0.10.0; extra == "
|
|
45
|
-
Requires-Dist: twine>=4.0.2; extra == "dev"
|
|
46
|
-
Requires-Dist: pytest-rerunfailures; extra == "dev"
|
|
28
|
+
Provides-Extra: test-shared
|
|
29
|
+
Requires-Dist: pytest>=7.3.1; extra == "test-shared"
|
|
30
|
+
Requires-Dist: httpretty>=1.1.4; extra == "test-shared"
|
|
31
|
+
Requires-Dist: pytest-rerunfailures; extra == "test-shared"
|
|
32
|
+
Provides-Extra: unit-test
|
|
33
|
+
Requires-Dist: linode_api4[test-shared]; extra == "unit-test"
|
|
34
|
+
Requires-Dist: mock>=5.0.0; extra == "unit-test"
|
|
35
|
+
Provides-Extra: int-test
|
|
36
|
+
Requires-Dist: linode_api4[test-shared]; extra == "int-test"
|
|
37
|
+
Requires-Dist: cryptography; extra == "int-test"
|
|
38
|
+
Provides-Extra: lint
|
|
39
|
+
Requires-Dist: black>=23.1.0; extra == "lint"
|
|
40
|
+
Requires-Dist: isort>=5.12.0; extra == "lint"
|
|
41
|
+
Requires-Dist: autoflake>=2.0.1; extra == "lint"
|
|
42
|
+
Requires-Dist: pylint; extra == "lint"
|
|
43
|
+
Requires-Dist: twine>=4.0.2; extra == "lint"
|
|
44
|
+
Requires-Dist: build>=0.10.0; extra == "lint"
|
|
47
45
|
Provides-Extra: doc
|
|
48
46
|
Requires-Dist: Sphinx>=6.0.0; extra == "doc"
|
|
49
47
|
Requires-Dist: sphinx-autobuild>=2021.3.14; extra == "doc"
|
|
50
48
|
Requires-Dist: sphinxcontrib-fulltoc>=1.2.0; extra == "doc"
|
|
49
|
+
Provides-Extra: dev
|
|
50
|
+
Requires-Dist: linode_api4[unit-test]; extra == "dev"
|
|
51
|
+
Requires-Dist: linode_api4[int-test]; extra == "dev"
|
|
52
|
+
Requires-Dist: linode_api4[lint]; extra == "dev"
|
|
53
|
+
Requires-Dist: linode_api4[doc]; extra == "dev"
|
|
51
54
|
Dynamic: license-file
|
|
52
55
|
|
|
53
56
|
linode_api4
|
|
@@ -154,14 +157,13 @@ Tests
|
|
|
154
157
|
-----
|
|
155
158
|
|
|
156
159
|
Tests live in the ``test`` directory. When invoking tests, make sure you are
|
|
157
|
-
in the root directory of this project.
|
|
158
|
-
|
|
160
|
+
in the root directory of this project. Install unit-test dependencies and run
|
|
161
|
+
the mocked unit suite with:
|
|
159
162
|
|
|
160
163
|
.. code-block:: shell
|
|
161
164
|
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
Running tox also runs pylint and coverage reports.
|
|
165
|
+
python3 -m pip install -e ".[unit-test]"
|
|
166
|
+
make test-unit
|
|
165
167
|
|
|
166
168
|
The test suite uses fixtures stored as JSON in ``test/fixtures``. These files
|
|
167
169
|
contain sanitized JSON responses from the API - the file name is the URL called
|
|
@@ -183,8 +185,6 @@ from the api base url that should be returned, for example::
|
|
|
183
185
|
linode = self.client.linode.instance_create('g6-standard-2', 'us-east')
|
|
184
186
|
self.assertEqual(linode.id, 123) # passes
|
|
185
187
|
|
|
186
|
-
.. _tox: http://tox.readthedocs.io
|
|
187
|
-
|
|
188
188
|
|
|
189
189
|
Integration Tests
|
|
190
190
|
-----------------
|
|
@@ -144,6 +144,7 @@ test/fixtures/images_sharegroups_tokens_abc123_sharegroup_images.json
|
|
|
144
144
|
test/fixtures/images_upload.json
|
|
145
145
|
test/fixtures/linode_instances.json
|
|
146
146
|
test/fixtures/linode_instances_123_backups.json
|
|
147
|
+
test/fixtures/linode_instances_123_clone.json
|
|
147
148
|
test/fixtures/linode_instances_123_configs.json
|
|
148
149
|
test/fixtures/linode_instances_123_configs_456789.json
|
|
149
150
|
test/fixtures/linode_instances_123_configs_456789_interfaces.json
|
|
@@ -211,6 +212,7 @@ test/fixtures/monitor_streams_3.json
|
|
|
211
212
|
test/fixtures/monitor_streams_destinations.json
|
|
212
213
|
test/fixtures/monitor_streams_destinations_1_history.json
|
|
213
214
|
test/fixtures/monitor_streams_destinations_2.json
|
|
215
|
+
test/fixtures/monitor_streams_quotas.json
|
|
214
216
|
test/fixtures/network-transfer_prices.json
|
|
215
217
|
test/fixtures/networking_firewalls.json
|
|
216
218
|
test/fixtures/networking_firewalls_123.json
|
|
@@ -3,25 +3,33 @@ polling
|
|
|
3
3
|
deprecated
|
|
4
4
|
|
|
5
5
|
[dev]
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
6
|
+
linode_api4[unit-test]
|
|
7
|
+
linode_api4[int-test]
|
|
8
|
+
linode_api4[lint]
|
|
9
|
+
linode_api4[doc]
|
|
10
|
+
|
|
11
|
+
[doc]
|
|
12
|
+
Sphinx>=6.0.0
|
|
13
|
+
sphinx-autobuild>=2021.3.14
|
|
14
|
+
sphinxcontrib-fulltoc>=1.2.0
|
|
15
|
+
|
|
16
|
+
[int-test]
|
|
17
|
+
linode_api4[test-shared]
|
|
18
|
+
cryptography
|
|
19
|
+
|
|
20
|
+
[lint]
|
|
10
21
|
black>=23.1.0
|
|
11
22
|
isort>=5.12.0
|
|
12
23
|
autoflake>=2.0.1
|
|
13
24
|
pylint
|
|
14
25
|
twine>=4.0.2
|
|
15
26
|
build>=0.10.0
|
|
16
|
-
Sphinx>=6.0.0
|
|
17
|
-
sphinx-autobuild>=2021.3.14
|
|
18
|
-
sphinxcontrib-fulltoc>=1.2.0
|
|
19
|
-
pytest-rerunfailures
|
|
20
27
|
|
|
21
|
-
[
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
28
|
+
[test-shared]
|
|
29
|
+
pytest>=7.3.1
|
|
30
|
+
httpretty>=1.1.4
|
|
31
|
+
pytest-rerunfailures
|
|
25
32
|
|
|
26
|
-
[test]
|
|
27
|
-
|
|
33
|
+
[unit-test]
|
|
34
|
+
linode_api4[test-shared]
|
|
35
|
+
mock>=5.0.0
|
|
@@ -35,32 +35,38 @@ dependencies = ["requests", "polling", "deprecated"]
|
|
|
35
35
|
dynamic = ["version"]
|
|
36
36
|
|
|
37
37
|
[project.optional-dependencies]
|
|
38
|
-
test = [
|
|
39
|
-
|
|
40
|
-
dev = [
|
|
41
|
-
"tox>=4.4.0",
|
|
42
|
-
"mock>=5.0.0",
|
|
38
|
+
test-shared = [
|
|
43
39
|
"pytest>=7.3.1",
|
|
44
40
|
"httpretty>=1.1.4",
|
|
41
|
+
"pytest-rerunfailures",
|
|
42
|
+
]
|
|
43
|
+
unit-test = [
|
|
44
|
+
"linode_api4[test-shared]",
|
|
45
|
+
"mock>=5.0.0",
|
|
46
|
+
]
|
|
47
|
+
int-test = [
|
|
48
|
+
"linode_api4[test-shared]",
|
|
49
|
+
"cryptography",
|
|
50
|
+
]
|
|
51
|
+
lint = [
|
|
45
52
|
"black>=23.1.0",
|
|
46
53
|
"isort>=5.12.0",
|
|
47
54
|
"autoflake>=2.0.1",
|
|
48
55
|
"pylint",
|
|
49
56
|
"twine>=4.0.2",
|
|
50
57
|
"build>=0.10.0",
|
|
51
|
-
"Sphinx>=6.0.0",
|
|
52
|
-
"sphinx-autobuild>=2021.3.14",
|
|
53
|
-
"sphinxcontrib-fulltoc>=1.2.0",
|
|
54
|
-
"build>=0.10.0",
|
|
55
|
-
"twine>=4.0.2",
|
|
56
|
-
"pytest-rerunfailures",
|
|
57
58
|
]
|
|
58
|
-
|
|
59
59
|
doc = [
|
|
60
60
|
"Sphinx>=6.0.0",
|
|
61
61
|
"sphinx-autobuild>=2021.3.14",
|
|
62
62
|
"sphinxcontrib-fulltoc>=1.2.0",
|
|
63
63
|
]
|
|
64
|
+
dev = [
|
|
65
|
+
"linode_api4[unit-test]",
|
|
66
|
+
"linode_api4[int-test]",
|
|
67
|
+
"linode_api4[lint]",
|
|
68
|
+
"linode_api4[doc]",
|
|
69
|
+
]
|
|
64
70
|
|
|
65
71
|
[project.urls]
|
|
66
72
|
Homepage = "https://github.com/linode/linode_api4-python"
|
|
@@ -14,11 +14,15 @@
|
|
|
14
14
|
"network_out": 5,
|
|
15
15
|
"cpu": 90,
|
|
16
16
|
"transfer_quota": 80,
|
|
17
|
-
"io": 5000
|
|
17
|
+
"io": 5000,
|
|
18
|
+
"system_alerts": [123,456],
|
|
19
|
+
"user_alerts": [555]
|
|
18
20
|
},
|
|
19
21
|
"label": "linode123",
|
|
20
22
|
"backups": {
|
|
21
23
|
"enabled": true,
|
|
24
|
+
"available": true,
|
|
25
|
+
"last_successful": "2018-01-01T00:01:01",
|
|
22
26
|
"schedule": {
|
|
23
27
|
"window": "W02",
|
|
24
28
|
"day": "Scheduling"
|
|
@@ -64,7 +68,9 @@
|
|
|
64
68
|
"network_out": 5,
|
|
65
69
|
"cpu": 90,
|
|
66
70
|
"transfer_quota": 80,
|
|
67
|
-
"io": 5000
|
|
71
|
+
"io": 5000,
|
|
72
|
+
"system_alerts": [123,456],
|
|
73
|
+
"user_alerts": [555]
|
|
68
74
|
},
|
|
69
75
|
"label": "linode456",
|
|
70
76
|
"backups": {
|
|
@@ -104,7 +110,9 @@
|
|
|
104
110
|
"network_out": 5,
|
|
105
111
|
"cpu": 90,
|
|
106
112
|
"transfer_quota": 80,
|
|
107
|
-
"io": 5000
|
|
113
|
+
"io": 5000,
|
|
114
|
+
"system_alerts": [123,456],
|
|
115
|
+
"user_alerts": [555]
|
|
108
116
|
},
|
|
109
117
|
"group": "test",
|
|
110
118
|
"hypervisor": "kvm",
|