Python

opera

Latest version: v0.7.0

PyUp actively tracks 471,271 Python packages for vulnerabilities to keep your Python environments secure.

Scan your dependencies

0.7.0

Version [**0.7.0**](https://pypi.org/project/opera/0.7.0/) of [xOpera TOSCA orchestration tool](https://xlab-si.github.io/xopera-docs/) is finally here!

It includes the following updates:

- [x] updated Ansible executor for ansible-core migration
- [x] reduced `opera` Python package size - this has been done by replacing [ansible](https://pypi.org/project/ansible/) dependency with [ansible-core](https://pypi.org/project/ansible-core/), which does not install half gig of Ansible collections as users can install only the ones they need (with `ansible-galaxy collection install`) or can still use extended install option with `pip install opera[ansible]` to install all collections
- [x] removed Pipfile and Makefile
- [x] updated dev.sh and Python requirements
- [x] migrated CI/CD from CircleCI to GitHub Actions
- [x] further reduce size of orchestrator by moving [xOpera TOSCA parser](https://github.com/xlab-si/xopera-tosca-parser) to [`opera-tosca-parser`](https://pypi.org/project/opera-tosca-parser/) Python package
- [x] xOpera TOSCA parser add experimental support for TOSCA 2.0 in README

**Full Changelog**: https://github.com/xlab-si/xopera-opera/compare/0.6.9...0.7.0

0.6.9

There is a new version [**0.6.9**](https://pypi.org/project/opera/0.6.9/) of [xOpera orchestrator](https://xlab-si.github.io/xopera-docs/) available and includes the following new things and changes:

- [x] Bugfixes for concurrent output issues
- [x] Display additional info for operation errors
- [x] Updates for parsing of TOSCA interfaces (derivation, optimization, etc.)
- [x] Fixes for TOSCA template comparer file comparison function
- [x] Remove CI/CD runs for Python 3.7
- [x] Updates for opera validate library function
- [x] Allow creating only zipped CSARs to be more compliant with TOSCA

0.6.8

A 'o ia!

We are happily releasing a new version [**0.6.8**](https://pypi.org/project/opera/0.6.8/) of [xOpera TOSCA orchestration tool](https://xlab-si.github.io/xopera-docs/).

This version contains the following new things and updates:

- [x] Bugfixes for TOSCA type operation definition inputs
- [x] Corrections for TOSCA templates within examples and integration tests
- [x] Updates for README and Python package info
- [x] Additions for missing normative TOSCA networking types
- [x] Removal of deprecated `opera init` CLI command
- [x] Enable CLI version retrieval with `--version/-v` CLI flag
- [x] Fixes for the latest CLI command bugs
- [x] Adding detection for missing TOSCA requirements
- [x] Resolving errors in unit and integration tests
- [x] Dockerfile for xOpera CLI

A hui hou...

0.6.7

Happy Halloween from xOpera! πŸ‘» πŸŽƒ πŸ•·οΈ πŸŒ• 😈 πŸ—‘οΈ πŸ§› 🧟 πŸ•ΈοΈ

We're are proudly announcing version [**0.6.7**](https://pypi.org/project/opera/0.6.7/) of [xOpera TOSCA orchestrator](https://xlab-si.github.io/xopera-docs/).

This release comes with the following new features and updates:

- [x] Better indication of different node orchestration states
- [x] Faster integration tests
- [x] Generalize usage of pathlib objects in CLI command functions
- [x] Adding unit tests for CLI commands
- [x] Update old unit tests to satisfy pylint
- [x] Fixes for unpackaging TOSCA CSARs
- [x] Refactorings for validation for of TOSCA CSARs
- [x] Apply TOSCA functions to all entities
- [x] Check also TOSCA executors with opera validate
- [x] Upgrade Python dependency packages
- [x] Add support for Python 3.10 and omit Python 3.6
- [x] Use only f-strings for string formatting in the code
- [x] Add new xOpera logo

0.6.6

We're are marking a new release - [**0.6.6**](https://pypi.org/project/opera/0.6.6/) of xOpera TOSCA orchestrator, which brings the following new features and updates:

- [x] xOpera's documentation has been moved to [xopera-docs](https://github.com/xlab-si/xopera-docs) repo and is now available at https://xlab-si.github.io/xopera-docs/
- [x] adding evaluation for TOSCA functions that are used inside YAML maps and lists
- [x] calculate code coverage and push reports to [Code Climate](https://codeclimate.com/github/xlab-si/xopera-opera)
- [x] updates for README badges and quickstart section
- [x] directly render input values instead of the path in `opera info` command and expand the output with CSAR and service template metadata
- [x] repair the integration test for concurrency
- [x] catch undeclared requirements on node templates (TOSCA requirement assignments match with TOSCA requirement definitions)
- [x] enable validating directory-based CSARs with `opera validate` CLI command
- [x] add CI/CD test executor that uses python `3.9.4`
- [x] update package versions in `Pipfile` and refactor code to satisfy pylint

0.6.5

Waiting is over! We are happy to release the newest version - [**0.6.5**](https://pypi.org/project/opera/0.6.5/) of `opera` orchestrator, which includes the following new features and updates:

- [x] introducing mandatory sanity checks for PEP8, linters, typing, commit messages
- [x] refactorings for `tosca.nodes.Storage.ObjectStorage` TOSCA normative type definition
- [x] refactorings for `tosca.nodes.Database` TOSCA normative type definition
- [x] apply tab completion to diff and update CLI commands
- [x] allow saving orchestration outputs and info to a file
- [x] update help messages for all CLI commands
- [x] detection for invalid Standard and Configure TOSCA interface operations
- [x] including TOSCA policies to topology and other necessary things for the new notify CLI command
- [x] the new [`opera notify`](https://xlab-si.github.io/xopera-opera/opera_cli.html#notify) CLI command, which enables invoking TOSCA triggers from TOSCA policies (and therefore enables scaling)
- [x] fixes for diff CLI command for different workdirs
- [x] updating and adding new examples (e.g. Docker and Kubernetes) to opera's [documentation](https://xlab-si.github.io/xopera-opera/)

0.6.4

New version - [**0.6.4**](https://pypi.org/project/opera/0.6.4/) of opera TOSCA orchestrator is here and it's bringing the following new features and updates:

- [x] a new `opera diff` CLI command for comparing TOSCA topologies and instances
- [x] a new `opera update` CLI command for redeploying application blueprints based on the detected changes
- [x] updates for README (badges, links, svgs)
- [x] implementation of TOSCA `occurrences` keyname that can be used to control the usage of TOSCA requirements
- [x] major updates for [xOpera's documentation](https://xlab-si.github.io/xopera-opera/index.html) - including CLI, SaaS and Template library
- [x] initial support for opera tab completion for bash and zsh shells (we added `--shell-completion/-s` global optional argument that will print out the completion script which can then be sourced to activate the completion)

0.6.3

The xOpera TOSCA orchestrator has a new version - [**0.6.3**](https://pypi.org/project/opera/0.6.3/).

The new release contains the following additions:

- [x] a new CI routine for testing opera examples
- [x] serialization of topology template policies as a list
- [x] refactorings for using node name references with TOSCA intrinsic functions
- [x] better README with badges
- [x] fixes for all existing opera CLI commands (bugs, missing flags)
- [x] an integration test for all opera CLI commands
- [x] fixes for passing inputs and getting outputs within relationship types
- [x] `opera init` CLI command is now marked as deprecated
- [x] compressed (zipped) CSAR deployment is possible just with `opera deploy`
- [x] new `opera package` command for preparing TOSCA CSARs
- [x] new `opera unpackage` command for extracting TOSCA CSARs
- [x] make TOSCA properties required by default

0.6.2

The new version [**0.6.2**](https://pypi.org/project/opera/0.6.2/) of opera TOSCA orchestrator contains:

- [x] bugfixes for concurrent immediate cancellation
- [x] increased verbosity when encountering unset values
- [x] initial support for the intrinsic TOSCA functions (`concat`, `join` and `token`)
- [x] compressed CSAR deployment fixes
- [x] new `opera info` command for getting current deployment state
- [x] bugfixes for `get_artifact` TOSCA function
- [x] new `OPERA_SSH_HOST_KEY_CHECKING` environment variable to disable Ansible host key checks
- [x] initial documentation for xOpera SaaS

0.6.1

This version [**0.6.1**](https://pypi.org/project/opera/0.6.1/) includes mostly bugfixes which are:

- [x] refactoring of CI/CD configuration for pushing stable branch with CircleCI
- [x] removal of some unnecessary checks for undeclared TOSCA artifacts

0.6.0

We are proudly releasing version [**0.6.0**](https://pypi.org/project/opera/0.6.0/) of opera TOSCA orchestrator!

This release adds new useful features, which are:

- [x] verbose/debug mode CLI option to have higher verbosity and to print Ansible playbook outputs
- [x] fresh new options for `opera deploy` command: `--clean-state` , `--resume` and `--force`
- [x] the very first opera Read the docs Sphinx documentation available at: https://xlab-si.github.io/xopera-opera/
and continuous publishing with CIrcleCI and GitHub pages
- [x] some refactorings for the deployment of initialized compressed CSARs from their extracted root
- [x] initial support for `get_artifact` TOSCA function
- [x] fixes for calling multiple references for policy type targets
- [x] parsing support for activity, condition clause and event filter definitions
- [x] parsing of TOSCA policy type triggers
- [x] refinement of required fields in interface and operation inputs

0.5.9

Say hello to the new **0.5.9** version of opera TOSCA orchestration tool!

This release concludes decoupling a Python library API from CLI interaction by
reshaping opera of commands (`init`, `validate`, `undeploy`, `outputs`, and
`deploy`). This would allow using opera as a Python library in other projects without
having to know anything about its CLI. Apart from that the release also includes
detecting duplicate map entries in TOSCA YAML templates.

0.5.8

The new **0.5.8** version of opera orchestrator includes the following important additions:

- [x] first opera integration tests and additional unit tests
- [x] CI/CD updates with nightly opera testing and semi-automated PyPI releases
- [x] relocating opera storage folder
- [x] prevent squaring of relationships during the execution
- [x] attribute mapping support
- [x] merge imported topology templates
- [x] concurrent task execution (multiple possible workers)
- [x] TOSCA policy type updates (targets keyname)
- [x] private ssh key file support (`OPERA_SSH_IDENTITY_FILE` env var)
- [x] new opera init command and support for compressed TOSCA CSAR files
- [x] updates for opera validate, deploy, undeploy and outputs commands
- [x] add acknowledgement for SODALITE project
- [x] support for getting attributes and properties from capabilities

0.5.6

The new release of [opera-api](https://pypi.org/project/opera-api/0.5.6/) brings an additonal `OPERA_API_WORKDIR` env var for setting the working directory of the target user's TOSCA CSAR. This means that the user will not have to move to a specific dir anymore and will also be useful when starting xOpera API Docker container.

0.5.4

We are releasing a new version of [opera-api](https://pypi.org/project/opera-api/0.5.4/) which brings these new additions:

* The version of `opera` package dependency has been upgraded to `0.6.9`
* Public [ghcr.io/xlab-si/xopera-api](https://github.com/xlab-si/xopera-api/pkgs/container/xopera-api) Docker image
* Updated OpenAPI spec and OpenAPI generator
* Updated requirements
* Updated integration tests
* New environment variables
* Updated README info

0.5.3

The new release of [opera-api](https://pypi.org/project/opera-api/0.5.3/) has these new additions:

* The version of `xopera-opera` was upgraded to `0.6.8`
* Update OpenAPI spec for opera 0.6.8 and OpenAPI generator
* Update requirements
* Update integration tests
* Enable SwaggerUI only in debug mode
* Update README
* Implement CI/CD pipeline with semi-automated PyPI releases

0.5.1

*The version of `xopera-opera` remains unchanged at `0.6.6`*

This release has these new additions:

* API support for `opera diff` and `opera update`.
* API support for `opera validate <csar>`, a split endpoint from service template validation.
* The result returned by `/info` now contains all available CSAR and service template metadata.

It improves:

* The test suite now has a completely valid CSAR with complete metadata and a JSON-decoding trigger target.
* The test suite has been improved to be stricter and more sensitive to failures.

The following endpoints were deprecated pending removal in a future release:

* `/validate`, which performed service template diffs, is now deprecated in favour of the following two endpoints
* `/validate/servicetemplate` for service template validation,
* `/validate/csar` for CSAR validation.

0.5.0

This is the first version that supports TOSCA Simple Profile for YAML 1.3. Other noteworthy additions are:

* Support for relationship operations from the `tosca.interfaces.relationship.Configure` interface.
* Support for the operation dependencies (secondary artifacts).

This release is available on [PyPI](https://pypi.org/project/opera/).

Happy orchestrating!

0.4.2

This release has the following bugfixes:

* The service template filename was incorrectly passed to the underlying library function, causing a far-downstream type mismatch. The parameter is now passed through as the proper type.

0.4.1

*The version of `xopera-opera` has been updated to `0.6.6`*

This release has these new additions:

* API support for `opera deploy --clean-state`.

0.4.0

*The version of `xopera-opera` has been updated to `0.6.5`*

This release has these new additions:

* API support for `opera notify`, enabling events/triggers and thus scaling flows

It improves:

* semi-automated testing to help ensure better, consistent and faster releases
* the version of `cryptography` has been pinned to ensure builds on Alpine succeed - currently without Rust

0.3.0

_The version of `xopera-opera` has been updated to `0.6.4`_

This release has these new additions:

* API support for `opera init`
* API support for `opera package`
* API support for `opera unpackage`

It improves:

* the `opera info` implementation has been updated to return more information when using an non-deployed or uninitialized project

0.2.2

What's Changed
* [TOSCA 2.0 - part 1]: Separate v1.3 and make room for v2.0 by anzoman in https://github.com/xlab-si/xopera-tosca-parser/pull/7
* [TOSCA 2.0 - part 2]: Supply core v2.0 entities for parsing by anzoman in https://github.com/xlab-si/xopera-tosca-parser/pull/8
* [TOSCA 2.0 - part 3]: Provide unit and integration tests and enable parsing 2.0 via CLI by anzoman in https://github.com/xlab-si/xopera-tosca-parser/pull/9

**Full Changelog**: https://github.com/xlab-si/xopera-tosca-parser/compare/0.1.2...0.2.2

0.2.1

Update to xopera-opera 0.6.2, which introduces the info command.

0.2.0

This release brings much better output handling, supporting in-progress output monitoring. Stdout and stderr have been split in the API, hence a bigger version change.

0.1.2

End-to-end testing is apparently important. The `xopera-opera` dependency wasn't applied in `setup.cfg`, which meant functions were called with incorrect (newer) signatures. Fun times without static typing.

0.1.1

The first release where a complete workflow with all commands was tested.

0.1.0

An initial release.