Skip to content

ndi.cloud.helloMatlab

 HELLOMATLAB End-to-end check that the current user has a working MATLAB
 BYOL registration on NDI Cloud, by running the `hello-matlab-v1` pipeline
 and waiting for the verify stage to terminate.

    This is the MATLAB equivalent of the e2eScripts/compute/Matlab/
    test_helloMatlab.sh script in ndi-cloud-node: log in, start the
    pipeline, poll GET /compute/{sessionId} until the verify stage hits
    COMPLETED or FAILED, and surface the message MATLAB wrote back from
    the EC2 instance.

    [SUCCESS, SESSIONID, STATUSMESSAGE, SESSIONDOC] = ndi.cloud.helloMatlab()
    [...] = ndi.cloud.helloMatlab('TimeoutSeconds', 1200, 'PollIntervalSeconds', 10)

    Optional Inputs (Name-Value):
        TimeoutSeconds      - Hard cap on polling, default 1200 (20 min).
                              The stage's own watchdog is 15 min.
        PollIntervalSeconds - Seconds between status polls, default 10.
        Verbose             - Print one line per status change, default true.

    Outputs:
        success       - True if the verify stage reached COMPLETED.
        sessionId     - The compute session ID, or "" if start failed.
        statusMessage - The verify stage's statusMessage (the License
                        Manager string from MATLAB on success or failure,
                        or the proximate error text if the API rejected
                        the start call before any session existed).
        sessionDoc    - The final session struct (or the start-call error
                        payload if start failed).

    Prereq: the caller must have a registered BYOL license matching the
    pipeline's `requiresMatlabRelease`. Use
    ndi.cloud.api.users.allocateMatlabLicenseMac and
    ndi.cloud.api.users.setMatlabLicense to register one. If no license
    matches, the API refuses to start the session with HTTP 400 and a
    `MATLAB_LICENSE_REQUIRED` payload, which this function reports
    directly via STATUSMESSAGE.

    See also: ndi.cloud.api.compute.startSession,
              ndi.cloud.api.compute.getSessionStatus,
              ndi.cloud.api.users.getMatlabLicense