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.

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:

#!/bin/bash
curl -s http://builds.nordugrid.org/nightlies/nordugrid-arc/master/ | sed -n 's/^.*<a.*>\(.*\)\/<\/a>.*$/\1/p' | sort  | tail -1 > /etc/yum/vars/arcnightly

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

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

[nordugrid-nightly]
name=Nordugrid ARC Master Nightly Builds - $basearch
baseurl=http://builds.nordugrid.org/nightlies/nordugrid-arc/master/$arcnightly/centos/el7/$basearch
enabled=1
gpgcheck=0

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

[root ~]# yum makecache

Install required packages

The NorduGrid repositories for RedHat Enterprise Linux/CentOS depends on the EPEL Repositories which must also be part of the YUM configuration:

For RHEL7 flavour:

yum install -y epel-release

For RHEL8 flavour:

dnf config-manager --set-enabled powertools

For RHEL9 flavour:

dnf config-manager --set-enabled crb

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:

[root ~]# apt-get -y install dpkg-dev

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

#!/bin/bash

arcrelease='ubuntu/16.04/amd64'
latestdate=$( wget -q -O - http://builds.nordugrid.org/nightlies/nordugrid-arc/master/ | 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/master/$latestdate/$arcrelease/

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

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

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

Check it works running apt, e.g:

[root ~]# apt-get update