ellipse-science / tube

R package to access the data hub content
MIT License
0 stars 0 forks source link

Feature/implementation-des-fonctionnalités-de-datamart #30

Closed patoscope closed 3 months ago

patoscope commented 3 months ago

Résumé de la PR:

À noter, la fonction ellipse_publish doit encore être retravaillée éventuellement (raccourcir, modulariser) pour être plus lisible et maintenable. Pour l'instant il s'agit de la rendre disponible pour que les chercheurs puissent commencer à expérimenter avec la publication de leurs données en DEV et en PROD.

Pour tester le tout vous pouvez suivre ces étapes:

r$> remotes::install_github("ellipse-science/tube", ref = "feature/implementation-des-fonctionnalités-de-datamart")
Downloading GitHub repo ellipse-science/tube@feature/implementation-des-fonctionnalités-de-datamart
Running `R CMD build`...
* checking for file ‘/tmp/Rtmpaw9PZa/remotes4ebbd52ee6282/ellipse-science-tube-c2a320c/DESCRIPTION’ ... OK
* preparing ‘tube’:
* checking DESCRIPTION meta-information ... OK
* checking for LF line-endings in source and make files and shell scripts
* checking for empty or unneeded directories
Removed empty directory ‘tube/doc’
Omitted ‘LazyData’ from DESCRIPTION
* building ‘tube_0.4.0.tar.gz’
Installing package into ‘/home/patrick/R/aarch64-unknown-linux-gnu-library/4.3’
(as ‘lib’ is unspecified)
* installing *source* package ‘tube’ ...
** using staged installation
** R
** byte-compile and prepare package for lazy loading
Note: possible error in 'list_glue_tables(type = "datamart", ': unused arguments (type = "datamart", datamart = datamart_name)
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded from temporary location
** testing if installed package can be loaded from final location
** testing if installed package keeps a record of temporary installation path
* DONE (tube)

r$> con <- tube::ellipse_connect("DEV", "datamarts")
ℹ Environnement: DEV
ℹ Database: datamarts
ℹ Pour déconnecter: tube::ellipse_disconnect(objet_de_connexion)
ℹ Base de données: gluestackdatamartdbd046f685
✔ Connexion établie avec succès! 👍

r$> data <- data.frame(
      Name = c("Jack", "John", "Stacy"),
      Age = c(32, 45, 21),
      City = c("Montreal", "Quebec", "Vancouver")
    )

r$> tube::ellipse_publish(con, data, "bidon", "matable1")
✖ La table demandée existe déjà! 😅

❓Voulez-vous
  1. ajouter des données à la table existante?
  2. écraser la table existante?
  Votre choix: (1/2) 2

❓Êtes-vous cetain.e de vouloir écraser la table existante? (oui/non) oui
ℹ Ecrasement de la table existante en cours...
✔ La table a été écrasée avec succès.
✔ La table existante a été écrasée et les nouvelles données ont été ajoutées.

❓Voulez-vous traiter les données maintenant pour les rendre disponibles immédiatement?
  Si vous ne le faites pas maintenant, le traitement sers déclenché automatiquement dans les 6 prochaines heures.
  Votre choix (oui/non) oui
✔ Le traitement des données a été déclenché avec succès.
ℹ Les données seront disponibles dans les prochaines minutes
ℹ N'oubliez pas de vous déconnecter de la plateforme ellipse avec `ellipse_disconnect(...)` 👋.
r$>