This repository collects the information and material related to the e-Rum2020 workshop from Mirai Solutions.
If you are looking for a hands-on introduction to CI/CD pipelines with a structured approach to collaborative development, this is the workshop you are looking for. To get your head around pull requests and branches, travis.yml or GitHub Actions jobs, workflows and processes for controlled development and deployments using free open source tools, all you need is your laptop (with R >= 3.6.x, ideally 4.0.x, RStudio and Git installed), a GitHub account and joining us.
In this hands-on 3-hours session we will:
- highlight the benefits of versioning your R code with Git and GitHub;
- show how to set up automated controls of your development on Travis CI, leveraging unit tests and R’s built-in package checks for Continuous Integration (CI);
- discuss effective branching models, pull requests and branch protection on GitHub, an approach especially important in a collaborative environment;
- demonstrate how to set up Continuous Deployment (CD) of packaged applications via Travis CI / GitHub Actions.
A simple R package with a Shiny app will be used as a running example to lay out a full workflow for stable, secure, reproducible deployments and releases.
This workshop is the natural continuation of "Is R ready for Production? Let’s develop a Professional Shiny Application!", however, attendance to the previous workshop is not a mandatory prerequisite.
Keywords: CI/CD, Git, GitHub, Travis CI, Actions
When: Saturday June 20th, 14.00-17.00 CEST
News article: A summary of the workshop is available as news post, including a short trailer providing an overview of the workshop.
Materials: See below, including video recordings.
It is important that you go through the following prerequisites before the workshop, and feel free to contact us using the workshop's dedicated e-Rum2020 Slack channel if you have questions or issues.
- A GitHub account is necessary for the workshop: also make sure you have its password at hand
- Git must be installed on your computer
- A recent version of RStudio (>= 1.2) is recommended
- R installation: R >= 3.6.x, ideally R 4.0.x
- Packages pre-installation: see https://github.com/miraisolutions/eRum2020Workshop-prereqs#readme
- To make working with Git easier, you can optionally install additional tools we will mention in the workshop
- compareWith R package
- Sublime Merge
We will lead the workshop mostly hands-on, but we have a supporting presentation available at http://mirai-solutions.ch/eRum2020Workshop/workshop-slides.html
The working example we will use as a starting point is available at the following repo
You don't need to do anything with it ahead of the workshop.
Full workshop recordings are available on the e-Rum2020 YouTube channel.