diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 3a343cd01be48dcb60de02b28786d2cfcfef31bb..446d1814793666ed196b9acfb0b6c4e3709936bd 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,17 +1,17 @@ # Contributing -To contribute to this repository, you can first [fork it](https://gitlab.biologie.ens-lyon.fr/PSMN/modules/forks/new). +To contribute to this repository, you need to [fork it](https://gitlab.biologie.ens-lyon.fr/PSMN/modules/forks/new). ## Development on the PSMN -To install your forked version of the LBMC modules repository on the PSMN run following command o: +To install your forked version of the LBMC modules repository on the PSMN run following command: ``` git clone git@gitlab.biologie.ens-lyon.fr:<your_login>/modules.git ~/privatemodules_dev module use ~/privatemodules_dev ``` -If you don’t have a `.ssh/config` file and if you like typing your password you can instead use after defining your [Gitlab password](https://gitlab.biologie.ens-lyon.fr/profile/password/edit). +If you don’t have a `.ssh/config` file and if you like typing your password, you can instead use the following clone command, after defining your [Gitlab password](https://gitlab.biologie.ens-lyon.fr/profile/password/edit). ```sh git clone -c http.sslVerify=false https://gitlab.biologie.ens-lyon.fr:<your_login>/modules.git ~/privatemodules_dev @@ -22,7 +22,7 @@ the software required by the module you want to use. ### New version of an existing module -To propose a version of a module, start by running the following commands: +To propose a new version of a module, start by running the following commands: ```sh cd ~/privatemodules_dev/apps/<software_name>/ @@ -34,7 +34,7 @@ without error on the PSMN to create a proper installation of the software in the folder ``/apps/<software_name>/<version>`. You must add a line `apps/<software_name>/<version>` in the `.gitignore` file, -otherwise the installation files will be committed to your repository. +otherwise the installation files could be committed to your repository. Then, create the corresponding module file with the following commands: @@ -46,20 +46,24 @@ sed -i `s/<existing_version>/<new_version>/g` <new_version>.lua ### New module -To propose a new module, use an existing module as a template to build the -corresponding `apps/<software>/<version>` and `modulefiles/<software>/<version>` directory. +To propose a new module, you can use an existing module as a template to write your `apps/<software>/<version>_install.sh` script and `modulefiles/<software>/<version>.lua` file. You can look at the following modules to have examples of : - Python tools : [MultiQC install.sh](https://gitlab.biologie.ens-lyon.fr/PSMN/modules/blob/master/apps/MultiQC/install_1.0.sh) and [MultiQC .lua](https://gitlab.biologie.ens-lyon.fr/PSMN/modules/blob/master/modulefiles/MultiQC/1.0.lua) - Compiled tools : [UrQt install.sh](https://gitlab.biologie.ens-lyon.fr/PSMN/modules/blob/master/apps/UrQt/install_d62c1f8.sh) -- Java tools : [Trimmomatic install.sh](https://gitlab.biologie.ens-lyon.fr/PSMN/modules/blob/master/apps/Trimmomatic/install_0.36.sh) and [nextflow .lua](https://gitlab.biologie.ens-lyon.fr/PSMN/modules/blob/master/modulefiles/nextflow/0.28.2.lua) +- Java tools : [Trimmomatic install.sh](https://gitlab.biologie.ens-lyon.fr/PSMN/modules/blob/master/apps/Trimmomatic/install_0.36.sh) and [nextflow.lua](https://gitlab.biologie.ens-lyon.fr/PSMN/modules/blob/master/modulefiles/nextflow/0.28.2.lua) ## Making your module available to the LBMC -To make your module available to the LBMC you must have a `install_<new_version>.sh` script working without errors on the E5 compilation servers and you must be able to load the correspond module and run it. +To make your module available to the LBMC you must have a `install_<new_version>.sh` script working without errors on the E5 compilation servers and you must be able to load the correspond module and run it with the commands: -Then after pushing your modification on your forked repository, you can make a Merge Request to the [PSMN/modules](https://gitlab.biologie.ens-lyon.fr/PSMN/modules) **dev** branch. Where it will be tested and +```sh +module use ~/privatemodules_dev +ml <module_name>/<module_version> +``` + +After pushing your modifications to your forked repository, you can make a Merge Request to the [PSMN/modules](https://gitlab.biologie.ens-lyon.fr/PSMN/modules) **dev** branch. Where it will be tested and integrated to the **master** branch. ## Migrate old module to the new module system