Scouterna / skojjt

Närvarorapportering för scouter
Apache License 2.0
14 stars 15 forks source link

Stöd för export och import av en kårs data #151

Open hakankvist opened 2 years ago

hakankvist commented 2 years ago

För att underlätta migering mellan olika instanser av skojjt hade det varit bra med stöd för export och import av en kårs data.

Exempel är t.ex om man går från att använda en egen instans av skojjt till en central installation och vill behålla historiken.

martin-green commented 2 years ago

@hakankvist Kan du prova att ladda ner all data via googles datastore. Se scripts\download_data_from_prod.bat

hakankvist commented 2 years ago

Jag ska se vad jag kan få ner, men har inte googles app engine verktygen installerade sen tidigare.

Kommer försöka sätta upp senaste versionen av gcloud verktygen och ladda ner med: gsutil cp gs

Så jag kommer skriva ett shell-skript för linux som gör detta. Om jag laddar upp skriptet till github, i vilken katalog ska jag lägga det i så fall?

Jag fick intrycket av att andra delar av skojjt-ksripten beror på gamla versionen av gcloud verktygen.

hakankvist commented 2 years ago

Hej, att använda de moderna verktyg som google har nu för tiden verkar inte vara så enkelt.

Jag kan dumpa datastores med gcloud datastore export till en fil i molnet, t.ex: gcloud datastore export gs://blablabla.appspot.com/dump

Sen kan jag ladda ner dessa filerna med: gsutil cp gs://blablabla.appspot.com/dump .

Dessa filerna är dock i något binärt format.

Vill man få datan i något textformat, så kan man konvertera i molnet via google big query för att exportera till t.ex csv: (https://stackoverflow.com/questions/57808121/looking-for-a-way-to-export-gcp-datastore-entity-data-into-csv-file).

Det verkar inte vara möjligt att expotera direkt till sql...

@martin-green, jag kommer försöka gräva vidare lite här. I vilket format vill är det bäst att exportera? Som rena textformat verkar csv och json stödjas: https://cloud.google.com/bigquery/docs/exporting-data

hakankvist commented 2 years ago

Jag ger upp. Vi kommer exportera närvarofilerna från skojjt och arkivera i kårens drive. Sen kommer vi stänga ner vår egen instans.

Så från mitt perspektiv kan den här issuen stängas.

martin-green commented 1 year ago

För att föra över data från en instans till en annan kan man använda datastore Import/Export: https://console.cloud.google.com/datastore/databases/-default-/import-export

Här gör man en export av all data. Namespace: [default], Kinds: All Kinds. Till en ny bucket. Din bucket har ett globalt unikt namn. Så det kan plockas upp från en annan instans på namn. Skicka bucketens namn till mig via email så tar jag över data.

Det kan behövas någon permission för att få läsa data. Jag har bara provat mellan mina egna instanser.

hakankvist commented 1 year ago

Hej @martin-green, för min del kan vi stänga det här ärendet.

Vi har kvar vår gamla privata instans så länge som vi behöver för gammal rapportering, all ny rapportering gör vi den riktiga instansen. Vi har inte all data på samma ställe men det klarar vi oss utan :)