Skip to content

seamlik/devops

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Various DevOps tasks

Centralized DevOps tasks for my personal projects.

This program must only run in the root directory of a project.

Available Tasks

All tasks are designed as subcommands.

format

Formats all files in known formats. Because there are countless file formats in the world, one must specify what kind of files to format.

Here are all the file formats we support:

Formatting Formatter
css Prettier
html Prettier
json Prettier
markdown Prettier
protobuf Buf
rust rustfmt
spotless (TODO) Spotless
xml (TODO) LemMinX
yaml Prettier

These files, when existing, will be considered when deciding if a file will be ignored:

  • .gitignore

Usage

devops format xml yaml ...

rust-code-coverage

Generates a code coverage report using grcov.

Usage

devops rust-code-coverage

Background

Previously, all DevOps tasks were written in PowerShell and scattered among my projects. Over time, maintaining them became more and more costly because:

  • PowerShell, like all scripting languages, are not compiled or statically typed.
  • Scripts are scattered in all my projects without possibility of reuse.
  • Improvments to the scripts in some projects must be manually backported to other projects.

Until one day I overheard that some team in a certain huge company started to write all their DevOps tasks in Rust. As a result, their Jenkins and TeamCity scripts were greatly simplified. Migrating to other CI servers would also cost less. So, why don't I follow this path?

GitHub Actions

Directory .github/actions contains various custom GitHub Actions steps shared by my projects.

About

Various DevOps tasks

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages