ci: update shiny and rmd integration tests to work with newer Connect images
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 25/100
- Tipo di issue
- Refactoring
- Chiarezza
- Da chiarire
- Stato di attività
- Ferma
- Stack tecnologico
- docker, r
- Ambito
- ci-cd, devops, testing-qa
Direzione di ricerca
Inizia leggendo #417 e i test di integrazione per gli esempi R Markdown e Shiny, quindi esamina i relativi file manifest.json inclusi nel repository e l’helper deploy_example() menzionato al loro interno. Determina come le versioni delle immagini Connect corrispondono alle versioni di R e fai in modo che i test interessati vengano eseguiti senza gli skip attuali sulle immagini più recenti; il lavoro è completato quando i test di integrazione e i manifest delle dipendenze sono compatibili con la matrice di immagini supportata.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Followup to #417. Integration tests that test setting env vars, rendering schedules, and variants use an rmarkdown example, and tests for setting run_as require an interactive app, so they use a shiny example app. These have manifest.json files checked in that enumerate packages and an R version, and these are set to an old version of R that is not included in the newer docker images for Connect. #417 skips those tests on newer versions of Connect.
To unskip them, we could
- Delete the manifest.json files and use
rsconnectto generate them at test runtime. We would associate each Connect image with an R version, and we would run the integration tests from that R version, so that the manifest that rsconnect generates at runtime would be compatible with what's in the images. Somewhat future proof, but would slow down these tests a little because we would have to resolve the package dependencies each run, and we would have the burden of maintaining the matrix of Connect version (docker tag) and R version to use. Unclear if there would be other trouble running the test suite with sufficiently old enough R to generate a manifest for older Connect. - Add alternate manifests that use newer versions of R that are found in the newer images, and switch off which manifest we used based on the Connect server version. A little annoying, and it is something we would have to do once a year or so whenever R versions roll off the docker images, but probably the least work.
- Keep a single manifest for these items, but upgrade them so that they that work on newer Connect and as many versions back that work, and skip these tests on versions older than that (i.e., flip how the skipping works now). Probably about the same work as the previous option but with less full coverage.
- Install the same version of R into all of the Connect images, and have one manifest that works with that version. Adds some overhead to spinning up the Connect images, but then keeps the complexity out of the R test suite.
#417 adds a deploy_example() helper function that could encapsulate some of the logic, depending on which direction was taken.
- Lingua principale
- R
- Stelle
- 54
- Fork
- 27
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di posit-dev/connectapi
-
Move uuid to SuggestsAperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 62/100
posit-dev/connectapi#249 ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 65/100
posit-dev/connectapi#527 ·
-
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
posit-dev/connectapi#526 · 1 reazione ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 48/100
posit-dev/connectapi#506 ·
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 48/100
posit-dev/connectapi#486 ·
Tutte le issue di posit-dev/connectapi
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 82/100
-
ai-discovered area: data explorer
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
posit-dev/positron#16530 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
-
modeling question
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100