Skip to main content

a cli for interacting with stumpf server

Project description

boiler

installation

# for yaml.CLoader support (faster yaml parsing)
apt install libyaml-dev

# install pipx
python3 -m pip install --user pipx
python3 -m pipx ensurepath

# install boiler tools
pipx install diva-boiler

# set token for stumpf
export STUMPF_API_URL="" # defaults to https://stumpf-the-younger.avidannotations.com/api/diva
export X_STUMPF_TOKEN=""

# set tokens for boto3.  currently unused - you can ignore these
export AWS_ACCESS_KEY_ID=""
export AWS_SECRET_ACCESS_KEY=""

boiler --help

You should install jq for output formatting.

See boto3 docs for additional info about AWS config.

usage

This documentation provides some useful examples, but is not exhaustive.

# to get up-to-date documentation, use the help option
boiler [noun] --help
boiler [noun] [verb] --help

local data manipulation

boiler has utilities to validate KW18 data. These are offline operations.

# show kw18 help
boiler kw18 validate --help

# validate a single set a kw18 files
boiler kw18 validate examples/kw18/minimal

# find and validate all kw18 files recursively
boiler kw18 validate -r examples/kw18

For this command, it is assumed that all files associated with a KW18
dataset have the same base name and there is only one `*.kw18` file
per directory.

### Workflow Step 1: video ingest

```bash
# one-off
boiler video add --help

# ingest a single video
boiler video add \
  --video-path somefile.avi \
  --release-batch testing

Workflow Step 2: vendor activity dispatch

Once a video exists, it can be transitioned to the annotation state.

boiler vendor dispatch --help

# generate the list of known activity types to file
boiler activity list-types > activity-list.txt

# specify a video, vendor, and list of activities to transition to the annotation stage
boiler vendor dispatch \
  --name kitware \
  --video-name 2999-01-01.00-00-00.00-05-00.admin.G999 \
  --activity-type-list activity-list.txt \
  --set-name test-set
  --annotation-repo-path iMerit/2018-09-06/08/2018-09-06.08-20-00.08-25-00.alb.G229/37-activities

Alternatively, the dispatch can be done after the results have been returned from the vendor. This can be done in bulk as follows:

boiler kw18 dispatch \
  --vendor imerit \
  --set-name testing \
  --activity-type-list activity-list.txt \
  m2-annotations-imerit/iMerit/2018-09-06/*/37-activities

This command also support a --recursive flag to search recursively for kw18 files under each listed path.

Workflow Step 3: vendor activity ingestion

When activities come back from vendors, they should be transitioned to the audit state.

boiler kw18 ingest --help

# list each directory explicitly to ingest
boiler kw18 ingest m2-annotations-imerit/iMerit/2018-09-06/*/37-activities

# or run recursively
boiler kw18 ingest --recursive m2-annotations-imerit/iMerit

Stumpf will first detect whether the files have changed or not. If they have not, no further action will be taken. If they have, then Stumpf will:

  1. Generate a transition to the "annotation" status
  2. Run server side validation
    • If validation fails, return failure information
    • If validation succeeds, transition to the "audit" state and ingest activities from the KW18 files

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

diva-boiler-0.0.16.tar.gz (27.5 kB view details)

Uploaded Source

File details

Details for the file diva-boiler-0.0.16.tar.gz.

File metadata

  • Download URL: diva-boiler-0.0.16.tar.gz
  • Upload date:
  • Size: 27.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/46.0.0 requests-toolbelt/0.9.1 tqdm/4.35.0 CPython/3.6.9

File hashes

Hashes for diva-boiler-0.0.16.tar.gz
Algorithm Hash digest
SHA256 923c7b78790f58586f1ad1715fa4b332b5a263521dcc703739deb95fc0dc1dfa
MD5 257795b666dc8d61d2e3abd22f95859f
BLAKE2b-256 c98956a7291646f38b18554d142c99d001d5cd9a046e8fe7a1b7b7143a19d240

See more details on using hashes here.

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