Skip to main content

REANA-DB.

Project description

https://img.shields.io/pypi/pyversions/reana-db.svg https://github.com/reanahub/reana-db/workflows/CI/badge.svg https://readthedocs.org/projects/reana-db/badge/?version=latest https://codecov.io/gh/reanahub/reana-db/branch/master/graph/badge.svg https://badges.gitter.im/Join%20Chat.svg https://img.shields.io/github/license/reanahub/reana-db.svg https://img.shields.io/badge/code%20style-black-000000.svg

About

REANA-DB is a component of the REANA reusable analysis platform. It contains REANA database models and utilities.

Features

  • database persistence for REANA system

  • database models and utilities

  • database upgrades and migrations

Usage

The detailed information on how to install and use REANA can be found in docs.reana.io.

Changes

Version 0.8.2 (2022-02-23)

  • Adds transition for workflow from queued to failed status.

Version 0.8.1 (2022-02-01)

  • Adds an option to periodically calculate CPU quota usage.

  • Changes CLI quota command from disk-usage-update to resource-usage-update since it can also perform CPU quota calculation.

  • Fixes quota update functions to handle exceptional situation as continuable errors.

  • Removes extra QuotaResourceType enum in favor of ResourceType.name.

Version 0.8.0 (2021-11-22)

  • Adds new disk usage retrieval methods using canonical (bytes) and human-readable (KiB) units. (User, Workflow)

  • Adds Quota models which calculates CPU and disk usage.

  • Adds InteractiveSession model.

  • Adds new properties started_at and finished_at to the Job model, updated on status change.

  • Adds get_priority workflow method, that combines both complexity and concurrency, to pass to the scheduler.

  • Adds a possibility to configure database connection pool parameters via environment variables.

  • Adds new pending state to RunStatus table.

  • Adds workflow complexity property in Workflow table.

  • Adds environment variable to configure which quotas to update.

  • Changes WorkflowStatus table to RunStatus.

  • Changes disk quota calculation functions to allow passing raw bytes to increase the used quota.

  • Changes to PostgreSQL 12.8.

  • Removes support for Python 2.

Version 0.7.3 (2021-03-17)

Version 0.7.2 (2021-02-22)

  • Adds utility to status enums to decide whether to clean workflows and jobs depending on their status.

Version 0.7.1 (2021-02-02)

  • Adds support for Python 3.9.

  • Fixes minor code warnings.

  • Changes CI system to include Python flake8 checker.

Version 0.7.0 (2020-10-20)

  • Adds initial central workflow status transition logic handler.

  • Adds new audit table and logic to register actions. (AuditLog, AuditLogAction)

  • Adds fixtures for better testing of database models.

  • Changes user token storage to move tokens from User table to UserToken table and to encrypt them.

  • Changes Workflow table to add a new workspace_path column.

  • Changes default database service to use centrally configured one from REANA-Commons. (REANA_INFRASTRUCTURE_COMPONENTS_HOSTNAMES)

  • Changes code formatting to respect black coding style.

  • Changes documentation to single-page layout.

Version 0.6.0 (2019-12-19)

  • Adds new method which returns full workflow name.

  • Adds more granular DB configuration.

  • Adds Git repository information to the workflow model. (Workflow.git_repo, Workflow.git_provider)

  • Adds user name information to the user model. (User.full_name, User.username)

  • Removes restart count information from the job model. (Job.restart_count, Job.max_restart_count)

  • Adds support for Python 3.8.

Version 0.5.0 (2019-04-16)

  • Introduces new workflow statuses: deleted, stopped, queued.

  • Adds new field to store workflow stopping time. (Workflow.run_stopped_at)

  • Moves workflow input parameters to its own column to separate them from operational options. Adapts getters accordingly. (Workflow.input_parameters)

  • Adds new method to retrieve the workflow owner’s token. (Workflow.get_owner_access_token)

  • Introduces new utility function to retrieve workflows by uuid or name. (_get_workflow_with_uuid_or_name)

  • Introduces new fields for interactive sessions: interactive_session, interactive_session_name and interactive_session_type. Note that with current design only one interactive session per workflow is supported.

  • Adds a new enumeration for possible job statuses. (JobStatus)

  • Adds new field to identify jobs in the underlying compute backend. (Job.backend_job_id)

Version 0.4.0 (2018-11-06)

  • Stores reana.yaml in database models.

  • Adds Workflow specification and parameter getters.

  • Adds support for Python 3.7.

  • Changes license to MIT.

Version 0.3.0 (2018-08-10)

  • This package is a result of refactoring reana-commons.

  • Provides common REANA models.

  • Provides database connection logic.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

reana-db-0.8.2.tar.gz (35.5 kB view hashes)

Uploaded source

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page