Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/MarkEdmondson1234/googleCloudRunner
Easy R scripts on Google Cloud Platform via Cloud Run, Cloud Build and Cloud Scheduler
https://github.com/MarkEdmondson1234/googleCloudRunner
cloudbuild dockerfile googleauthr googlecomputeenginer
Last synced: 3 months ago
JSON representation
Easy R scripts on Google Cloud Platform via Cloud Run, Cloud Build and Cloud Scheduler
- Host: GitHub
- URL: https://github.com/MarkEdmondson1234/googleCloudRunner
- Owner: MarkEdmondson1234
- License: other
- Created: 2019-11-02T18:14:32.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2023-11-30T03:13:49.000Z (about 1 year ago)
- Last Synced: 2024-10-28T00:25:06.438Z (4 months ago)
- Topics: cloudbuild, dockerfile, googleauthr, googlecomputeenginer
- Language: R
- Homepage: https://code.markedmondson.me/googleCloudRunner/
- Size: 11 MB
- Stars: 81
- Watchers: 4
- Forks: 26
- Open Issues: 62
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-cloud-run - cloudRunner
- jimsghstars - MarkEdmondson1234/googleCloudRunner - Easy R scripts on Google Cloud Platform via Cloud Run, Cloud Build and Cloud Scheduler (R)
README
# googleCloudRunner

[](https://app.codecov.io/gh/MarkEdmondson1234/googleCloudRunner)

[](https://www.codefactor.io/repository/github/markedmondson1234/googlecloudrunner/overview/master)
[](https://github.com/MarkEdmondson1234/googleCloudRunner/actions)As easy as possible R scripts in the cloud, via Cloud Run, Cloud Build and Cloud Scheduler. Continuous Development and Integration tools on Google Cloud Platform.
Not an official Google product.
## Ambition
Select an R file, and have it scheduled in the cloud with a couple of clicks.
Deploy your plumber API code automatically on Cloud Run to scale from 0 (no cost) to millions (auto-scaling)
Integrate R inputs and outputs with other languages in a serverless cloud environment.
Have R code react to events such as GitHub pushes, pub/sub messages and Cloud Storage file events.
## Install
Get the CRAN stable version via
```r
install.packages("googleCloudRunner")
```Or the development version via:
```r
remotes::install_github("MarkEdmondson1234/googleCloudRunner")
```The [dev version of the website is here](https://code.markedmondson.me/googleCloudRunner/dev/) which may include documentation of features not yet on CRAN.
## Usage
Browse the [googleCloudRunner website](https://code.markedmondson.me/googleCloudRunner/) for topics on how to use:
* [Setup](https://code.markedmondson.me/googleCloudRunner/articles/setup.html)
* [R APIs using Cloud Run](https://code.markedmondson.me/googleCloudRunner/articles/cloudrun.html)
* [Serverless R scripts using Cloud Build](https://code.markedmondson.me/googleCloudRunner/articles/cloudbuild.html)
* [Scheduled R in GCP using Cloud Scheduler](https://code.markedmondson.me/googleCloudRunner/articles/cloudscheduler.html)
* [Use Cases](https://code.markedmondson.me/googleCloudRunner/articles/usecases.html)
* [Function Reference](https://code.markedmondson.me/googleCloudRunner/reference/index.html)## Diagrams
Some overviews of the function dependencies are below:
### Scheduling using Cloud Scheduler

### Building using Cloud Build

### Helper deployment functions calling lower-level functions

### Cloud Run functionality

### library(targets) integration functions

## Sponsor
## Resources
Read the blog [introducing the googleCloudRunner package](https://code.markedmondson.me/googleCloudRunner-intro/) that goes into some background.
A talk at R's 20th anniversary was performed at celebRation in Copenhagen on 29th Feb, 2020. The [slides from the talk are here](https://code.markedmondson.me/r-20.html) and a [video of it is here](https://www.youtube.com/watch?v=YRvejW9FSJ4&list=PLAMHKI_J4xv1urCanNbTCm44CxXnoejdr&index=3):
A [googleCloudRunner YouTube playlist](https://www.youtube.com/playlist?list=PLAMHKI_J4xv1urCanNbTCm44CxXnoejdr) of the demos is here.
If you blog anything interesting about the package let me know and I will list it here.
* Ander has a guide on using googleCloudRunner to [schedule an R script on GCP](https://anderfernandez.com/blog/automatizar-script-r-google-cloud/) [Spanish]
* Ander also writes how to use googleCloudRunner to [productionise your R plumber API](https://anderfernandez.com/blog/como-poner-en-produccion-un-modelo-de-machine-learning-de-r/) [Spanish]
* Arben documents his experience on how he got started [scheduling BigQuery uploads using Docker and R](https://arbenkqiku.github.io/create-docker-image-with-r-and-deploy-as-cron-job-on-google-cloud)
* Michał Ludwicki was a huge help in mentoring Arben for the post above - he also has created a GitHub repo of some [useful example files for googleCloudRunner scripts](https://github.com/MLud/GCP_Rscheduler)
* Sam Terfa has a guide on how to use googleCloudRunner to [create an R API you can use GoogleSheets](https://towardsdatascience.com/using-r-and-python-in-google-sheets-formulas-b397b302098) to create its front end
* Louis shows how to [create and deploy your own Python optimisation API using googleCloudRunner](https://louis-boguchwal.medium.com/create-and-deploy-your-own-optimization-api-7b4275f159c9)