gxadmin

Handy command line utility for Galaxy administrators :rocket:

https://github.com/galaxyproject/gxadmin

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (10.7%) to scientific vocabulary

Keywords

automation galaxy galaxy-project hacktoberfest postgres-databases sql sysadmin
Last synced: 4 months ago · JSON representation ·

Repository

Handy command line utility for Galaxy administrators :rocket:

Basic Info
Statistics
  • Stars: 23
  • Watchers: 18
  • Forks: 29
  • Open Issues: 20
  • Releases: 8
Topics
automation galaxy galaxy-project hacktoberfest postgres-databases sql sysadmin
Created about 7 years ago · Last pushed 10 months ago
Metadata Files
Readme Changelog Contributing License Code of conduct Citation

README.md

gxadmin: Make Galaxy administration magical 🌈

A command line tool for Galaxy administrators to run common queries against our Postgres databases. It additionally includes some code for managing Galaxy and associated features, and other utilities.

Mostly gxadmin acts as a repository for the common queries we all run regularly but fail to share with each other.

It comes with a wide array of useful queries that you might want to run, but you can also easily add more to your installation with local functions. gxadmin attempts to be a very readable bash script and avoids using fancy new bash features.

Subcommand | Functions ---- | --- query | 104 server | 22 mutate | 22 meta | 12 galaxy | 12 report | 5 filter | 3 config | 2 cluster | 1

This script requires a postgres database and has no plans to support mysql or sqlite3.

If we do support sqlite3 in the future, it will be on a "if you're lucky" type basis, we won't be modifying queries to remove postgres-ism.

Installation

curl -L https://github.com/galaxyproject/gxadmin/releases/latest/download/gxadmin > /usr/bin/gxadmin chmod +x /usr/bin/gxadmin

Contributing

See CONTRIBUTING.md

Changelog

Changelog

Contributors

License

GPLv3

Configuration

gxadmin does not have much configuration, mostly env vars and functions will complain if you don't have them set properly.

Postgres

Queries support being run in normal postgres table, csv, or tsv output as you need. Just use gxadmin query, gxadmin tsvquery, or gxadmin csvquery as appropriate.

You should have a ~/.pgpass with the database connection information, and set PGDATABASE, PGHOST, and PGUSER in your environment.

Example .pgpass:

<pg_host>:5432:*:<pg_user>:<pg_password>

InfluxDB

In order to use functions like gxadmin meta influx-post, gxadmin requires a few environment variables to be set. Namely * INFLUX_URL * INFLUX_PASS * INFLUX_USER * INFLUX_DB

Other Environment Variables

Some subcommands may ask you to set these environment variables, if they aren't already.

Variable | Example Value --- | --- GALAXY_CONFIG_DIR | /srv/galaxy/config/ GALAXY_CONFIG_FILE | /srv/galaxy/config/galaxy.yml GALAXY_LOG_DIR | /var/log/galaxy/ GALAXY_MUTABLE_CONFIG_DIR | /srv/galaxy/var/ GALAXY_ROOT | /srv/galaxy/server/ VIRTUAL_ENV | /srv/galaxy/venv/

GDPR

You may want to set GDPR_MODE=1. Please determine your own legal responsibilities, the authors take no responsibility for anything you may have done wrong.

If you want to publish data, first be careful! Second, the GDPR_MODE variable is part of the hash, so you can set it to something like GDPR_MODE=$(openssl rand -hex 24 2>/dev/null) gxadmin query ... for hashing and "throwing away the key"

Local Functions

If you want to add some site-specific functions, you can do this in ~/.config/gxadmin-local.sh (location can be overridden by setting $GXADMIN_SITE_SPECIFIC)

You should write a bash script which looks like. ALL functions must be prefixed with local_

```bash localcats() { ## : Makes cat noises handlehelp "$@" <<-EOF Here is some documentation on this function EOF

echo "Meow"

} ```

This can then be called with gxadmin like:

```console $ gxadmin local cats --help gxadmin local functions usage:

cats   Cute kitties

help / -h / --help : this message. Invoke '--help' on any subcommand for help specific to that subcommand $ gxadmin local cats Meow $ ```

If you prefix the function name with query-, e.g. local_query-cats, then it will be run as a database query. CSV/TSV/Influx queries are not currently supported.

Owner

  • Name: Galaxy Project
  • Login: galaxyproject
  • Kind: organization
  • Email: outreach@galaxyproject.org

Galaxy is an open, web-based platform for data-intensive research.

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: gxadmin
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Helena
    family-names: Rasche
    email: hexylena@galaxians.org
    affiliation: Department of Pathology and Clinical Bioinformatics, Erasmus Medical Center, Wytemaweg 80, 3015 CN, Rotterdam, The Netherlands
    orcid: 'https://orcid.org/0000-0001-9760-8992'
  - given-names: Nate
    family-names: Coraor
    orcid: 'https://orcid.org/0000-0001-8083-2963'
  - given-names: Simon
    family-names: Gladman
    orcid: 'https://orcid.org/0000-0002-6100-4385'
  - given-names: Catherine
    family-names: Bromhead
  - given-names: Anthony
    family-names: Bretaudaeu
    orcid: 'https://orcid.org/0000-0003-0914-2470'
  - given-names: John
    family-names: Chilton
    orcid: 'https://orcid.org/0000-0002-6794-0756'
  - given-names: Gianmauro
    family-names: Cuccuru
    orcid: 'https://orcid.org/0000-0002-5335-545X'
  - given-names: Lucille
    family-names: Delisle
    orcid: 'https://orcid.org/0000-0002-1964-4960'
  - given-names: Manuel
    family-names: Messner
  - given-names: Kim
    family-names: Brügger
identifiers:
  - type: url
    value: 'https://github.com/galaxyproject/gxadmin'
    description: Source Code
  - type: doi
    value: '10.5281/zenodo.7615030'
repository-code: 'https://github.com/galaxyproject/gxadmin'
url: 'https://galaxyproject.github.io/gxadmin/'
keywords:
  - sql
  - bash
  - galaxy
  - galaxyproject
license: GPL-3.0-or-later
version: v22
date-released: 2024-03-28

GitHub Events

Total
  • Issues event: 7
  • Delete event: 2
  • Issue comment event: 6
  • Push event: 5
  • Pull request review comment event: 7
  • Pull request review event: 10
  • Pull request event: 13
  • Fork event: 2
  • Create event: 1
Last Year
  • Issues event: 7
  • Delete event: 2
  • Issue comment event: 6
  • Push event: 5
  • Pull request review comment event: 7
  • Pull request review event: 10
  • Pull request event: 13
  • Fork event: 2
  • Create event: 1

Issues and Pull Requests

Last synced: 4 months ago

All Time
  • Total issues: 33
  • Total pull requests: 73
  • Average time to close issues: 9 months
  • Average time to close pull requests: 25 days
  • Total issue authors: 13
  • Total pull request authors: 20
  • Average comments per issue: 0.76
  • Average comments per pull request: 1.41
  • Merged pull requests: 65
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 4
  • Pull requests: 10
  • Average time to close issues: 1 day
  • Average time to close pull requests: 2 days
  • Issue authors: 4
  • Pull request authors: 6
  • Average comments per issue: 0.25
  • Average comments per pull request: 0.4
  • Merged pull requests: 5
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • bgruening (10)
  • hexylena (9)
  • mira-miracoli (2)
  • sanjaysrikakulam (1)
  • yvanlebras (1)
  • beatrizserrano (1)
  • Slugger70 (1)
  • gallardoalba (1)
  • martenson (1)
  • cat-bro (1)
  • lldelisle (1)
  • NilsKrattinger (1)
  • natefoo (1)
Pull Request Authors
  • natefoo (29)
  • cat-bro (8)
  • mira-miracoli (7)
  • afgane (6)
  • pauldg (5)
  • hexylena (5)
  • lldelisle (4)
  • gmauro (3)
  • mvdbeek (3)
  • pavanvidem (3)
  • gregvonkuster (2)
  • jdavcs (2)
  • TomasVondrak (2)
  • abretaud (2)
  • hujambo-dunia (2)
Top Labels
Issue Labels
feature request (8) good first issue (2) enhancement (1) help wanted (1)
Pull Request Labels

Dependencies

.github/workflows/ci.yml actions
  • actions/checkout v2 composite
  • mig4/setup-bats v1 composite
.github/workflows/create-release.yml actions
  • actions/checkout v2 composite
  • mig4/setup-bats v1 composite
  • ncipollo/release-action v1 composite
.github/workflows/publish.yml actions
  • actions/checkout v2 composite
  • ncipollo/release-action v1 composite