policy-engine

command module
v0.9.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 29, 2022 License: Apache-2.0 Imports: 1 Imported by: 0

README

Unified Policy Engine

This repository contains a Go library that performs two main functions:

  • Parses IaC configurations
  • Evaluates resources using Open Policy Agent

It also provides a small CLI that can be used to author and test policies.

go build
./policy-engine help

Additional documentation

Additional documentation can be found in the docs directory. The current set of additional documents are:

Contributing

Should you wish to make a contribution please open a pull request against this repository with a clear description of the change with tests demonstrating the functionality. You will also need to agree to the Contributor Agreement before the code can be accepted and merged.

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
pkg
data
A replacement and simplification for the RegoProvider type in Regula.
A replacement and simplification for the RegoProvider type in Regula.
hcl_interpreter
Implements the `Data` interface.
Implements the `Data` interface.
internal/terraform/addrs
Package addrs contains types that represent "addresses", which are references to specific objects within a Terraform configuration or state.
Package addrs contains types that represent "addresses", which are references to specific objects within a Terraform configuration or state.
internal/terraform/configs
Package configs contains types that represent Terraform configurations and the different elements thereof.
Package configs contains types that represent Terraform configurations and the different elements thereof.
internal/terraform/configs/configload
Package configload knows how to install modules into the .terraform/modules directory and to load modules from those installed locations.
Package configload knows how to install modules into the .terraform/modules directory and to load modules from those installed locations.
internal/terraform/configs/configschema
Package configschema contains types for describing the expected structure of a configuration block whose shape is not known until runtime.
Package configschema contains types for describing the expected structure of a configuration block whose shape is not known until runtime.
internal/terraform/experiments
Package experiments contains the models and logic for opt-in experiments that can be activated for a particular Terraform module.
Package experiments contains the models and logic for opt-in experiments that can be activated for a particular Terraform module.
internal/terraform/getproviders
Package getproviders is the lowest-level provider automatic installation functionality.
Package getproviders is the lowest-level provider automatic installation functionality.
internal/terraform/lang
Package lang deals with the runtime aspects of Terraform's configuration language, with concerns such as expression evaluation.
Package lang deals with the runtime aspects of Terraform's configuration language, with concerns such as expression evaluation.
internal/terraform/lang/blocktoattr
Package blocktoattr includes some helper functions that can perform preprocessing on a HCL body where a configschema.Block schema is available in order to allow list and set attributes defined in the schema to be optionally written by the user as block syntax.
Package blocktoattr includes some helper functions that can perform preprocessing on a HCL body where a configschema.Block schema is available in order to allow list and set attributes defined in the schema to be optionally written by the user as block syntax.
internal/terraform/modsdir
Package modsdir is an internal package containing the model types used to represent the manifest of modules in a local modules cache directory.
Package modsdir is an internal package containing the model types used to represent the manifest of modules in a local modules cache directory.
internal/terraform/registry/regsrc
Package regsrc provides helpers for working with source strings that identify resources within a Terraform registry.
Package regsrc provides helpers for working with source strings that identify resources within a Terraform registry.
internal/terraform/tfdiags
Package tfdiags is a utility package for representing errors and warnings in a manner that allows us to produce good messages for the user.
Package tfdiags is a utility package for representing errors and warnings in a manner that allows us to produce good messages for the user.
internal/terraform/typeexpr
Package typeexpr is a fork of github.com/hashicorp/hcl/v2/ext/typeexpr which has additional experimental support for optional attributes.
Package typeexpr is a fork of github.com/hashicorp/hcl/v2/ext/typeexpr which has additional experimental support for optional attributes.
internal/terraform/version
The version package provides a location to set the release versions for all packages to consume, without creating import cycles.
The version package provides a location to set the release versions for all packages to consume, without creating import cycles.
models
* Unified Policy Engine I/O Formats * * Documentation for the input and output formats used in Unified Policy Engine * * API version: 1.0.0 * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)
* Unified Policy Engine I/O Formats * * Documentation for the input and output formats used in Unified Policy Engine * * API version: 1.0.0 * Generated by: Swagger Codegen (https://github.com/swagger-api/swagger-codegen.git)

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL