Skip to content
forked from FyinGisME/selefra

Selefra - Infrastructure as Code for Infrastructure Analysis.

License

Notifications You must be signed in to change notification settings

CrestLee/selefra

 
 

Repository files navigation

Introduction

Selefra is an open-source data integration and analysis tool for developers. You can use Selefra to extract, load, and analyze infrastructure data anywhere from Public Cloud, SaaS platform, development platform, and more.

Simply write code in YAML and SQL, Selefra automatically pull control plane data and analysis your AWS, GCP, Azure, and other hosted data source providers.

For example, here's sample usage of test item ebs_volume_are_unencrypted:

selefra:
    name: example_project
    cli_version: v0.0.1
    providers:
        - name: aws
          source: selefra/aws
          version: v0.0.3
providers:
    - name: aws
      cache: 1d1h1m1s
      resources:
        - aws_*
      accounts:
         regions:
           - us-east-1
rules:
  - name: example_rule_name
    query: SELECT * FROM aws_ec2_ebs_volumes WHERE encrypted = FALSE
    labels:
      tag: demo_rule
      author: Selefra
    metadata:
      severity: Low
      provider: AWS
      resource_type: EC2
      resource_account_id: '{{.account_id}}'
      resource_id: '{{.id}}'
      resource_region: '{{.availability_zone}}'
      remediation: remediation/ebs_volume_are_unencrypted.md
      title: EBS volume are unencrypted
      description: Ensure that EBS volumes are encrypted.
    output: 'EBS volume is unencrypted, EBS id: {{.id}}, availability zone: {{.availability_zone}}'

Getting Started

Read detailed documentation for how to get started with Selefra.

For quick start, run this demo, it should take less than a few miniutes:

1. Install Selefra

For non macOS users, download packages to install Selefra.

On macOS, tap Selefra with Homebrew:

brew tap selefra/tap

Next, install Selefra:

brew install selefra/tap/selefra

2. Initialization project

selefra init selefra-demo && cd selefra-demo

3. Build code

selefra apply 

Documentation

See Docs for best practices and detailed instructions. In docs, you will find info on installation, CLI usage, project workflow and more guides on how to accomplish cloud inspection tasks.

Community

Selefra is a community-driven project, we welcome you to open a GitHub Issue to report a bug, suggest an improvement, or request new feature.

CONTRIBUTING

For developers interested in building Selefra codebase, read through Contributing.md and Selefra Roadmap. Let us know what you would like to work on!

License

Mozilla Public License v2.0

About

Selefra - Infrastructure as Code for Infrastructure Analysis.

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Go 96.6%
  • Shell 3.0%
  • Makefile 0.4%