You can create a job to execute a particular Docker image on demand, for example an image containing a Python script to upsert transactions into LUSID from a CSV file.
You can optionally then create a schedule to automatically trigger the job at chosen times.
To start the process of creating a new job:
- Sign into the LUSID web app and select Jobs & Scheduling > Jobs from the left-hand menu:
- On the Jobs dashboard, click the Create job button (top right).
- Specify a Scope and Code that together uniquely identify the job in your LUSID domain.
- If not already done, follow these instructions to upload your Docker image to the FINBOURNE AWS store. Upon returning to this screen, you should be able to select your image from the
Image name
andVersion
dropdowns: - On the Arguments screen, you can (optionally) define command line arguments to pass in to your job at runtime. In our example, we’ll add two arguments, passing in for each argument:
- A
Name
, prefixed with--
. - A
Data type
from the dropdown provided and aDescription
. - Whether or not the argument is
Mandatory
. In our example, both should be mandatory, since transactions must upsert to a transaction portfolio. - A
Default
value (which can be overridden by a user at runtime).
- A
- On the Arguments screen, you can (optionally) define environment variables to pass in to your job at runtime. In our example, since we're exercising the LUSID API via the LUSID Python SDK, we'll use this facility to pass in credentials, so the SDK can obtain an API access token. We need to define the following environment variables:
Variable name Source of the value Data type Example value FBN_PASSWORD
Configuration Store Configuration
config://personal/00u91lo2eeX42sdse2p7/lusid-sdks/python-sdk/account-password
FBN_USERNAME
LUSID account username String
johndoe
FBN_CLIENT_SECRET
Configuration Store Configuration
config://personal/00u91lo2eeX42sdse2p7/lusid-sdks/python-sdk/client-secret
FBN_CLIENT_ID
Client ID of the application String
example-sdk-app
FBN_LUSID_API_URL
LUSID domain URL String
https://acmecorp.lusid.com/api
FBN_TOKEN_URL
Dedicated Okta token URL for LUSID domain String
https://lusid-acmecorp.okta.com/oauth2/aus91lnun55CZjjav2p7/v1/token
Account passwords and client secrets must be pulled in from the Configuration Store. See how to upload these credentials to the Configuration Store. Upon returning to this screen, selectConfiguration
from the Data type dropdown and click in the Default value key area to be guided to select the appropriate configuration set and item (theconfig://...
syntax is automatically generated). - For now, the Resources tab can be safely skipped. Click Save to finish creating the job.
Once the job is created, you can trigger the job on demand by selecting Run now. See how to monitor job runs and troubleshoot any failures.
You can also create a schedule which triggers the job to run on a particular schedule with particular arguments. See how to do this.