loopbackio / loopbackio/cicd

Common Git Repo artifacts enforcement

Open
#12 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Shell
Stars
0
Forks
0
Avg merge
1d 3h
Merged PRs (30d)
2

Description

Certain artifacts such as `SECURITY.md`, `CODE_OF_CONDUCT.md`, and certain GitHub Actions Workflow files need to be consistent across our GitHub Repositories. To achieve this, we can utilise [TODO Group's `repolinter`](https://github.com/todogroup/repolinter), which provides an epressive, declarative JSON- and YAML-based format for validating the existence of files and directories and validating file hashes, just to name a few. Notably, `repolinter` supports remote URLs for its configuration file, which we can exploit to ensure a consistent configuration that's hosted in this Git Repository.

In addition `repolinter` can be used to either scan the current or remote Git Repositories, which allows us to perform "meta validation" whereby we host a GitHub Action Workflow in this Git Repository to periodically scan all of our Git Repositories for a standardised GitHub Action Workflow which triggers the `repolinter` scans for that Git Repository.

TODO Group is under the Linux Foundation, and `repolinter` can be considered a mature project.

[Philips Labs' Continuous Compliance Action](https://github.com/philips-labs/continuous-compliance-action) is a fork of `repolinter` with some additional features which attempt to complete the compliance reporting lifecycle. From its `README`:

> We started working on a fork of Repolinter, one that introduced the ability create different GitHub issues per rule that was broken.

Currently it's considered a work-in-progress, and could be considered as an alternative to `repolinter`.

For certain artifacts such as `SECURITY.md` and `CODE_OF_CONDUCT.md`, GitHub can provide links to a centralised copy hosted in the `.github` Git Repository for those that don't already have their own. This is what the Node.js GitHub Organisation is doing: https://github.com/nodejs/admin/issues/644. However, the tradeoffs are:

1. Only limited artifacts are replicated
2. GitHub Action Workflows cannot be replicated
3. These artifacts are not visible when performing a `git pull` to a local machine

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reading the linked TODO Group repolinter documentation and Philips Labs' Continuous Compliance Action README, then compare their capabilities with the listed SECURITY.md, CODE_OF_CONDUCT.md, and GitHub Actions workflow requirements. Clarify the repository scope and configuration location before designing the meta-validation workflow. Done would mean consistent checks can be run across the organization's repositories and report compliance gaps.

Written by the indexing model from the issue text.

Assessment

Tech stack
github-actions
Domain
ci-cd, devops
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.