Home Applications testcontainers-iris-python

testcontainers-iris-python

This application is not supported by InterSystems Corporation. Please be notified that you use it at your own risk.
5
1 reviews
0
Awards
66
Views
0
IPM installs
0
0
Details
Releases
Reviews
Issues
Pull requests
Articles
Start container with IRIS directly from python

What's new in this version

Initial Release

Testcontainers-python for InterSystems IRIS

testcontainers-python facilitates the use of Docker containers for functional and integration testing.

Other implementations

Basic usage

>>> from testcontainers.iris import IRISContainer
>>> import sqlalchemy

>>> iris_container = IRISContainer("intersystemsdc/iris-community:latest")
>>> with iris_container as iris:
... engine = sqlalchemy.create_engine(iris.get_connection_url())
... with engine.begin() as connection:
... result = connection.execute(sqlalchemy.text("select $zversion"))
... version, = result.fetchone()
>>> version
'IRIS for UNIX (Ubuntu Server LTS for ARM64 Containers) 2023.2 (Build 227U) Mon Jul 31 2023 17:43:25 EDT'

The snippet above will spin up a InterSystems IRIS database in a container. The get_connection_url() convenience method returns a sqlalchemy compatible url we use to connect to the database and retrieve the database version.

It is possible to run Enterprise edition as well, with passing a valid iris.key.

iris_container = IRISContainer(
    "containers.intersystems.com/intersystems/iris:2023.3", 
    license_key="/full/path/to/iris.key",
    username="testuser",
    password="testpass",
    namespace="TEST",
)

username, password, namespace will be created during start of the container with required values, user will get %All role

Demo with Jupiter Notebook

More extensive documentation can be found at Read The Docs.

Read more
Donate
Made with
Version
1.0.001 Feb, 2024
Python package
testcontainers-iris
Category
Developer Environment
Works with
InterSystems IRIS
First published
14 Dec, 2023