This lets you set up triggers that will update an R generated website each commit.
cr_deploy_run_website(
repo,
image = paste0("website-", format(Sys.Date(), "%Y%m%d")),
rmd_folder = NULL,
html_folder = NULL,
image_tag = "$SHORT_SHA",
timeout = 600L,
edit_r = NULL,
r_image = "gcr.io/gcer-public/packagetools:latest",
allowUnauthenticated = TRUE,
region = cr_region_get(),
projectId = cr_project_get()
)
A git repository defined in cr_buildtrigger_repo
The name of the image you want to build
A folder of Rmd files within GitHub source that will be built into HTML for serving via render
A folder of html to deploy within GitHub source. Will be ignored if rmd_folder is not NULL
What to tag the build docker image
Timeout for the build
If you want to change the R code to render the HTML, supply R code via a file or string of R as per cr_buildstep_r
The image that will run the R code from edit_r
TRUE if can be reached from public HTTP address. If FALSE will configure a service-email called (name)-cloudrun-invoker@(project-id).iam.gserviceaccount.com
The region for cloud run
The GCP projectId which will be deployed within
This lets you render the Rmd (or other R functions that produce HTML) in a folder for your repo, which will then be hosted on a Cloud Run enabled with nginx. Each time you push to git with modified Rmd code, it will build the new HTML and push an update to the website.
This default R code is rendered in the rmd_folder:
lapply(list.files('.', pattern = '.Rmd', full.names = TRUE),
rmarkdown::render, output_format = 'html_document')
cr_deploy_html that lets you deploy just HTML files and cr_deploy_pkgdown for running pkgdown websites.
Other Deployment functions:
cr_deploy_docker_trigger()
,
cr_deploy_docker()
,
cr_deploy_packagetests()
,
cr_deploy_pkgdown()
,
cr_deploy_run()
,
cr_deploy_r()
if (FALSE) {
cr_project_set("my-project")
cr_region_set("europe-west1")
your_repo <- cr_buildtrigger_repo("MarkEdmondson1234/googleCloudRunner")
cr_deploy_run_website(your_repo, rmd_folder = "vignettes")
# change the Rmd rendering to pkgdown
r <- "devtools::install();pkgdown::build_site()"
cr_deploy_run_website(your_repo,
image = paste0(your_repo, "-pkgdown"),
rmd_folder = ".",
edit_r = r
)
}