To ensure a consistent environment for all users, this project uses a Conda environment defined in a requirements.yml
file. Follow these steps to set up your environment:
I wish you good luck for the installation. You will need gdal...
-
Install dependencies (test on ubuntu 24.04):
sudo apt-get update && sudo apt-get install wkhtmltopdf
-
Install Conda: If you do not have Conda installed, download and install Miniconda or Anaconda.
-
Create the Conda Environment: Navigate to the root of the project directory and run the following command to create a new environment from the
requirements.yml
file:conda env create -f requirements.yml
-
Activate the Environment: Once the environment is created, activate it using:
conda activate drone_workflow_env
To run the workflow, navigate to the project root and execute:
python workflow.py [OPTIONS]
The script allows you to select an input method from several mutually exclusive options:
-efol
,--enable_folder
: Use data from a session folder.-eses
,--enable_session
: Use data from a single session.-ecsv
,--enable_csv
: Use data from a CSV file.
You can specify the paths to the files or folders to be used as input:
-pfol
,--path_folder
: Path to the session folder. Default: /home/bioeos/Documents/Bioeos/plancha-session.-pses
,--path_session
: Path to a specific session. Default: /media/bioeos/E/202309_plancha_session/20230926_REU-HERMITAGE_ASV-2_01/.-pcsv
,--path_csv_file
: Path to the CSV file containing the inputs. Default: ./csv_inputs/retry.csv.
module load singularity/3.6.4
singularity build -f drone_workflow.sif docker://seatizendoi/drone-workflow:latest
#!/bin/bash
#PBS -l select=1:ncpus=32:mem=40g
#PBS -l walltime=2:00:00
#PBS -N drone_workflow
#PBS -q omp
#PBS -S /bin/bash
#PBS -J 1-2
signal_handler() {
pkill --parent "${$}"
}
trap signal_handler EXIT
cd /home1/datahome/villien/PBS/drone_workflow/
module load singularity/3.6.4
singularity run --pwd /home/seatizen/app/ \
--bind /home/ifremer-rbe-doi-rummo/drone/drone_serge:/home/seatizen/sessions \
drone_upscaling.sif -c -efol -pfol /home/seatizen/sessions -ip $PBS_ARRAY_INDEX
qstat -f $PBS_JOBID
Contributions are welcome! To contribute, please follow these steps:
- Fork the repository.
- Create a new branch for your feature or fix.
- Commit your changes with clear, descriptive messages.
- Push your branch and submit a pull request.
This framework is distributed under the wtfpl license. See LICENSE
for more information.