Merge pull request #282 from fstagni/newMaster_20250410 #113
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: integration | |
| on: [push] | |
| jobs: | |
| local_install: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| dirac_branch: | |
| - rel-v8r0 | |
| - integration | |
| pilot_schema: | |
| - pilot_oldSchema.json | |
| - pilot_newSchema.json | |
| VO: | |
| - dteam | |
| - gridpp | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: cvmfs-contrib/github-action-cvmfs@v3 | |
| - name: Test CernVM-FS | |
| run: ls /cvmfs/dirac.egi.eu | |
| - name: Tests | |
| env: | |
| HOSTCERT_BASE64: ${{ secrets.HOSTCERT_BASE64 }} | |
| HOSTKEY_BASE64: ${{ secrets.HOSTKEY_BASE64 }} | |
| run: | | |
| mkdir -p ${GITHUB_WORKSPACE}/Client/etc/grid-security | |
| cd ${GITHUB_WORKSPACE}/Client | |
| echo "$HOSTCERT_BASE64" | base64 --decode > ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem | |
| echo "$HOSTKEY_BASE64" | base64 --decode > ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem | |
| chmod 440 ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem | |
| chmod 400 ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem | |
| curl -LO https://github.com/DIRACGrid/DIRACOS2/releases/latest/download/DIRACOS-Linux-$(uname -m).sh | |
| bash DIRACOS-Linux-$(uname -m).sh | |
| rm DIRACOS-Linux-$(uname -m).sh | |
| source diracos/diracosrc | |
| pip install DIRAC | |
| pilot_proxy_file=$(mktemp) | |
| dirac-configure --ConfigurationServer=https://lbcertifdirac70.cern.ch:9135/Configuration/Server --UseServerCertificate -o /DIRAC/Security/CertFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem -o /DIRAC/Security/KeyFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem | |
| dirac-admin-get-proxy fstagni dteam_pilot -o /DIRAC/Security/UseServerCertificate=yes -o /DIRAC/Security/CertFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem -o /DIRAC/Security/KeyFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem --out $pilot_proxy_file | |
| cd ${GITHUB_WORKSPACE}/Pilot | |
| cp ../tests/CI/${{ matrix.pilot_schema }} pilot.json | |
| sed -i "s/VAR_JENKINS_SITE/DIRAC.Jenkins.ch/g" pilot.json | |
| sed -i "s/VAR_JENKINS_CE/jenkins.cern.ch/g" pilot.json | |
| sed -i "s/VAR_JENKINS_QUEUE/jenkins-queue_not_important/g" pilot.json | |
| sed -i "s/VAR_DIRAC_VERSION/${{ matrix.dirac_branch }}/g" pilot.json | |
| sed -i "s#VAR_CS#https://lbcertifdirac70.cern.ch:9135/Configuration/Server#g" pilot.json | |
| sed -i "s#VAR_USERDN#/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=alboyer/CN=819281/CN=Alexandre Franck Boyer#g" pilot.json | |
| sed -i "s#VAR_USERDN_GRIDPP#${DIRACUSERDN_GRIDPP}#g" pilot.json | |
| sed -i "s#VAR_PREF_URL_PATTERN#.*\.cern\.ch/.*#g" pilot.json | |
| g_job="testintegrationworkflow${GITHUB_JOB//-/}" | |
| pilotUUID="${g_job//_/}""$(shuf -i 2000-65000 -n 1)" | |
| pilotUUID=$(echo $pilotUUID | rev | cut -c 1-32 | rev) | |
| X509_USER_PROXY=$pilot_proxy_file python dirac-pilot.py --modules https://github.com/DIRACGrid/DIRAC.git:::DIRAC:::${{ matrix.dirac_branch }} -M 1 -S DIRAC-Certification -N jenkins.cern.ch -Q jenkins-queue_not_important -n DIRAC.Jenkins.ch --wnVO=${{ matrix.VO }} --pilotUUID="${pilotUUID}" --debug | |
| release_cvmfs_CEs: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| pilot_schema: | |
| - pilot_oldSchema.json | |
| - pilot_newSchema.json | |
| ce: | |
| - jenkins.cern.ch | |
| - jenkins-singularity.cern.ch | |
| - jenkins-mp.cern.ch | |
| - jenkins-mp-pool.cern.ch | |
| - jenkins-mp-pool-singularity.cern.ch | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: cvmfs-contrib/github-action-cvmfs@v3 | |
| - name: Test CernVM-FS | |
| run: ls /cvmfs/dirac.egi.eu | |
| - name: Tests | |
| env: | |
| HOSTCERT_BASE64: ${{ secrets.HOSTCERT_BASE64 }} | |
| HOSTKEY_BASE64: ${{ secrets.HOSTKEY_BASE64 }} | |
| X509_CERT_DIR: /cvmfs/grid.cern.ch/etc/grid-security/certificates | |
| X509_VOMS_DIR: /cvmfs/grid.cern.ch/etc/grid-security/vomsdir | |
| DIRAC_VOMSES: /cvmfs/grid.cern.ch/etc/grid-security/vomses | |
| run: | | |
| mkdir -p ${GITHUB_WORKSPACE}/Client/etc/grid-security | |
| cd ${GITHUB_WORKSPACE}/Client | |
| echo "$HOSTCERT_BASE64" | base64 --decode > ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem | |
| echo "$HOSTKEY_BASE64" | base64 --decode > ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem | |
| chmod 440 ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem | |
| chmod 400 ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem | |
| version=$(curl -s "https://api.github.com/repos/DIRACGrid/DIRAC/releases" | jq -r '.[].tag_name' | sort -V | grep 'v9' | tail -n 1) | |
| source /cvmfs/dirac.egi.eu/dirac/${version}/Linux-x86_64/diracosrc | |
| pilot_proxy_file=$(mktemp) | |
| dirac-configure --ConfigurationServer=https://lbcertifdirac70.cern.ch:9135/Configuration/Server --UseServerCertificate -o /DIRAC/Security/CertFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem -o /DIRAC/Security/KeyFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem --SkipCADownload -O config.cfg | |
| dirac-admin-get-proxy fstagni dteam_pilot -o /DIRAC/Security/UseServerCertificate=yes -o /DIRAC/Security/CertFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem -o /DIRAC/Security/KeyFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem --out $pilot_proxy_file --cfg config.cfg | |
| cd ${GITHUB_WORKSPACE}/Pilot | |
| cp ../tests/CI/${{ matrix.pilot_schema }} pilot.json | |
| sed -i "s/VAR_JENKINS_SITE/DIRAC.Jenkins.ch/g" pilot.json | |
| sed -i "s/VAR_JENKINS_CE/jenkins.cern.ch/g" pilot.json | |
| sed -i "s/VAR_JENKINS_QUEUE/jenkins-queue_not_important/g" pilot.json | |
| sed -i "s/VAR_DIRAC_VERSION/${version}/g" pilot.json | |
| sed -i "s#VAR_CS#https://lbcertifdirac70.cern.ch:9135/Configuration/Server#g" pilot.json | |
| sed -i "s#VAR_USERDN#/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=alboyer/CN=819281/CN=Alexandre Franck Boyer#g" pilot.json | |
| sed -i "s#VAR_USERDN_GRIDPP#${DIRACUSERDN_GRIDPP}#g" pilot.json | |
| sed -i "s#VAR_PREF_URL_PATTERN#.*\.cern\.ch/.*#g" pilot.json | |
| g_job="testintegrationworkflow${GITHUB_JOB//-/}" | |
| pilotUUID="${g_job//_/}""$(shuf -i 2000-65000 -n 1)" | |
| pilotUUID=$(echo $pilotUUID | rev | cut -c 1-32 | rev) | |
| X509_USER_PROXY=$pilot_proxy_file python dirac-pilot.py -M 1 -S DIRAC-Certification -N ${{ matrix.ce }} -Q jenkins-queue_not_important -n DIRAC.Jenkins.ch --architectureScript=dirac-platform --preinstalledEnvPrefix=/cvmfs/dirac.egi.eu/dirac --wnVO=dteam --pilotUUID="${pilotUUID}" --debug | |
| matching: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| pilot_schema: | |
| - pilot_oldSchema.json | |
| - pilot_newSchema.json | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: cvmfs-contrib/github-action-cvmfs@v3 | |
| - name: Test CernVM-FS | |
| run: ls /cvmfs/dirac.egi.eu | |
| - name: Tests | |
| env: | |
| HOSTCERT_BASE64: ${{ secrets.HOSTCERT_BASE64 }} | |
| HOSTKEY_BASE64: ${{ secrets.HOSTKEY_BASE64 }} | |
| X509_CERT_DIR: /cvmfs/grid.cern.ch/etc/grid-security/certificates | |
| X509_VOMS_DIR: /cvmfs/grid.cern.ch/etc/grid-security/vomsdir | |
| DIRAC_VOMSES: /cvmfs/grid.cern.ch/etc/grid-security/vomses | |
| run: | | |
| mkdir -p ${GITHUB_WORKSPACE}/Client/etc/grid-security | |
| cd ${GITHUB_WORKSPACE}/Client | |
| echo "$HOSTCERT_BASE64" | base64 --decode > ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem | |
| echo "$HOSTKEY_BASE64" | base64 --decode > ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem | |
| chmod 440 ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem | |
| chmod 400 ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem | |
| version=$(curl -s "https://api.github.com/repos/DIRACGrid/DIRAC/releases" | jq -r '.[].tag_name' | sort -V | grep -v 'a' | tail -n 1) | |
| source /cvmfs/dirac.egi.eu/dirac/${version}/Linux-x86_64/diracosrc | |
| pilot_proxy_file=$(mktemp) | |
| dirac-configure --ConfigurationServer=https://lbcertifdirac70.cern.ch:9135/Configuration/Server --UseServerCertificate -o /DIRAC/Security/CertFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem -o /DIRAC/Security/KeyFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem --SkipCADownload -O config.cfg | |
| dirac-admin-get-proxy fstagni dteam_pilot -o /DIRAC/Security/UseServerCertificate=yes -o /DIRAC/Security/CertFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem -o /DIRAC/Security/KeyFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem --out $pilot_proxy_file --cfg config.cfg | |
| cd ${GITHUB_WORKSPACE}/Pilot | |
| cp ../tests/CI/${{ matrix.pilot_schema }} pilot.json | |
| sed -i "s/VAR_JENKINS_SITE/DIRAC.Jenkins.ch/g" pilot.json | |
| sed -i "s/VAR_JENKINS_CE/jenkins-full.cern.ch/g" pilot.json | |
| sed -i "s/VAR_JENKINS_QUEUE/jenkins-queue_not_important/g" pilot.json | |
| sed -i "s/VAR_DIRAC_VERSION/integration/g" pilot.json | |
| sed -i "s#VAR_CS#https://lbcertifdirac70.cern.ch:9135/Configuration/Server#g" pilot.json | |
| sed -i "s#VAR_USERDN#/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=alboyer/CN=819281/CN=Alexandre Franck Boyer#g" pilot.json | |
| sed -i "s#VAR_USERDN_GRIDPP#${DIRACUSERDN_GRIDPP}#g" pilot.json | |
| sed -i "s#VAR_PREF_URL_PATTERN#.*\.cern\.ch/.*#g" pilot.json | |
| g_job="testintegrationworkflow${GITHUB_JOB//-/}" | |
| pilotUUID="${g_job//_/}""$(shuf -i 2000-65000 -n 1)" | |
| pilotUUID=$(echo $pilotUUID | rev | cut -c 1-32 | rev) | |
| X509_USER_PROXY=$pilot_proxy_file python dirac-pilot.py --modules https://github.com/DIRACGrid/DIRAC.git:::DIRAC:::integration -M 1 -N jenkins-full.cern.ch -Q jenkins-queue_not_important -n DIRAC.Jenkins.ch --wnVO=dteam --pilotUUID="${pilotUUID}" --debug | |
| release_cvmfs_matching: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| VO: | |
| - dteam | |
| - gridpp | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: cvmfs-contrib/github-action-cvmfs@v3 | |
| - name: Test CernVM-FS | |
| run: ls /cvmfs/dirac.egi.eu | |
| - name: Tests | |
| env: | |
| HOSTCERT_BASE64: ${{ secrets.HOSTCERT_BASE64 }} | |
| HOSTKEY_BASE64: ${{ secrets.HOSTKEY_BASE64 }} | |
| X509_CERT_DIR: /cvmfs/grid.cern.ch/etc/grid-security/certificates | |
| X509_VOMS_DIR: /cvmfs/grid.cern.ch/etc/grid-security/vomsdir | |
| DIRAC_VOMSES: /cvmfs/grid.cern.ch/etc/grid-security/vomses | |
| run: | | |
| mkdir -p ${GITHUB_WORKSPACE}/Client/etc/grid-security | |
| cd ${GITHUB_WORKSPACE}/Client | |
| echo "$HOSTCERT_BASE64" | base64 --decode > ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem | |
| echo "$HOSTKEY_BASE64" | base64 --decode > ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem | |
| chmod 440 ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem | |
| chmod 400 ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem | |
| cd ${GITHUB_WORKSPACE}/Pilot | |
| version=$(curl -s "https://api.github.com/repos/DIRACGrid/DIRAC/releases" | jq -r '.[].tag_name' | sort -V | grep 'v9' | tail -n 1) | |
| source /cvmfs/dirac.egi.eu/dirac/${version}/Linux-x86_64/diracosrc | |
| pilot_proxy_file=$(mktemp) | |
| dirac-configure --ConfigurationServer=https://lbcertifdirac70.cern.ch:9135/Configuration/Server --UseServerCertificate -o /DIRAC/Security/CertFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem -o /DIRAC/Security/KeyFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem --SkipCADownload -O config.cfg | |
| dirac-admin-get-proxy fstagni dteam_pilot -o /DIRAC/Security/UseServerCertificate=yes -o /DIRAC/Security/CertFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem -o /DIRAC/Security/KeyFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem --out $pilot_proxy_file --cfg config.cfg | |
| cd ${GITHUB_WORKSPACE}/Pilot | |
| cp ../tests/CI/pilot_newSchema.json pilot.json | |
| sed -i "s/VAR_JENKINS_SITE/DIRAC.Jenkins.ch/g" pilot.json | |
| sed -i "s/VAR_JENKINS_CE/jenkins-full.cern.ch/g" pilot.json | |
| sed -i "s/VAR_JENKINS_QUEUE/jenkins-queue_not_important/g" pilot.json | |
| sed -i "s/VAR_DIRAC_VERSION/${version}/g" pilot.json | |
| sed -i "s#VAR_CS#https://lbcertifdirac70.cern.ch:9135/Configuration/Server#g" pilot.json | |
| sed -i "s#VAR_USERDN#/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=alboyer/CN=819281/CN=Alexandre Franck Boyer#g" pilot.json | |
| sed -i "s#VAR_USERDN_GRIDPP#${DIRACUSERDN_GRIDPP}#g" pilot.json | |
| sed -i "s#VAR_PREF_URL_PATTERN#.*\.cern\.ch/.*#g" pilot.json | |
| g_job="testintegrationworkflow${GITHUB_JOB//-/}" | |
| pilotUUID="${g_job//_/}""$(shuf -i 2000-65000 -n 1)" | |
| pilotUUID=$(echo $pilotUUID | rev | cut -c 1-32 | rev) | |
| X509_USER_PROXY=$pilot_proxy_file python dirac-pilot.py -M 1 -S DIRAC-Certification -N jenkins-full.cern.ch -Q jenkins-queue_not_important -n DIRAC.Jenkins.ch --preinstalledEnvPrefix=/cvmfs/dirac.egi.eu/dirac --wnVO=${{ matrix.VO }} -o cvmfsOnly --pilotUUID="${pilotUUID}" --debug | |
| release_prod-cvmfs_matching_CEs: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| ce: | |
| - jenkins-full.cern.ch | |
| - jenkins-singularity-full.cern.ch | |
| - jenkins-mp-full.cern.ch | |
| - jenkins-mp-pool-full.cern.ch | |
| - jenkins-mp-pool-singularity-full.cern.ch | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: cvmfs-contrib/github-action-cvmfs@v3 | |
| - name: Test CernVM-FS | |
| run: ls /cvmfs/dirac.egi.eu | |
| - name: Tests | |
| env: | |
| HOSTCERT_BASE64: ${{ secrets.HOSTCERT_BASE64 }} | |
| HOSTKEY_BASE64: ${{ secrets.HOSTKEY_BASE64 }} | |
| X509_CERT_DIR: /cvmfs/grid.cern.ch/etc/grid-security/certificates | |
| X509_VOMS_DIR: /cvmfs/grid.cern.ch/etc/grid-security/vomsdir | |
| DIRAC_VOMSES: /cvmfs/grid.cern.ch/etc/grid-security/vomses | |
| run: | | |
| mkdir -p ${GITHUB_WORKSPACE}/Client/etc/grid-security | |
| cd ${GITHUB_WORKSPACE}/Client | |
| echo "$HOSTCERT_BASE64" | base64 --decode > ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem | |
| echo "$HOSTKEY_BASE64" | base64 --decode > ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem | |
| chmod 440 ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem | |
| chmod 400 ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem | |
| version=$(curl -s "https://api.github.com/repos/DIRACGrid/DIRAC/releases" | jq -r '.[].tag_name' | sort -V | grep -v 'a' | tail -n 1) | |
| source /cvmfs/dirac.egi.eu/dirac/${version}/Linux-x86_64/diracosrc | |
| pilot_proxy_file=$(mktemp) | |
| dirac-configure --ConfigurationServer=https://lbcertifdirac70.cern.ch:9135/Configuration/Server --UseServerCertificate -o /DIRAC/Security/CertFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem -o /DIRAC/Security/KeyFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem --SkipCADownload -O config.cfg | |
| dirac-admin-get-proxy fstagni dteam_pilot -o /DIRAC/Security/UseServerCertificate=yes -o /DIRAC/Security/CertFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem -o /DIRAC/Security/KeyFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem --out $pilot_proxy_file --cfg config.cfg | |
| cd ${GITHUB_WORKSPACE}/Pilot | |
| cp ../tests/CI/pilot_newSchema.json pilot.json | |
| sed -i "s/VAR_JENKINS_SITE/DIRAC.Jenkins.ch/g" pilot.json | |
| sed -i "s/VAR_JENKINS_CE/${{ matrix.ce }}/g" pilot.json | |
| sed -i "s/VAR_JENKINS_QUEUE/jenkins-queue_not_important/g" pilot.json | |
| sed -i "s/VAR_DIRAC_VERSION/${version}/g" pilot.json | |
| sed -i "s#VAR_CS#https://lbcertifdirac70.cern.ch:9135/Configuration/Server#g" pilot.json | |
| sed -i "s#VAR_USERDN#/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=alboyer/CN=819281/CN=Alexandre Franck Boyer#g" pilot.json | |
| sed -i "s#VAR_USERDN_GRIDPP#${DIRACUSERDN_GRIDPP}#g" pilot.json | |
| sed -i "s#VAR_PREF_URL_PATTERN#.*\.cern\.ch/.*#g" pilot.json | |
| g_job="testintegrationworkflow${GITHUB_JOB//-/}" | |
| pilotUUID="${g_job//_/}""$(shuf -i 2000-65000 -n 1)" | |
| pilotUUID=$(echo $pilotUUID | rev | cut -c 1-32 | rev) | |
| X509_USER_PROXY=$pilot_proxy_file python dirac-pilot.py -M 1 -N ${{ matrix.ce }} -Q jenkins-queue_not_important -n DIRAC.Jenkins.ch --preinstalledEnvPrefix=/cvmfs/dirac.egi.eu/dirac --StopAfterFailedMatches=1 --wnVO=dteam -o cvmfsOnly --pilotUUID="${pilotUUID}" --debug | |
| ################################## | |
| ### # extensions tests | |
| ################################## | |
| ################################## | |
| #### LHCb | |
| ext-lhcb_integration: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| pilot_schema: | |
| - pilot_oldSchema.json | |
| - pilot_newSchema.json | |
| pilot_version: | |
| - master | |
| - devel | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: cvmfs-contrib/github-action-cvmfs@v3 | |
| - name: Test CernVM-FS | |
| run: ls /cvmfs/lhcb.cern.ch | |
| - name: Tests | |
| env: | |
| HOSTCERT_BASE64: ${{ secrets.HOSTCERT_BASE64 }} | |
| HOSTKEY_BASE64: ${{ secrets.HOSTKEY_BASE64 }} | |
| X509_CERT_DIR: /cvmfs/lhcb.cern.ch/etc/grid-security/certificates | |
| X509_VOMS_DIR: /cvmfs/lhcb.cern.ch/etc/grid-security/vomsdir | |
| DIRAC_VOMSES: /cvmfs/lhcb.cern.ch/etc/grid-security/vomses | |
| run: | | |
| mkdir -p ${GITHUB_WORKSPACE}/Client/etc/grid-security | |
| cd ${GITHUB_WORKSPACE}/Client | |
| echo "$HOSTCERT_BASE64" | base64 --decode > ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem | |
| echo "$HOSTKEY_BASE64" | base64 --decode > ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem | |
| chmod 440 ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem | |
| chmod 400 ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem | |
| version=$(echo $(curl -s "https://gitlab.cern.ch/api/v4/projects/3588/releases") | jq -r '.[].name' | sort -V | grep -v 'a' | tail -n 1) | |
| source /cvmfs/lhcb.cern.ch/lhcbdirac/${version}/Linux-x86_64/diracosrc | |
| pilot_proxy_file=$(mktemp) | |
| dirac-configure --ConfigurationServer=https://lbcertifdirac70.cern.ch:9135/Configuration/Server --UseServerCertificate -o /DIRAC/Security/CertFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem -o /DIRAC/Security/KeyFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem --SkipCADownload -O config.cfg | |
| X509_CERT_DIR="/cvmfs/lhcb.cern.ch/etc/grid-security/certificates" X509_VOMS_DIR="/cvmfs/lhcb.cern.ch/etc/grid-security/vomsdir" DIRAC_VOMSES="/cvmfs/lhcb.cern.ch/etc/grid-security/vomses" dirac-admin-get-proxy fstagni dteam_pilot -o /DIRAC/Security/UseServerCertificate=yes -o /DIRAC/Security/CertFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem -o /DIRAC/Security/KeyFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem --out $pilot_proxy_file --cfg config.cfg | |
| cd ${GITHUB_WORKSPACE}/Pilot | |
| export VO_LHCB_SW_DIR=${GITHUB_WORKSPACE}/Pilot | |
| curl https://gitlab.cern.ch/lhcb-dirac/LHCbPilot/-/raw/${{ matrix.pilot_version }}/LHCbPilot/LHCbPilotCommands.py -o LHCbPilotCommands.py | |
| cp ../tests/CI/${{ matrix.pilot_schema }} pilot.json | |
| sed -i "s/VAR_JENKINS_SITE/DIRAC.Jenkins.ch/g" pilot.json | |
| sed -i "s/VAR_JENKINS_CE/jenkins-lhcb.cern.ch/g" pilot.json | |
| sed -i "s/VAR_JENKINS_QUEUE/jenkins-queue_not_important/g" pilot.json | |
| sed -i "s/VAR_DIRAC_VERSION/${version}/g" pilot.json | |
| sed -i "s#VAR_CS#https://lbcertifdirac70.cern.ch:9135/Configuration/Server#g" pilot.json | |
| sed -i "s#VAR_USERDN#/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=alboyer/CN=819281/CN=Alexandre Franck Boyer#g" pilot.json | |
| sed -i "s#VAR_USERDN_GRIDPP#${DIRACUSERDN_GRIDPP}#g" pilot.json | |
| sed -i "s#VAR_PREF_URL_PATTERN#.*\.cern\.ch/.*#g" pilot.json | |
| g_job="testintegrationworkflow${GITHUB_JOB//-/}" | |
| pilotUUID="${g_job//_/}""$(shuf -i 2000-65000 -n 1)" | |
| pilotUUID=$(echo $pilotUUID | rev | cut -c 1-32 | rev) | |
| X509_USER_PROXY=$pilot_proxy_file python dirac-pilot.py -M 1 -N jenkins-lhcb.cern.ch -Q jenkins-queue_not_important -n DIRAC.Jenkins.ch -e LHCb -l LHCb -E LHCbPilot --architectureScript=dirac-architecture --wnVO=LHCb -o lbRunOnly --pilotUUID="${pilotUUID}" --debug | |
| ext-lhcb_integration_cvmfs: | |
| runs-on: ubuntu-latest | |
| strategy: | |
| matrix: | |
| pilot_schema: | |
| - pilot_oldSchema.json | |
| - pilot_newSchema.json | |
| pilot_version: | |
| - master | |
| - devel | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - uses: cvmfs-contrib/github-action-cvmfs@v3 | |
| - name: Test CernVM-FS | |
| run: ls /cvmfs/lhcb.cern.ch | |
| - name: tests | |
| env: | |
| HOSTCERT_BASE64: ${{ secrets.HOSTCERT_BASE64 }} | |
| HOSTKEY_BASE64: ${{ secrets.HOSTKEY_BASE64 }} | |
| X509_CERT_DIR: /cvmfs/lhcb.cern.ch/etc/grid-security/certificates | |
| X509_VOMS_DIR: /cvmfs/lhcb.cern.ch/etc/grid-security/vomsdir | |
| DIRAC_VOMSES: /cvmfs/lhcb.cern.ch/etc/grid-security/vomses | |
| run: | | |
| mkdir -p ${GITHUB_WORKSPACE}/Client/etc/grid-security | |
| cd ${GITHUB_WORKSPACE}/Client | |
| echo "$HOSTCERT_BASE64" | base64 --decode > ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem | |
| echo "$HOSTKEY_BASE64" | base64 --decode > ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem | |
| chmod 440 ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem | |
| chmod 400 ${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem | |
| version=$(echo $(curl -s "https://gitlab.cern.ch/api/v4/projects/3588/releases") | jq -r '.[].name' | sort -V | grep -v 'a' | tail -n 1) | |
| source /cvmfs/lhcb.cern.ch/lhcbdirac/${version}/Linux-x86_64/diracosrc | |
| pilot_proxy_file=$(mktemp) | |
| dirac-configure --ConfigurationServer=https://lbcertifdirac70.cern.ch:9135/Configuration/Server --UseServerCertificate -o /DIRAC/Security/CertFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem -o /DIRAC/Security/KeyFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem --SkipCADownload -O config.cfg | |
| dirac-admin-get-proxy fstagni dteam_pilot -o /DIRAC/Security/UseServerCertificate=yes -o /DIRAC/Security/CertFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostcert.pem -o /DIRAC/Security/KeyFile=${GITHUB_WORKSPACE}/Client/etc/grid-security/hostkey.pem --out $pilot_proxy_file --cfg config.cfg | |
| cd ${GITHUB_WORKSPACE}/Pilot | |
| curl https://gitlab.cern.ch/lhcb-dirac/LHCbPilot/-/raw/${{ matrix.pilot_version }}/LHCbPilot/LHCbPilotCommands.py -o LHCbPilotCommands.py | |
| cp ../tests/CI/${{ matrix.pilot_schema }} pilot.json | |
| sed -i "s/VAR_JENKINS_SITE/DIRAC.Jenkins.ch/g" pilot.json | |
| sed -i "s/VAR_JENKINS_CE/jenkins-lhcb-d.cern.ch/g" pilot.json | |
| sed -i "s/VAR_JENKINS_QUEUE/jenkins-queue_not_important/g" pilot.json | |
| sed -i "s/VAR_DIRAC_VERSION/${version}/g" pilot.json | |
| sed -i "s#VAR_CS#https://lbcertifdirac70.cern.ch:9135/Configuration/Server#g" pilot.json | |
| sed -i "s#VAR_USERDN#/DC=ch/DC=cern/OU=Organic Units/OU=Users/CN=alboyer/CN=819281/CN=Alexandre Franck Boyer#g" pilot.json | |
| sed -i "s#VAR_USERDN_GRIDPP#${DIRACUSERDN_GRIDPP}#g" pilot.json | |
| g_job="testintegrationworkflow${GITHUB_JOB//-/}" | |
| pilotUUID="${g_job//_/}""$(shuf -i 2000-65000 -n 1)" | |
| pilotUUID=$(echo $pilotUUID | rev | cut -c 1-32 | rev) | |
| X509_USER_PROXY=$pilot_proxy_file python dirac-pilot.py -M 1 -N jenkins-lhcb.cern.ch -Q jenkins-queue_not_important -n DIRAC.Jenkins.ch -e LHCb -l LHCb -E LHCbPilot --preinstalledEnvPrefix=/cvmfs/lhcb.cern.ch/lhcbdirac/ --wnVO=LHCb -o cvmfsOnly --pilotUUID="${pilotUUID}" --debug |