Skip to main content

wls-rest-python

https://travis-ci.org/magnuswatn/wls-rest-python.svg?branch=master https://codecov.io/gh/magnuswatn/wls-rest-python/branch/master/graph/badge.svg https://badge.fury.io/py/wls-rest-python.svg https://img.shields.io/badge/code%20style-black-000000.svg

This is a Python client for Weblogics RESTful Management Services. It takes care of some of the quirks with the API, without being so closely linked that it becomes limiting.

It creates Python objects dynamically based on the response from the server, so that it’s easy to quickly write useful and Pythonic scripts.

It’s tested against 12.2.1.3, but should work fine with all 12c R2 releases.

Installation

$ pipenv install wls-rest-python

Example usage

Explore the API, change properties and undeploy applications:

>>> from wls_rest_python import WLS
>>>
>>> wls = WLS('https://wls.example.com:7001', 'weblogic', 'welcome1')
>>>
>>> dir(wls.edit.batchConfig)
['canonical', 'dynamicallyCreated', 'id', 'identity', 'name', 'notes','parent',
'schemaName', 'self', 'tags', 'type']
>>>
>>> wls.edit.servers.myServer.nativeIOEnabled
True
>>> wls.edit.servers.myServer.update(nativeIOEnabled=False)
>>> wls.edit.servers.myServer.nativeIOEnabled
False
>>> wls.domainRuntime.deploymentManager.appDeploymentRuntimes.myApp.getState(
... target='myServer')
{'return': 'STATE_ACTIVE'}
>>>
>>> wls.domainRuntime.deploymentManager.appDeploymentRuntimes.myApp.undeploy()
>>>

Start all managed servers asynchronously:

from wls_rest_python import WLS

wls = WLS('https://wls.example.com:7001', 'weblogic', 'welcome1')

admin_server_name = wls.edit.adminServerName

running_jobs = []
for server in wls.domainRuntime.serverLifeCycleRuntimes:
    if server.name != admin_server_name:
        running_jobs.append(server.start(prefer_async=True))

while running_jobs:
    for job in running_jobs:
        if job.completed:
            running_jobs.remove(job)
    time.sleep(10)

Undeploy all applications and deploy a new one:

import json
from wls_rest_python import WLS

wls = WLS('https://wls.example.com:7001', 'weblogic', 'welcome1')

for deployment in wls.edit.appDeployments:
    deployment.delete()

deployment_model = {
    'name': 'myWebApp',
    'targets': [
        {'identity': [
            'servers',
            'myServer'
            ]
        }
    ]
}

deployment_info = {
    'model': (None, json.dumps(deployment_model)),
    'sourcePath': open('/u01/wars/myWebApp.war', 'rb'),
    'planPath': open('/u01/wars/myWebAppPlan.xml', 'rb')
}
wls.edit.appDeployments.create(files=deployment_info)

Metadata

Release files for wls-rest-python 0.1.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for wls-rest-python 0.1.5
File Size Uploaded Provenance Actions
wls-rest-python-0.1.5.tar.gz 6.3 kB Without provenance Details for wls-rest-python-0.1.5.tar.gz

Release files / wls-rest-python-0.1.5.tar.gz

Download URL wls-rest-python-0.1.5.tar.gz
Size 6.3 kB
Tags Source
SHA-256 checksum
How to use checksums
a26df32737acf99b995e0fae13ac2ef25310e598e1904c181682632f2869d531
BLAKE2b-256 checksum
How to use checksums
19ffa0023e299d04884adb98396fd961ae242f72e98ea59c985b5d43a957b138
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/1.12.2 pkginfo/1.4.2 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.28.1 CPython/3.7.3

Security for wls-rest-python 0.1.5

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page