ckanext-status
A CKAN extension that adds a 'status' bar to the top of the page.
Science Score: 62.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
-
✓Committers with academic emails
1 of 4 committers (25.0%) from academic institutions -
✓Institutional organization owner
Organization naturalhistorymuseum has institutional domain (www.nhm.ac.uk) -
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (16.0%) to scientific vocabulary
Keywords
Repository
A CKAN extension that adds a 'status' bar to the top of the page.
Basic Info
Statistics
- Stars: 1
- Watchers: 6
- Forks: 1
- Open Issues: 0
- Releases: 17
Topics
Metadata Files
README.md
ckanext-status
A CKAN extension that adds a 'status' bar and an extensible system status page.
Overview
This extension allows maintainers to add a simple static message to the top of every page by setting a single configuration option. For example, it can be used to notify users of planned downtime, unexpected issues with the site, or new features.
It also adds a status page giving an overview of the health of various systems. By default this has very few items, but it is easily extensible by other CKAN extensions.
Installation
Path variables used below:
- $INSTALL_FOLDER (i.e. where CKAN is installed), e.g. /usr/lib/ckan/default
- $CONFIG_FILE, e.g. /etc/ckan/default/development.ini
Installing from PyPI
shell
pip install ckanext-status
Installing from source
Clone the repository into the
srcfolder:shell cd $INSTALL_FOLDER/src git clone https://github.com/NaturalHistoryMuseum/ckanext-status.gitActivate the virtual env:
shell . $INSTALL_FOLDER/bin/activateInstall via pip:
shell pip install $INSTALL_FOLDER/src/ckanext-status
Installing in editable mode
Installing from a pyproject.toml in editable mode (i.e. pip install -e) requires setuptools>=64; however, CKAN 2.9 requires setuptools==44.1.0. See our CKAN fork for a version of v2.9 that uses an updated setuptools if this functionality is something you need.
Post-install setup
Add 'status' to the list of plugins in your
$CONFIG_FILE:ini ckan.plugins = ... statusInstall
lesscglobally:shell npm install -g "less@~4.1"
Configuration
Usage
Status bar
To turn the status bar on, login as a sysadmin and head to the system configuration page.
There, just set the ckanext.status.message config option.
To deactivate it, just remove the contents of the text box.
This extension adds content to the {% block skip %} section of page.html. To add it elsewhere:
html+jinja
{% if h.status_get_message() %}
{% resource 'ckanext-status/main' %}
<p id="status-bar">{{ h.status_get_message() }}</p>
{% endif %}
Status page
The status page can be found at /status, or the JSON response can be accessed from the API at /api/3/action/status_list. By default it only contains one status report: the number of queues with pending items. Additional status report items come from other CKAN extensions implementing the IStatus interface.
To add status report items in another extension, add the modify_status_reports method of the IStatus interface in plugin.py:
```python
from ckan.plugins import SingletonPlugin, implements
from ckanext.status.interfaces import IStatus
class ExamplePlugin(SingletonPlugin): implements(IStatus)
def modify_status_reports(self, status_reports):
status_reports.append({
'label': 'Example status',
'value': 'connected',
'group': 'Examples', # can be omitted
'help': 'A description of what this means',
'state': 'good' # valid values: good, ok, bad, neutral
})
return status_reports
```
Testing
There is a Docker compose configuration available in this repository to make it easier to run tests. The ckan image uses the Dockerfile in the docker/ folder.
To run the tests against ckan 2.9.x on Python3:
Build the required images:
shell docker compose buildThen run the tests. The root of the repository is mounted into the ckan container as a volume by the Docker compose configuration, so you should only need to rebuild the ckan image if you change the extension's dependencies.
shell docker compose run ckan
Owner
- Name: Natural History Museum
- Login: NaturalHistoryMuseum
- Kind: organization
- Location: London
- Website: https://www.nhm.ac.uk
- Repositories: 171
- Profile: https://github.com/NaturalHistoryMuseum
Citation (CITATION.cff)
cff-version: 1.2.0
title: CKAN Status extension
message: >-
If you use this software, please cite it using the
metadata from this file.
type: software
authors:
- name: Natural History Museum
city: London
country: GB
alias: NHM
email: data@nhm.ac.uk
repository-code: 'https://github.com/NaturalHistoryMuseum/ckanext-status'
abstract: A CKAN extension that adds a 'status' bar to the top of the page.
keywords:
- ckan
- ckanext
- status
license: GPL-3.0-or-later
version: 2.4.4
GitHub Events
Total
- Release event: 1
- Delete event: 5
- Issue comment event: 1
- Push event: 11
- Pull request event: 11
- Create event: 6
Last Year
- Release event: 1
- Delete event: 5
- Issue comment event: 1
- Push event: 11
- Pull request event: 11
- Create event: 6
Committers
Last synced: almost 3 years ago
All Time
- Total Commits: 55
- Total Committers: 4
- Avg Commits per committer: 13.75
- Development Distribution Score (DDS): 0.309
Top Committers
| Name | Commits | |
|---|---|---|
| Alice Butcher | a****i@g****m | 38 |
| github-actions[bot] | g****]@u****m | 7 |
| Josh Humphries | j****s@n****k | 6 |
| benscott | b****n@b****k | 4 |
Committer Domains (Top 20 + Academic)
Packages
- Total packages: 1
-
Total downloads:
- pypi 194 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 16
- Total maintainers: 1
pypi.org: ckanext-status
A CKAN extension that adds a 'status' bar to the top of the page.
- Documentation: https://ckanext-status.readthedocs.io/
- License: GPL-3.0-or-later
-
Latest release: 2.4.4
published 9 months ago
Rankings
Maintainers (1)
Dependencies
- actions/checkout v3 composite
- commitizen-tools/commitizen-action master composite
- softprops/action-gh-release v1 composite
- actions/checkout v3 composite
- actions/checkout v3 composite
- actions/setup-python v3 composite
- pypa/gh-action-pypi-publish release/v1 composite
- naturalhistorymuseum/ckantest 0.2 build
- ckan/ckan-solr 2.9
- redis latest
- mkdocs *
- mkdocs-gen-files *
- mkdocs-include-markdown-plugin *
- mkdocs-material *
- mkdocs-section-index *
- mkdocstrings *
- ckantools >=0.3.0