Skip to main content

Deploy & run your code in a single function call.

Project description

Logo

AegisBlade Python Client

pypi version supported python versions license

Deploy & run your code in a single function call.
Read the docs »

Examples · Sign Up for an API Key · Report Bug

Installation

We recommend using virtualenv to create an isolated environment for your python application.

Install the python package as a dependency of your application.

$ pip install aegisblade

Or for python3:

pip3 install aegisblade

Hello World Example

const {aegisblade} = require('aegisblade');
const os = require("os");

/**
 * In this example the `helloWorld()` function will be run on a
 * server using AegisBlade. 
 */
async function helloWorld() {
    console.log(`The server's hostname is ${os.hostname()}`);

    return `Hello World from ${os.hostname()}`;
}

// Any target function to be run on AegisBlade must be exported.
module.exports = {helloWorld};

/**
 * The `main()` function will run on your local machine
 * and start the job running the `helloWorld()` function
 * on a server using AegisBlade.
 */
async function main() {
    let job = await aegisblade.run(helloWorld);

    console.log(`Job Id: ${job.id}`);
    console.log("Waiting for the job to finish running...");

    let jobReturnValue = await job.getReturnValue();
    let jobLogs = await job.getLogs();

    console.log(`Job Return Value: ${jobReturnValue}`);
    console.log(`Job Logs: ${jobLogs}`);
}

//  Using the `require.main === module` idiom to only run main when this script
//    is called directly is especially important when using AegisBlade to prevent
//    infinite loops of jobs creating jobs.
if (require.main === module) {
    (async () => {
        try {
            await main();
        } catch (err) {
            console.error(err);
        }
    })();
}

Note on Python 2

The official python organization will no longer support Python 2 following January 2020.

Due to it's popular usage though, we will likely continue to support a Python 2.7 client for the forseeable future.

Reference

Python Client Reference Docs

Contact

AegisBlade - @aegisbladehq - welovedevs@aegisblade.com

Project Link: https://github.com/aegisblade/aegis-nodejs

Project details


Download files

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

Source Distribution

aegisblade-0.2.0.tar.gz (24.0 kB view hashes)

Uploaded Source

Built Distribution

aegisblade-0.2.0-py2-none-any.whl (48.8 kB view hashes)

Uploaded Python 2

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page