Commands
Run workflow with sfkit. Start with sfkit auth to authenticate.
usage: sfkit [-h]
{auth,networking,generate_keys,register_data,run_protocol,server,client,run,all}
...
Positional Arguments
- command
Possible choices: auth, networking, generate_keys, register_data, run_protocol, server, client, run, all
Sub-commands
auth
Authenticate with the CLI
sfkit auth [-h] [--study_id STUDY_ID]
Named Arguments
- --study_id
Study ID to authenticate with (for usage on Terra). If not provided, you will be prompted to select from a list of available studies.
networking
Set up the networking, including your IP address and any relevant ports
sfkit networking [-h] [--ports PORTS] [--ip_address IP_ADDRESS]
Named Arguments
- --ports
Comma-separated list of ports you want to use for communication for each other User respectively. In a two-party study, you only need to provide one port (e.g. 8100). For each port provided, you should be sure to open that port and the next few ports (for faster communication) in your firewall. If not provided, you may be prompted to enter a port for each participant.
- --ip_address
IP address you want to use for communication. If not provided, your external IP address will be determined automatically.
generate_keys
Generate your public and private cryptographic keys
sfkit generate_keys [-h]
register_data
Register and validate your data.
sfkit register_data [-h] [--geno_binary_file_prefix GENO_BINARY_FILE_PREFIX]
[--data_path DATA_PATH]
Named Arguments
- --geno_binary_file_prefix
Absolute path to the genotype binary file prefix for SF-GWAS (e.g.
/home/username/for_sfgwas/geno/ch%d). See https://sfkit.org/instructions#data_preparation for more details on the files you need.- --data_path
Absolute path to the data directory (files like
pheno.txtandcov.txtfor GWAS anddata.txtfor PCA) (e.g./home/username/for_sfgwas). See https://sfkit.org/instructions#data_preparation for more details on the files you need.
run_protocol
Run the protocol. When not using docker, this command will also install required dependencies and software updates as needed. As this command may be long-running, you may consider using nohup, screen, or tmux.
sfkit run_protocol [-h] [--skip_cp0] [--demo]
[--visualize_results VISUALIZE_RESULTS]
[--results_path RESULTS_PATH] [--retry]
Named Arguments
- --skip_cp0
Skip the creation of cp0 for party 1
Default: False
- --demo
Run the demo protocol
Default: False
- --visualize_results
Visualize the results in the UI (
YesorNo) (default isNo)- --results_path
The path in a GCP bucket (you have access to) where you would like to send the results of the protocol (e.g.
<bucket>/<path>).- --retry
Retry the protocol
Default: False
server
Start the sfkit server.
sfkit server [-h]
client
Start the sfkit client.
sfkit client [-h] [--study_id STUDY_ID] [--data_path DATA_PATH]
Named Arguments
- --study_id
Study ID for the client to use.
- --data_path
Path to the data directory for the client.
run (all)
All-in-one command to set up and run the protocol.
sfkit run [-h] [--study_id STUDY_ID] [--data_path DATA_PATH]
Named Arguments
- --study_id
Study ID for the client to use.
- --data_path
Path to the data directory for the client.