Code Monkey home page Code Monkey logo

ginfo's Introduction

ginfo

A versatile tool for discovering Grid services by querying LDAP-based Grid information services.

BDII documentation is available at gridinfo documentation site.

Installing from packages

On RHEL-based systems

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.

Building packages

A Makefile allowing to build source tarball and packages is provided.

Building a RPM

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.

Installing from source

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.

Running tests

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

  1. Move to folder ./tests
  2. Launch server using ./run-db
  3. export PATH=../bin:$PATH
  4. Run tests using ./test-ginfo.py

Usage

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

Preparing a release

  • Prepare a changelog from the last version, including contributors' names
  • Prepare a PR with
  • 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

History

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.

ginfo's People

Contributors

gwarf avatar lfield avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

lfield gwarf

ginfo's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.