github-community-projects / github-community-projects/safe-settings

Provide an "Include" option to help dry up configs

Open
#785 0 comments 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
JavaScript
Stars
921
Forks
226
Avg merge
18h 3m
Merged PRs (30d)
14

Description

## Prerequisites:

* Is the functionality available in the GitHub UI?

n/a

* Is the functionality available through the GitHub API?

n/a

## New Feature

This was brought up in [discussion in a previous issue](https://github.com/github/safe-settings/issues/277), but that ended up taking a different direction.

As described there, sometimes there are commonalities between tech stacks across suborg definitions, which can result in a lot of duplication and thus drift. In that issue it was noted that being able to have multiple suborgs apply configurations has innate challenges because of how that data is processed.

It would be helpful to be able to have standardized configurations in separate files that could be imported, akin to say "frontend_labels.yml", "backend_rulesets.yml", "compliance_rulesets.yml", "jira_autolinks.yml", etc

Then, within suborgs, you could have something like:

```yaml
suborgproperties:
- Squad: BlueSquad

autolinks:
- '!include safe-settings/snippets/jira_autolinks.yml'

labels:
- '!include safe-settings/snippets/frontend_labels.yml'
- name: security
color: CC0000

rulesets:
- '!include safe-settings/snippets/compliance_rulesets.yml'
- '!include safe-settings/snippets/bluesquad_rulesets.yml'
```

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.