Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(disk): implements retry mechanism for disk deletion #260

Merged
merged 1 commit into from
Jan 29, 2024

Conversation

RomilShah
Copy link
Contributor

This fix introduces a retry mechanism for disk deletion operations, ensuring that deletion attempts are retried in the event of errors, regardless of the current disk status.

@RomilShah RomilShah requested review from a team as code owners January 27, 2024 07:58
Copy link

🤖 Pull Request Artifacts (#7677307701) 🎉

@pallabpain pallabpain added the 🐛 bug Something isn't working label Jan 27, 2024
riocli/disk/model.py Outdated Show resolved Hide resolved
@pallabpain pallabpain force-pushed the fix/disk-deletion-bug branch 2 times, most recently from 625008f to bfcf14b Compare January 29, 2024 04:50
Copy link

🤖 Pull Request Artifacts (#7691325796) 🎉

Copy link

🤖 Pull Request Artifacts (#7691330442) 🎉

This update implements a retry mechanism for the disk deletion operation
through the "rio apply" command. This enhancement ensures that deletion
attempts are systematically retried in the occurrence of errors,
irrespective of the existing disk status.

Wrike Ticket: https://www.wrike.com/open.htm?id=1160572877
@RomilShah RomilShah force-pushed the fix/disk-deletion-bug branch from bfcf14b to 37de60a Compare January 29, 2024 06:59
Copy link

🤖 Pull Request Artifacts (#7692317789) 🎉

@pallabpain pallabpain merged commit c635914 into devel Jan 29, 2024
6 checks passed
rr-github-ci-user pushed a commit that referenced this pull request Jan 31, 2024
# [7.0.0](v6.0.0...v7.0.0) (2024-01-31)

### Bug Fixes

* **apply:** adds deploymentId as an option in GUID_KEYS ([11161ef](11161ef))
* **deployment:** prints error during delete when no deployments found ([f73fea0](f73fea0))
* **deployment:** raises exception when package depends not found ([b5b3daf](b5b3daf))
* **deployment:** validates config trees while creating deployment ([8d688fc](8d688fc))
* **device:** improves message when devices deleted successfully ([e6b1299](e6b1299))
* **device:** prints error during delete when no devices found ([7bf2c94](7bf2c94))
* **device:** speeds up listing device deployments ([e7b0ceb](e7b0ceb))
* **disk:** implements retries for deleting disk ([#260](#260)) ([c635914](c635914))
* **disk:** sets default retries=20 for polling disk status ([35fa0f4](35fa0f4))
* **jsonschema:** adds validation on disk volume mount path ([9332b45](9332b45))
* **jsonschema:** disallows additional properties for device volumes ([cc702a0](cc702a0))
* **jsonschema:** disallows additional properties for runtime dependency ([324037c](324037c))
* **jsonschema:** makes runtime required in disks ([1d81a82](1d81a82))
* **jsonschema:** makes runtime required in package and deployment ([f2e7afe](f2e7afe))
* **jsonschema:** removes default device deployment restart policy ([64967e1](64967e1))
* **jsonschema:** sets min length for secrets to 3 chars ([2703147](2703147))
* **jsonschema:** skips populating default if property not in instance ([ba7eccf](ba7eccf))
* **organization:** empties project when organization is selected non-interactively ([921e965](921e965))
* **package:** prints error during delete when no packages found ([81355a7](81355a7))
* **parameter:** adds validation on tree names ([5870508](5870508))
* **parameter:** prints info when download command has no tree name ([695875f](695875f))
* **parameter:** prints message when there is nothing to upload ([3aa3ea5](3aa3ea5))
* **parameter:** throws error when param tree not found during apply ([9a65dd3](9a65dd3))
* **project:** skips update if VPN already enabled ([51b0222](51b0222))
* **secret:** adds secret name length validation ([8ae5102](8ae5102))

* refactor(deployment)!: removes ssh commands ([c066477](c066477))
* refactor(package)!: removes create command ([38f0580](38f0580))
* 🔨 refactor!: removes build from the CLI (#241) ([4a7901d](4a7901d)), closes [#241](#241)

### Features

* **auth:** allow environment change without trying to fetch token ([5f4a49f](5f4a49f))
* **deployment:** supports deleting multiple deployments ([f7cccc3](f7cccc3))
* **package:** add support for nested docker images. ([55b05c6](55b05c6))
* **parameters:** apply with device name pattern ([4a5e54c](4a5e54c))
* **parameters:** apply with device name pattern ([6f3b34a](6f3b34a))
* **utils:** implements a SimpleCache class ([0d466b6](0d466b6))
* **utils:** implements concurrent executor helper functions ([7a67be3](7a67be3))

### Reverts

* skips populating default if property not in instance" ([d482223](d482223))

### BREAKING CHANGES

* The `rio deployment ssh-init` and `rio deployment ssh`
commands are no longer available.
* rio package create is no longer available. Please use
`rio apply package.yaml` for creating new packages.
* Builds are no longer supported in Rapyuta.io. Please
use Docker images for creating packages and deployments.
@rr-github-ci-user
Copy link
Collaborator

🎉 This PR is included in version 7.0.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

RomilShah pushed a commit that referenced this pull request Apr 23, 2024
# [7.0.0](v6.0.0...v7.0.0) (2024-01-31)

### Bug Fixes

* **apply:** adds deploymentId as an option in GUID_KEYS ([11161ef](11161ef))
* **deployment:** prints error during delete when no deployments found ([f73fea0](f73fea0))
* **deployment:** raises exception when package depends not found ([b5b3daf](b5b3daf))
* **deployment:** validates config trees while creating deployment ([8d688fc](8d688fc))
* **device:** improves message when devices deleted successfully ([e6b1299](e6b1299))
* **device:** prints error during delete when no devices found ([7bf2c94](7bf2c94))
* **device:** speeds up listing device deployments ([e7b0ceb](e7b0ceb))
* **disk:** implements retries for deleting disk ([#260](#260)) ([c635914](c635914))
* **disk:** sets default retries=20 for polling disk status ([35fa0f4](35fa0f4))
* **jsonschema:** adds validation on disk volume mount path ([9332b45](9332b45))
* **jsonschema:** disallows additional properties for device volumes ([cc702a0](cc702a0))
* **jsonschema:** disallows additional properties for runtime dependency ([324037c](324037c))
* **jsonschema:** makes runtime required in disks ([1d81a82](1d81a82))
* **jsonschema:** makes runtime required in package and deployment ([f2e7afe](f2e7afe))
* **jsonschema:** removes default device deployment restart policy ([64967e1](64967e1))
* **jsonschema:** sets min length for secrets to 3 chars ([2703147](2703147))
* **jsonschema:** skips populating default if property not in instance ([ba7eccf](ba7eccf))
* **organization:** empties project when organization is selected non-interactively ([921e965](921e965))
* **package:** prints error during delete when no packages found ([81355a7](81355a7))
* **parameter:** adds validation on tree names ([5870508](5870508))
* **parameter:** prints info when download command has no tree name ([695875f](695875f))
* **parameter:** prints message when there is nothing to upload ([3aa3ea5](3aa3ea5))
* **parameter:** throws error when param tree not found during apply ([9a65dd3](9a65dd3))
* **project:** skips update if VPN already enabled ([51b0222](51b0222))
* **secret:** adds secret name length validation ([8ae5102](8ae5102))

* refactor(deployment)!: removes ssh commands ([c066477](c066477))
* refactor(package)!: removes create command ([38f0580](38f0580))
* 🔨 refactor!: removes build from the CLI (#241) ([4a7901d](4a7901d)), closes [#241](#241)

### Features

* **auth:** allow environment change without trying to fetch token ([5f4a49f](5f4a49f))
* **deployment:** supports deleting multiple deployments ([f7cccc3](f7cccc3))
* **package:** add support for nested docker images. ([55b05c6](55b05c6))
* **parameters:** apply with device name pattern ([4a5e54c](4a5e54c))
* **parameters:** apply with device name pattern ([6f3b34a](6f3b34a))
* **utils:** implements a SimpleCache class ([0d466b6](0d466b6))
* **utils:** implements concurrent executor helper functions ([7a67be3](7a67be3))

### Reverts

* skips populating default if property not in instance" ([d482223](d482223))

### BREAKING CHANGES

* The `rio deployment ssh-init` and `rio deployment ssh`
commands are no longer available.
* rio package create is no longer available. Please use
`rio apply package.yaml` for creating new packages.
* Builds are no longer supported in Rapyuta.io. Please
use Docker images for creating packages and deployments.
@ankitrgadiya ankitrgadiya deleted the fix/disk-deletion-bug branch May 28, 2024 06:42
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
🐛 bug Something isn't working
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants