Importeer qgis.core in Azure Functions

Weet één van jullie of je qgis.core kunt gebruiken in Azure Functions?

We werken voornamelijk met Python code, daar gebruiken we functies die afhankelijk zijn van qgis.core. In Azure Functions kun je gemakkelijk libraries gebruiken die pip install compatible zijn maar dat is qgis.core niet. Qgis is open source dus er zou een manier moeten zijn toch?

QGIS is geschreven in C++. De Python API is voor zover ik weet enkel een wrapper hieromheen. Het is dus geen pure Python library, je hebt een QGIS installatie nodig om met de Python API te kunnen werken. Je zal QGIS op de een of andere manier binnen je Azure Function beschikbaar moeten maken. Wellicht door Azure Functions icm containers te gebruiken en een QGIS docker container als base image te gebruiken?

Zie ook Using PyQGIS in standalone scripts

2 likes

Bedankt rkettelerij,

We hebben dit geprobeerd maar het is ons helaas niet gelukt.

Is er iemand die dit leest het wel gelukt? Dan kunnen we uitsluiten of het aan ons ligt of aan de techniek.

Anders gaan we al onze code omschrijven met functies uit algemenere python libraries en deze meegeven aan de Azure Function API.

Dit zijn overigens de methodes die we hebben geprobeerd en die niet zijn gelukt:

  1. Virtual machine on Azure
    
  2. Include QGIS as a dependency when deploying a function via VSC:
    
  3. Directly via installation (copy folders with Python dependency and include them)
    
  4. Via a Conda installation in a virtual environment (provide this environment when deploying)
    
  5. Via Docker
    

N.B.: mijn collega en ik zijn geen hardcore ICT’ers.

Update: we hebben geen oplossing kunnen vinden en zijn alles aan het omschrijven naar algemenere Python libraries, dus zonder QGIS afhankelijkheden.