Skip to content

Project to generate statistics about OpenSSF Compliance in the BEAM ecosystem.

License

Notifications You must be signed in to change notification settings

erlef/beam-openssf-compliance-stats

BEAM OpenSSF Compliance Statistics

EEF Security WG project

Statistics Tool to collect OpenSSF compliance statistics for the BEAM ecosystem.

Configuration

Some additional projects are considered besides Hex.pm packages. Those have to be added to the priv/additional_projects.tsv file.

Usage

┌──────────────────────────────────┐         ┌─────────────────────────────────────────────┐
│File: priv/additional_projects.tsv│         │$ mix openssf_compliance.fetch_badge_projects│
└─────────────────┬────────────────┘         └───────────────────┬─────────────────────────┘
                  │                                              │
┌─────────────────▼─────────────────────┐    ┌───────────────────▼────────────────┐
│$ mix openssf_compliance.fetch_projects│    │File: priv/data/badge/[NAME].parquet│
└─────────────────┬─────────────────────┘    └───────────────────┬────────────────┘
                  │                                              │
┌─────────────────▼─────────────────────┐                        │
│File: priv/data/projects/[NAME].parquet│                        │
└─────────────────┬─────────────────────┘                        │
                  │                                              |
┌─────────────────▼───────────────────────────────┐              |
│$ mix openssf_compliance.fetch_scorecard_projects│              |
└─────────────────┬───────────────────────────────┘              |
                  │                                              |
┌─────────────────▼──────────────────────┐                       |
│File: priv/data/scorecard/[NAME].parquet│                       |
└─────────────────┬──────────────────────┘                       |
                  │   ┌──────────────────────────────────────────┘
┌─────────────────▼───▼────────────────┐
│$ mix openssf_compliance.join_projects│
└─────────────────┬────────────────────┘
                  │
┌─────────────────▼───────────────────┐
│File: priv/data/joined/[NAME].parquet│
└─────────────────┬───────────────────┘
                  │
┌─────────────────▼────────────┐
│$ mix openssf_compliance.stats│
└──────────────────────────────┘

Automated Data Storage

This project automatically fetches new data once a month using the .github/workflows/calculate_dataset.yml action and stores the datasets in git in thepriv/data/joined directory.

You can see the recent runs in the Actions Tab. Each run contains a summary of the new statistics and also offers the intermediate files for download.

License

The code in this repository is licensed under the Apache-2.0 license.

Data produced by the contained commands, are licensed based on their origin. Check the [FILENAME].license file next to each dataset to see its license.