Using ARC packages from nightly builds

Recent development version of ARC is available as a nightly builds packages for many Linux distribution.

To use these nightlies smoothly for installation and updates, the repository should be added to your system. Run the commands below as root.

Enabling nightlies repo for RHEL-based distributions

Setup a CRON job (e.g. /etc/cron.daily/update-arc-nightly-time.sh) to fetch the latest nightlies date:

cat << EOF > /etc/cron.daily/update-arc-nightly-time.sh
#!/bin/bash
curl -s http://builds.nordugrid.org/nightlies/nordugrid-arc/arc7/ | sed -n 's/^.*<a.*>\(.*\)\/<\/a>.*$/\1/p' | sort  | tail -1 > /etc/yum/vars/arcnightly
EOF

Run the CRON script once manually to have the arcnightly variable initialized. Also, make sure the script has executable permissions.

chmod +x /etc/cron.daily/update-arc-nightly-time.sh
/bin/bash /etc/cron.daily/update-arc-nightly-time.sh

To add the nightlies repository to your RHEL-based system, create a /etc/yum.repos.d/nordugrid-nightly.repo:

cat << EOF > /etc/yum.repos.d/nordugrid-nightly.repo
[nordugrid-nightly]
name=Nordugrid ARC ARC7 Nightly Builds - \$basearch
baseurl=http://builds.nordugrid.org/nightlies/nordugrid-arc/arc7/\$arcnightly/rocky/9/\$basearch
enabled=1
gpgcheck=0
EOF

Note

Note that you should modify OS release version to match your case. Allowed values are centos-stream, rocky, fedora, debian`, ubuntu.

Check if it works running yum (or dnf), e.g.:

dnf makecache

Enabling dependent repos for RHEL-based distributions

The NorduGrid repositories for RedHat Enterprise Linux/CentOS depends on the EPEL Repositories which must also be part of the YUM configuration, so as root user do:

For RHEL8 flavour:

dnf install -y epel-release
dnf config-manager --set-enabled powertools

For RHEL9 flavour:

dnf install -y epel-release
dnf config-manager --set-enabled crb

Once the NorduGrid repositories are configured and the dependency above installed, install the alpha/beta/release-candidate packages with:

dnf install --enablerepo nordugrid-nightly <list-of-packages>

For instance:

dnf install --enablerepo nordugrid-nightly  nordugrid-arc-arex

Please refer to the ARC Computing Element Installation and Configuration Guide for package selection and configuration.

Enabling nightlies repo for Debian-based distributions

Nightlies for Debian/Ubuntu are available as standalone packages without repository index files generated.

The suggested approach is to:

  • download packages locally

  • create the necessary repository package index

  • use the repository on the local filesystem

To accomplish this, install the necessary tools for making repository files:

apt-get -y install dpkg-dev

Regularly fetch latest nightly packages and create the repository index with the following daily CRON job:

cat << EOF > /etc/cron.daily/update-arc-nightly-time.sh

 #!/bin/bash

 arcrelease='ubuntu/24.04/amd64'
 latestdate=$( wget -q -O - http://builds.nordugrid.org/nightlies/nordugrid-arc/arc7/ | sed -n 's/^.*<a.*>\(.*\)\/<\/a>.*$/\1/p' | sort | tail -1 )
 repodir=/srv/nordugrid-nightlies

 rm -rf $repodir; mkdir -p $repodir; cd $repodir

 wget -q -r -nH --cut-dirs=8 --no-parent -l1 -A "*.deb, *.ddeb" http://builds.nordugrid.org/nightlies/nordugrid-arc/arc7/$latestdate/$arcrelease/

 dpkg-scanpackages . /dev/null 2>/dev/null | gzip -9c > Packages.gz

EOF

Create the local repository file /etc/apt/sources.list.d/nordugrid-nightlies.list:

cat << EOF > /etc/apt/sources.list.d/nordugrid-nightlies.list

 deb [trusted=yes] file:/srv/nordugrid-nightlies ./

EOF

Check it works running apt, e.g:

apt-get update