Distributing IGWN research software¶
IGWN research requires a wide array of software packages written in a wide array of languages. In most cases the software is developed by small teams of researchers who then 'release' the software for use in analyses; these releases are distributed using a variety of systems for use on the analysis platforms.
Source distributions¶
IGWN is committed to making all research software developed to enable its research program 'open-source' and freely (no cost) available to the public.
To support this, the IGWN Computing and Software group maintain the IGWN Software Archive to house source distributions for IGWN research software.
IGWN software is not required to be published to the IGWN Software Archive
A number of IGWN-developed software projects publish source distributions to other archives, such as the Python Package Index (https://pypi.org/); the collaboration does not require that these projects additionally publish to the IGWN software archive.
Uploading to the IGWN Software Archive¶
In order to upload a source distribution (typically a compressed tarball) to the IGWN Software Archive:
-
If you have never upload files to https://software.igwn.org before, please open a helpdesk ticket to request that an account is created for you and that your SSH public key is added to it:
-
Install the
igwn-archive
software package using your preferred package manager, ensuring that it is configured to see the relevant IGWN Software Repository (if appropriate):conda install --channel conda-forge igwn-archive
Debian packages are available from the IGWN Debian Repositories:
apt-get install igwn-archive
python -m pip install igwn-archive
-
Run
igwn-source-upload
script and point it at your source distribution:igwn-source-upload .../path/to/mypackage.tar.gz
igwn-source-upload
requires a passwordigwn-source-upload
requires a password in order to successfully push files to the source archive (usingrsync
). This password is visible to collaboration members as a secret here:https://secrets.ligo.org/secrets/433/
The password can be passed to
igwn-source-upload
using the--rsync-password
command-line option, or by storing it in theLSCSRC_RSYNC_PASSWORD
environment variable.
Binary distributions¶
IGWN Computing and Software also manage binary package repositories for a number of different platforms. Developers can request deployment of software into the IGWN Software Repositories by opening a Software Change Request.