Skip to content
JournalsWorldThe Global Research Discovery Platform
Featured Dataset

PIPr: A Dataset of Public Infrastructure as Code Programs

Programming Languages Infrastructure as Code (PL-IaC) enables IaC programs written in general-purpose programming languages like Python and TypeScript. The currently available PL-IaC solutions are Pulumi and the Cloud Development Kits (CDKs) of Amazon Web Services (AWS) and Terraform. This datase

👤
CreatorSokolowski, Daniel
📅
Published2023-11-24
🔗
DOI10.5281/zenodo.10173400
📊
Downloads1,220
⚖️
Licenseodc-by
File Size28.4 GB
Data TypeDataset
Published2023
Licenseodc-by
Total Views1,808
Total Downloads1,220

Programming Languages Infrastructure as Code (PL-IaC) enables IaC programs written in general-purpose programming languages like Python and TypeScript. The currently available PL-IaC solutions are Pulumi and the Cloud Development Kits (CDKs) of Amazon Web Services (AWS) and Terraform. This dataset provides metadata and initial analyses of all public GitHub repositories in August 2022 with an IaC program, including their programming languages, applied testing techniques, and licenses. Further, we provide a shallow copy of the head state of those 7104 repositories whose licenses permit redistribution. The dataset is available under the Open Data Commons Attribution License (ODC-By) v1.0.

Contents:

  • metadata.zip: The dataset metadata and analysis results as CSV files.
  • scripts-and-logs.zip: Scripts and logs of the dataset creation.
  • LICENSE: The Open Data Commons Attribution License (ODC-By) v1.0 text.
  • README.md: This document.
  • redistributable-repositiories.zip: Shallow copies of the head state of all redistributable repositories with an IaC program.

This artifact is part of the ProTI Infrastructure as Code testing project: https://proti-iac.github.io.

Metadata

The dataset’s metadata comprises three tabular CSV files containing metadata about all analyzed repositories, IaC programs, and testing source code files.

repositories.csv:

  • ID (integer): GitHub repository ID
  • url (string): GitHub repository URL
  • downloaded (boolean): Whether cloning the repository succeeded
  • name (string): Repository name
  • description (string): Repository description
  • licenses (string, list of strings): Repository licenses
  • redistributable (boolean): Whether the repository’s licenses permit redistribution
  • created (string, date & time): Time of the repository’s creation
  • updated (string, date & time): Time of the last update to the repository
  • pushed (string, date & time): Time of the last push to the repository
  • fork (boolean): Whether the repository is a fork
  • forks (integer): Number of forks
  • archive (boolean): Whether the repository is archived
  • programs (string, list of strings): Project file path of each IaC program in the repository

programs.csv:

  • ID (string): Project file path of the IaC program
  • repository (integer): GitHub repository ID of the repository containing the IaC program
  • directory (string): Path of the directory containing the IaC program’s project file
  • solution (string, enum): PL-IaC solution of the IaC program (“AWS CDK”, “CDKTF”, “Pulumi”)
  • language (string, enum): Programming language of the IaC program (enum values: “csharp”, “go”, “haskell”, “java”, “javascript”, “python”, “typescript”, “yaml”)
  • name (string): IaC program name
  • descrip

    📤 Share this page

    Found this useful? Share it with your network.

    ✓ Link copied! Paste it on ResearchGate / Academia.edu
📦
PIPr: A Dataset of Public Infrastructure as Code… (Full Dataset)28.4 GB
⬇
📄
ReadmeVia DOI record
↗

Files are hosted on the source repository. Click download to access the full dataset.

Sokolowski, Daniel (2023). PIPr: A Dataset of Public Infrastructure as Code Programs. https://doi.org/10.5281/zenodo.10173400