installation¶
The installation of the local code git repository is done via ansible.
Note
In role bliss
task local_bliss_code.yml
A local beamline repository generates a directory structure. This is done using cookicutter (https://gitlab.esrf.fr/bliss/cookiecutter) :
docs/
idXX/
tests/
.gitignore
.gitlab-ci.yml
LICENSE
MANIFEST.in
README.rst
setup.cfg
setup.py
README.rst
usage¶
Local code has to be put in ~/local/idXX.git/idXX/
directory.
Example: ~/local/idXX.git/idXX/bl_utils.py
import time
def align_the_beamline():
print("I'm aligning the beamline")
print("please wait...")
time.sleep(0.5)
print("...beamline aligned")
It can then easily be used in a BLISS session:
Example
from idXX.bl_utils import align_the_beamline
align_the_beamline()
manual installation¶
If you want to create such a repo without running ansible, here is a short recipe:
Just replace all XX by your Beamline number.
manual execution of roles/bliss/tasks/local_bliss_code.yml
- Ensure
/users/blissadm/local/idXX.git
does not exist
ll /users/blissadm/local/idXX.git
- Ensure repository https://gitlab.esrf.fr/idXX/idXX does not exist on gitlab:
git ls-remote git@gitlab.esrf.fr:idXX/idXX.git
X11 forwarding request failed on channel 0
remote:
remote: ========================================================================
remote:
remote: The project you were looking for could not be found or you don't have permission to view it.
remote:
remote: ========================================================================
remote:
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
In a conda env:
pip install cookiecutter
cookiecutter --no-input --output-dir=/users/blissadm/local/ git@gitlab.esrf.fr:bliss/cookiecutter.git beamline=IDXX root_name=idXX.git
cd /users/blissadm/local/idXX.git/
git init
git add .
git remote add origin git@gitlab.esrf.fr:idXX/idXX.git