Skip to content
Branch: master
Find file History
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
..
Failed to load latest commit information.
README.org update code problem cheatsheet Aug 16, 2019
cheatsheet-compliance-A4.pdf refresh pdf Aug 12, 2019
cheatsheet-devops-A4.pdf refresh pdf Aug 12, 2019

README.org

1 CheatSheet: DevOps & Software Development Life Cycle

linkedin
github
slack


PRs Welcome

File me Issues or star this repo.

1.1 Overview

NameSummary
Automate, Automate, AutomateAvoid manual effort and reduce process delay
Unify the ways of doing the same thingBuild code, test features, etc. Thus reduce invalid failures
Enable faster iteration by reducing dependenciesImplement or leverage mockup services
Definition of unit testsUnit tests focus on function-level scope
Definition of integration testsDoes integration tests include setup an entire system to validate?
Definition of e2e tests
ReferenceCheatSheet: Container Compliance
ReferenceCheatSheet: DevOps & Software Development Life Cycle

1.2 Code Build

NameSummary
Unify different ways of building codedocker build vs make/mvn/gradle
List versions & enforce prelight checkList versions and dependencies, thus people can easily debug
Reduce pulling dependencies from internet/GitHubModify iptables rules in the build box to enforce it
Automatically recommend build after validation

1.3 Pre-Merge Hook

NameSummary
Pre-merge tests help to limit trouble shooting to individualsThis reduce cross-team join-effort debugging
Code lint checks
Unit test/BDD tests
Monitor test coverageTest coverage includes unit test and integration test suites

1.4 Component Tests

NameSummary
Move tests closer to develoers’ machine
Utilize mockup services
Test component individually
Test component quickly

1.5 Integration Tests

NameSummary
Define lightweight and heavyweight e2e tests
Examine log for errors/exceptions, even for successful builds
Airgap deployment and tests
Track the data of successful buildslogs, timespan for each stage, etc
Testbed management for complicated projectsvanilla testbed validator
Enforce nightly builds and file tickets for each new failure
Seperate dependencies failures from code issuesDocument the failures from unmanaged dependencies
Examine build/test pipelines for performance tuningSlowness may from test workflow or products themselves

1.6 Additional Tests

NameSummary
Test categoriesChaos/Longevity tests, Workload tests, Upgrade tests, Scale tests

1.7 Speedup process

NameSummary
Speed up the review and merge of pull requests
Reminders for team membersRegular meeting; regular activities

1.8 DevSecOps

NameSummary
Enforce compliance check for OSS packagesAvoid legal issues and security vulnerability
Log scan for security compliance
Don’t save credentials in code repo
Don’t display credentials in log files

1.9 Metrics-Driven Quality Control

NameSummary
Key MetricsPass rate for acceptance e2e pipeline; Pass rate for code build pipeline

1.10 Product Debuggability

NameSummary
Components can switch log level on fly
Watch out log velocity and valuesLog tons of useless entries would be annoying
Implement a docker tool: health_check

1.11 More Resources

License: Code is licensed under MIT License.

linkedin github slack
You can’t perform that action at this time.