1 of 12

CSE 190: Working with Large Code Bases

Spring 2023

1

Instructor: Gerald Soosairaj

TAs: Anshul Shah & Jerry Yu

Lecture 15: Git Workflow - Part 4

2 of 12

Plan for Today

  1. Announcements
  2. Wrapping up Continuous Integration
  3. Code Walk Through Presentation
  4. Guest Speaker

2

3 of 12

Announcements

  • Checkpoint 2
    • Progress Report: Summary of major milestones (link PRs for each milestone), Obstacles encountered, Remaining work estimate
    • Design Document: Diagrams of parts of codebase altered, Sketches of proposed features, Workflow diagrams
  • Participation Grades uploaded

3

4 of 12

Guest Lectures This Week

4

Tuesday, May 23

Elayamani Krishnamoorthi

Staff Software Engineer @ ZeroDown

Continuous Deployment

Thursday, May 25

Sihan Li

Staff Software Engineer @ Whova Inc.

Code Reviews

5 of 12

Continuous Integration

A term used rather loosely today…

  • DevOps* automation to allow frequent code merging.
  • “Integration hell”
  • Build & Test Automation

5

6 of 12

Continuous Integration

6

7 of 12

Continuous Integration

7

8 of 12

8

9 of 12

GitHub Actions: Not Just Tests

9

10 of 12

Github Actions Workflow for Linting

name: Super-Linter

on: push

jobs:

super-lint:

name: Lint code base

runs-on: ubuntu-latest

steps:

- name: Checkout code

uses: actions/checkout@v2

- name: Run Super-Linter

uses: github/super-linter@v4

env:

DEFAULT_BRANCH: main

GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

Reference: https://github.com/devopsjourney1/mygitactions

10

11 of 12

Presentation 8: Replace

Feedback Form: https://forms.gle/UAZeyXx3NNuim5Cm8

11

12 of 12

Elayamani Krishnamoorthi

12

Elayamani Krishnamoorthi

Staff Software Engineer @ ZeroDown