gros-server
Web application framework for building authenticated services with templating support
Science Score: 67.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
Found 4 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (16.7%) to scientific vocabulary
Keywords
Repository
Web application framework for building authenticated services with templating support
Basic Info
- Host: GitHub
- Owner: grip-on-software
- License: apache-2.0
- Language: Python
- Default Branch: master
- Homepage: https://gros.liacs.nl
- Size: 81.1 KB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 2
Topics
Metadata Files
README.md
GROS Python server framework
This repository contains a framework for setting up a Web application based on Python modules, using CherryPy for routing.
This framework is used for a few servers within the Grip on Software pipeline, namely the deployer and status-dashboard repositories.
Installation and building
The latest version of GROS server framework module and its dependencies can be
installed using pip install gros-server. In order to use LDAP as the
authentication scheme, use pip install gros-server[ldap].
Another option is to build the module from this repository, which allows using
the most recent development code. Some functionality of the server framework is
based on the data gathering module
and requires a proper installation of that package. It and other dependencies
may be installed using make setup. The server framework itself may then be
installed with make install, which places the package in your current
environment. We recommend using a virtual environment during development.
Use make build in order to generate a wheel package for the framework. The
files can then be found in the dist directory (and installed from there using
pip install <path>).
The Jenkinsfile in this repository contains steps to build the package and
upload it to a PyPi-based repository so that it may be installed from there,
when built on a Jenkins CI server.
Development and testing
To run tests, first install the test dependencies with make setup_test which
also installs all dependencies for the server framework. Then make coverage
provides test results in the output and in XML versions compatible with, e.g.,
JUnit and SonarQube available in the test-reports/ directory. If you do not
need XML outputs, then run make test to just report on test successes and
failures or make cover to also have the terminal report on hits and misses in
statements and branches.
GitHub Actions is used to run the unit tests and report on coverage on commits and pull requests. This includes quality gate scans tracked by SonarCloud and Coveralls for coverage history.
The Python module conforms to code style and typing standards which can be
checked using Pylint with make pylint and mypy with make mypy, after
installing the pylint and mypy dependencies using make setup_analysis; typing
reports are XML formats compatible with JUnit and SonarQube placed in the
mypy-report/ directory. To also receive the HTML report, use make mypy_html
instead.
We publish releases to PyPI using
make setup_release to install dependencies and make release which performs
multiple checks: unit tests, typing, lint and version number consistency. The
release files are also published on
GitHub and
from there are archived on
Zenodo. Noteworthy changes to
the module are added to the changelog.
Owner
- Name: Grip on Software
- Login: grip-on-software
- Kind: organization
- Location: Netherlands
- Website: https://gros.liacs.nl
- Repositories: 1
- Profile: https://github.com/grip-on-software
Large-scale data-driven analysis of Scrum software development practices
Citation (CITATION.cff)
cff-version: 1.2.0
title: >-
Web application framework for building authenticated services with
templating support
message: Please cite this software as follows.
type: software
authors:
- given-names: Leon
family-names: Helwerda
email: l.s.helwerda@liacs.leidenuniv.nl
affiliation: Leiden University
orcid: 'https://orcid.org/0000-0002-4299-466X'
repository-code: 'https://github.com/grip-on-software/server-framework'
url: 'https://gros.liacs.nl/'
keywords:
- server framework
- authentication
- templates
license: Apache-2.0
version: 1.0.0
GitHub Events
Total
Last Year
Packages
- Total packages: 1
-
Total downloads:
- pypi 33 last-month
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 2
- Total maintainers: 1
pypi.org: gros-server
Grip on Software server framework
- Homepage: https://gros.liacs.nl
- Documentation: https://gros-server.readthedocs.io/
- License: Apache 2.0
-
Latest release: 1.0.0
published over 1 year ago