Code Monkey home page Code Monkey logo

erum2020workshop's Introduction

e-Rum2020 Workshop

This repository collects the information and material related to the e-Rum2020 workshop from Mirai Solutions.

Bring your R Application Safely to Production. Collaborate, Deploy, Automate.

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.

Prerequisites

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

Materials

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.

Workshop recordings

Full workshop recordings are available on the e-Rum2020 YouTube channel.

erum2020workshop's People

Contributors

fvitalini avatar riccardoporreca avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.