https://github.com/digital-botanical-gardens-initiative/qfieldcloud-fetcher

https://github.com/digital-botanical-gardens-initiative/qfieldcloud-fetcher

Science Score: 26.0%

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

  • 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.2%) to scientific vocabulary
Last synced: 5 months ago · JSON representation

Repository

Basic Info
  • Host: GitHub
  • Owner: digital-botanical-gardens-initiative
  • License: other
  • Language: HTML
  • Default Branch: main
  • Size: 3.69 MB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 4
  • Releases: 0
Created over 1 year ago · Last pushed 7 months ago
Metadata Files
Readme Contributing License

README.md

qfieldcloud-fetcher

Release Build status codecov Commit activity License

A python project to fetch data from a QFieldCloud instance, prepare pictures for iNaturalist import and add data to NextCloud.

Prerequisites

Having a self-hosted instance of QFieldCloud or having an account on the offical instance of QFieldCloud. To create a QFieldCloud self-hosted instance see https://github.com/digital-botanical-gardens-initiative/QFieldCloud/

Having a self-hosted instance of Directus or having an account on the official instance of Directus. To create a Directus self-hosted instance see https://github.com/digital-botanical-gardens-initiative/Directus-prod/

Having a self-hosted instance of NextCloud. To create a NextCloud self-hosted instance see https://github.com/digital-botanical-gardens-initiative/NextCloud/

Setup

1. Clone the repository to your local machine:

bash git clone https://github.com/digital-botanical-gardens-initiative/qfieldcloud-fetcher.git cd qfieldcloud-fetcher

2. Create a .env file in the root folder and edit it to suit your needs:

bash cp .env.example .env vim .env

3. set up an environment with poetry:

bash poetry install

Then activate the environment:

bash poetry shell

and run the main.py script:

bash python main.py

If you do not have poetry, you can install it with the command:

bash pipx install poetry

4. Run launcher.sh script in cronjob:

  • Add the user that will run the cronjob to NextCloud data group (Permits it to access NextCloud data folder):

sh sudo usermod -aG www-data your_user

  • Create a folder in NextCloud web interface

  • Locate your newly created folder and allow group write access to it:

sh sudo chmod -R g+w /path/to/your/newly/created/folder

  • Open cronjobs file:

sh crontab -e

  • Add cronjob:

For example to run the fetcher every 2 hours:

sh 0 */2 * * * /path/to/fetcher/launcher.sh

Contributing

If you would like to contribute to this project or report issues, please follow our contribution guidelines.

License

see LICENSE for details.

Owner

  • Name: The Digital Botanical Garden Initiative
  • Login: digital-botanical-gardens-initiative
  • Kind: organization

GitHub Events

Total
  • Issues event: 2
  • Delete event: 2
  • Member event: 1
  • Push event: 104
  • Create event: 5
Last Year
  • Issues event: 2
  • Delete event: 2
  • Member event: 1
  • Push event: 104
  • Create event: 5

Dependencies

.github/actions/setup-poetry-env/action.yml actions
  • actions/cache v4 composite
  • actions/setup-python v5 composite
.github/workflows/main.yml actions
  • ./.github/actions/setup-poetry-env * composite
  • actions/cache v4 composite
  • actions/checkout v4 composite
poetry.lock pypi
  • cachetools 5.5.0
  • certifi 2024.8.30
  • cfgv 3.4.0
  • chardet 5.2.0
  • charset-normalizer 3.4.0
  • click 8.1.7
  • colorama 0.4.6
  • coverage 7.6.4
  • distlib 0.3.9
  • exceptiongroup 1.2.2
  • filelock 3.16.1
  • identify 2.6.1
  • idna 3.10
  • iniconfig 2.0.0
  • mypy 1.13.0
  • mypy-extensions 1.0.0
  • nodeenv 1.9.1
  • packaging 24.2
  • pathvalidate 3.2.1
  • platformdirs 4.3.6
  • pluggy 1.5.0
  • pre-commit 3.5.0
  • pyproject-api 1.8.0
  • pytest 7.4.4
  • pytest-cov 6.0.0
  • python-dotenv 1.0.1
  • pyyaml 6.0.2
  • qfieldcloud-sdk 0.9.0
  • requests 2.32.3
  • tomli 2.0.2
  • tox 4.23.2
  • tqdm 4.67.0
  • types-requests 2.32.0.20241016
  • typing-extensions 4.12.2
  • urllib3 2.2.3
  • virtualenv 20.27.1
pyproject.toml pypi
  • mypy ^1.5.1 develop
  • pre-commit ^3.4.0 develop
  • pytest ^7.2.0 develop
  • tox ^4.11.1 develop
  • pytest-cov ^6.0.0
  • python >=3.9,<4.0
  • python-dotenv ^1.0.1
  • qfieldcloud-sdk ^0.9.0
  • requests ^2.32.3
  • types-requests ^2.32.0.20241016