A versatile tool for discovering Grid services by querying LDAP-based Grid information services.
BDII documentation is available at gridinfo documentation site.
On RHEL-based systems, it's possible to install packages from EPEL or EGI UMD packages.
The UMD packages are built automatically from this repository, and tested to work with other components part of the Unified Middleware Distribution.
A Makefile allowing to build source tarball and packages is provided.
The required build dependencies are:
- rpm-build
- make
- rsync
- python
- python-ldap
# Checkout tag to be packaged
$ git clone https://github.com/EGI-Foundation/ginfo.git
$ cd ginfo
$ git checkout X.X.X
# Building in a container
$ docker run --rm -v $(pwd):/source -it quay.io/centos/centos:7
[root@8a9d60c61f42 /]# cd /source
[root@8a9d60c61f42 /]# yum install -y rpm-build yum-utils
[root@8a9d60c61f42 /]# yum-builddep -y ginfo.spec
[root@8a9d60c61f42 /]# make rpm
The RPM will be available into the build/RPMS
directory.
This procedure is not recommended for production deployment, please consider using packages.
- Build dependencies: None
- Runtime dependencies: python, python-ldap
Get the source by cloning this repository and do a make install
.
Tests are in tests/ folder.
Most of the tests are currently outdated and turned off.
Requirements:
- psmisc, time, python3-commands
- ginfo in
PATH
- a BDII installed locally (see bdii-config-site)
The tests will delete the local BDII database
- Move to folder ./tests
- Launch server using
./run-db
- export PATH=../bin:$PATH
- Run tests using
./test-ginfo.py
See usage in the manpage (ginfo (1)).
# List all information for all Endpoint attributes
ginfo --host lcg-bdii.egi.eu Endpoint
# Use the host from the LCG_GFAL_INFOSYS environment variable and list all Location countries
export LCG_GFAL_INFOSYS=lcg-bdii.egi.eu:2170
ginfo Location Country
# List all the Service types
ginfo -l Type Service
# List all IDs from Endpoint which have 'bdii_top' as name of Interface
ginfo Endpoint InterfaceName=bdii_top ID
# Show the version too
ginfo Endpoint InterfaceName=bdii_top ID InterfaceVersion
# Show all available information about these Endpoints"
ginfo Endpoint InterfaceName=bdii_top
# Export to JSON
ginfo --json Endpoint InterfaceName=bdii_top
- Prepare a changelog from the last version, including contributors' names
- Prepare a PR with
- Updating version and changelog in
- Once the PR has been merged tag and release a new version in GitHub
- Packages will be built using GitHub Actions and attached to the release page
This work started under the EGEE project, and was hosted and maintained for a long time by CERN. This is now hosted here on GitHub, maintained by the BDII community with support of members of the EGI Federation.