Skip to main content

comps-sif-constructor

Create SIF images for COMPS

To use (with uv):

uvx comps_sif_constructor create -d lolcow.def

This will launch the image creation on COMPS and leave behind a sif.id for the jobs that need the image.

Usage

comps_sif_constructor --help

The CLI has four main commands: create, launch, gather, and login.

Create SIF Image

Create a Apptainer/Singularity image file on COMPS with create:

comps_sif_constructor create --help
usage: comps_sif_constructor create [--help] [--definition_file DEFINITION_FILE] [--output_id OUTPUT_ID] 
                                    [--work_item_name WORK_ITEM_NAME] [--requirements REQUIREMENTS]

options:
  --help                show this help message and exit
  --definition_file DEFINITION_FILE, -d DEFINITION_FILE
                        Path to the Singularity definition file (default: apptainer.def)
  --output_id OUTPUT_ID, -o OUTPUT_ID
                        Name out Asset id file (default: sif.id)
  --work_item_name WORK_ITEM_NAME, -w WORK_ITEM_NAME
                        Name of the work item (default: Singularity Build)
  --requirements REQUIREMENTS, -r REQUIREMENTS
                        Path to the requirements file

Example:

comps_sif_constructor create \
  -d <path_to_definition_file> \
  -o <output_id> \
  -w <work_item_name> \
  [-r <requirements_file>]

Launch COMPS Experiment

Launch a COMPS experiment with specified parameters:

comps_sif_constructor launch --help
usage: comps_sif_constructor launch [--help] [--name NAME] [--threads THREADS] 
                                   [--priority PRIORITY] [--node-group NODE_GROUP] 
                                   --file FILE [--sif-id-file SIF_ID_FILE]
                                   [--experiment-id-file EXPERIMENT_ID_FILE]

options:
  --help                show this help message and exit
  --name NAME, -n NAME  Name of the experiment (default: comps-sif-constructor experiment)
  --threads THREADS, -t THREADS
                        Number of threads to use (default: 1)
  --priority PRIORITY, -p PRIORITY
                        Priority level for the experiment (default: AboveNormal)
  --node-group NODE_GROUP, -g NODE_GROUP
                        Node group to use (default: idm_48cores)
  --file FILE, -f FILE  Path to the trials.jsonl file (REQUIRED)
  --sif-id-file SIF_ID_FILE, -i SIF_ID_FILE
                        Path to the asset ID file (default: sif.id)
  --experiment-id-file EXPERIMENT_ID_FILE, -o EXPERIMENT_ID_FILE
                        Path to the output id file (default: experiment.id)

Example:

comps_sif_constructor launch \
  -n "My Experiment" \
  -t 4 \
  -p AboveNormal \
  -g idm_48cores \
  -f trials.jsonl \
  -i sif.id \
  -o experiment.id

Gather Experiment Data

Gather data from a COMPS experiment:

comps_sif_constructor gather --help
usage: comps_sif_constructor gather [--help] [--experiment-id EXPERIMENT_ID] [--output OUTPUT]

options:
  --help                show this help message and exit
  --experiment-id EXPERIMENT_ID, -e EXPERIMENT_ID
                        Experiment id (default: experiment.id)
  --output OUTPUT, -o OUTPUT
                        Output file (default: data_brick.json)

Example:

comps_sif_constructor gather \
  -e experiment.id \
  -o data_brick.json

Login

Save your COMPS credentials using the login command:

comps_sif_constructor login --help
usage: comps_sif_constructor login [--help] [--comps_url COMPS_URL] [--username USERNAME] [--password PASSWORD]

options:
  --help                show this help message and exit
  --comps_url COMPS_URL
                        COMPS URL (default: https://comps.idmod.org)
  --username USERNAME, -u USERNAME
                        Username (can also use COMPS_USERNAME environment variable)
  --password PASSWORD, -p PASSWORD
                        Password (can also use COMPS_PASSWORD environment variable)

Example:

comps_sif_constructor login \
  -u your_username \
  -p 'your_password'

You can also set COMPS_USERNAME and COMPS_PASSWORD as environment variables to avoid entering credentials each time.

Resources

Metadata

Release files for comps-sif-constructor 0.4.0

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

Source distribution (sdist)

Source distribution for comps-sif-constructor 0.4.0
File Size Uploaded
comps_sif_constructor-0.4.0.tar.gz 252.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for comps-sif-constructor 0.4.0
File Interpreter ABI Platform
comps_sif_constructor-0.4.0-py3-none-any.whl Python 3 none any Details

Total release size: 622.3 kB

Release files / comps_sif_constructor-0.4.0.tar.gz

Download URL comps_sif_constructor-0.4.0.tar.gz
Size 252.2 kB
Tags Source
SHA-256 checksum
How to use checksums
69c4c3a3b1fca4f92b211368ed9ae9cd151829bfed1f6df7f72c2775f488774b
BLAKE2b-256 checksum
How to use checksums
746cd8839636d044cff7cb87d78ac2ea8e468e476d803d02642126c6dea55f2a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 7, 2025.

Transparency log

Release files / comps_sif_constructor-0.4.0-py3-none-any.whl

Download URL comps_sif_constructor-0.4.0-py3-none-any.whl
Size 370.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
777f532262edccc1223735a07d93f67db43e00a79e8fb8beaaad82f43399d5ff
BLAKE2b-256 checksum
How to use checksums
af5e4d18cdd02e6b1e1f63208b3445e7ee4b592f786531b07a8880174cd16d11
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.12.9

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.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on May 7, 2025.

Transparency log

Release history Release notifications | RSS feed

This release

0.4.0 This release

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.0

2 release files

0.0.11

2 release files

0.0.10

2 release files

0.0.9

2 release files

0.0.8

2 release files

0.0.7

2 release files

0.0.6

2 release files

0.0.5

2 release files

0.0.2

2 release files

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