Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/clowdhaus/terraform-module-data
Data about Terraform module usage
https://github.com/clowdhaus/terraform-module-data
terraform terraform-modules
Last synced: 28 days ago
JSON representation
Data about Terraform module usage
- Host: GitHub
- URL: https://github.com/clowdhaus/terraform-module-data
- Owner: clowdhaus
- License: apache-2.0
- Created: 2024-03-21T20:28:59.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2024-04-13T15:04:42.000Z (7 months ago)
- Last Synced: 2024-04-13T21:45:05.154Z (7 months ago)
- Topics: terraform, terraform-modules
- Language: Rust
- Homepage: https://clowdhaus.github.io/terraform-module-data/
- Size: 2.16 MB
- Stars: 7
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Usage
:warning: This only works for modules in the [`terraform-aws-modules`](https://github.com/terraform-aws-modules) organization.
To collect data about a module, run the following command:
```bash
cargo run -- collect-data --module
```Where `` is the name of the module you want to collect data for. For example, to collect data for the `vpc` module, run:
```bash
cargo run -- collect-data --module vpc
```## Data Collected
Data is collected from the following sources:
1. GitHub repository - repository clones and views
This data is what can be found on the `/graphs/traffic` page of the GitHub repository. GitHub provides data for the last 14 days, aggregated by day.
![GitHub traffic graph](./docs/assets/github.png)
1. Terraform registry - module downloads
This data is what can be found on the registry page of the module. The registry continuously updates this data, so this project collects it daily as a "snapshot in time".
![Terraform registry downloads](./docs/assets/registry.png)
### Data Directory Structure
```text
data/
├─ github/
│ ├─ eks/
│ │ ├─ clones.json
│ │ └─ views.json
│ ├─ eks-pod-identity/
│ │ ├─ clones.json
│ │ └─ views.json
│ └─ ...
└─ registry/
├─ eks/
│ ├─ 2024-03-22.json
│ ├─ 2024-03-23.json
│ └─ ...
├─ eks-pod-identity/
│ ├─ 2024-03-22.json
│ ├─ 2024-03-23.json
│ └─ ...
└─ ...
```## Development
To build and run locally, you will need to install [mdbook](https://rust-lang.github.io/mdBook/guide/installation.html)
- The theme(s) are provided by
- `cargo (bin)install mdbook-catppuccin`
- Link checking is provided by
- `cargo (bin)install mdbook-linkcheck`