api

package
v0.0.0-...-b264059 Latest Latest
Warning

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

Go to latest
Published: Oct 26, 2023 License: Apache-2.0 Imports: 12 Imported by: 1

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func GetLineageActivity

func GetLineageActivity(w http.ResponseWriter, r *http.Request, d *db.Database)

GetLineageActivity returns the activity (version history) of a Lineage @Summary Get Lineage activity @Description Retrieves the activity (version history) of a Lineage @ID get-lineage-activity @Produce json @Param lineage path string true "Lineage" @Success 200 {string} string "ok" @Router /lineages/{lineage}/activity [get]

func GetLineages

func GetLineages(w http.ResponseWriter, r *http.Request, db *db.Database)

GetLineages recover all Lineage from db. Optional "&limit=X" parameter to limit requested quantity of them. Sorted by most recent to oldest. @Summary Get lineages @Description List all existing lineages @ID get-lineages @Produce json @Param limit query integer false "Limit" @Success 200 {string} string "ok" @Router /lineages [get]

func GetLocks

func GetLocks(w http.ResponseWriter, _ *http.Request, sps []state.Provider)

GetLocks returns information on locked States @Summary Get locked states information @Description Returns information on locked States @ID get-locks @Produce json @Success 200 {string} string "ok" @Router /locks [get]

func GetPlan

func GetPlan(w http.ResponseWriter, r *http.Request, db *db.Database)

GetPlan provides a specific Plan of a lineage using ID. /api/plans GET endpoint callback on request with ?plan_id=X parameter @Summary Get plans @Description Provides a specific Plan of a lineage using ID or all plans if no ID is provided @ID get-plans @Produce json @Param planid query string false "Plan's ID" @Param page query integer false "Page" @Param limit query integer false "Limit" @Success 200 {string} string "ok" @Router /plans [get]

func GetPlans

func GetPlans(w http.ResponseWriter, r *http.Request, db *db.Database)

GetPlans provides all Plan by lineage. Optional "&limit=X" parameter to limit requested quantity of plans. Optional "&page=X" parameter to add an offset to the query and enable pagination. Sorted by most recent to oldest. /api/plans GET endpoint callback Also return pagination informations (current page ans total items count in database)

func GetPlansSummary

func GetPlansSummary(w http.ResponseWriter, r *http.Request, db *db.Database)

GetPlansSummary provides summary of all Plan by lineage (only metadata added by the wrapper). Optional "&limit=X" parameter to limit requested quantity of plans. Optional "&page=X" parameter to add an offset to the query and enable pagination. Sorted by most recent to oldest. /api/plans/summary GET endpoint callback Also return pagination informations (current page ans total items count in database) @Summary Get summary of all Plan by lineage @Description Provides summary of all Plan by lineage (only metadata added by the wrapper). Sorted by most recent to oldest. Returns also paging informations (current page ans total items count in database) @ID get-plans-summary @Produce json @Param lineage query string false "Lineage" @Param page query integer false "Page" @Param limit query integer false "Limit" @Success 200 {string} string "ok" @Router /plans/summary [get]

func GetState

func GetState(w http.ResponseWriter, r *http.Request, d *db.Database)

GetState provides information on a State @Summary Provides information on a State @Description Retrieves a State from the database by its lineage and versionID @ID get-state @Produce json @Param versionid query string false "Version ID" @Param lineage path string true "Lineage" @Success 200 {string} string "ok" @Router /lineages/{lineage} [get]

func GetUser

func GetUser(w http.ResponseWriter, r *http.Request)

GetUser returns information about the logged user @Summary Get logged user information @Description Returns information about the logged user @ID get-user @Produce json @Success 200 {string} string "ok" @Router /user [get]

func JSONError

func JSONError(w http.ResponseWriter, message string, err error)

JSONError is a wrapper function for errors which prints them to the http.ResponseWriter as a JSON response

func ListAttributeKeys

func ListAttributeKeys(w http.ResponseWriter, r *http.Request, d *db.Database)

ListAttributeKeys lists all Resource Attribute Keys, optionally filtered by resource_type @Summary Get resource attribute keys @Description Lists all resource attribute keys, optionally filtered by resource_type @ID list-attribute-keys @Produce json @Param resource_type query string false "Resource Type" @Success 200 {string} string "ok" @Router /attribute/keys [get]

func ListResourceNames

func ListResourceNames(w http.ResponseWriter, _ *http.Request, d *db.Database)

ListResourceNames lists all Resource names @Summary Get resource names @Description Lists all resource names @ID list-resource-names @Produce json @Success 200 {string} string "ok" @Router /resource/names [get]

func ListResourceTypes

func ListResourceTypes(w http.ResponseWriter, _ *http.Request, d *db.Database)

ListResourceTypes lists all Resource types @Summary Get Resource types @Description Lists all Resource types @ID list-resource-types @Produce json @Success 200 {string} string "ok" @Router /resource/types [get]

func ListResourceTypesWithCount

func ListResourceTypesWithCount(w http.ResponseWriter, _ *http.Request, d *db.Database)

ListResourceTypesWithCount lists all Resource types with their associated count @Summary Get resource types with count @Description Lists all resource types with their associated count @ID list-resource-types-with-count @Produce json @Success 200 {string} string "ok" @Router /resource/types/count [get]

func ListStateStats

func ListStateStats(w http.ResponseWriter, r *http.Request, d *db.Database)

ListStateStats returns State information for a given path as parameter @Summary Get Lineage states stats @Description Returns Lineage states stats along with paging information @ID list-state-stats @Produce json @Param page query integer false "Current page for pagination" @Success 200 {string} string "ok" @Router /lineages/stats [get]

func ListTerraformVersionsWithCount

func ListTerraformVersionsWithCount(w http.ResponseWriter, r *http.Request, d *db.Database)

ListTerraformVersionsWithCount lists Terraform versions with their associated counts, sorted by the 'orderBy' parameter (version by default) @Summary Lists Terraform versions with counts @Description Get terraform version with their associated counts, sorted by the 'orderBy' parameter (version by default) @ID list-terraform-versions-with-count @Produce json @Param orderBy query string false "Order by constraint" @Success 200 {string} string "ok" @Router /lineages/tfversion/count [get]

func ListTfVersions

func ListTfVersions(w http.ResponseWriter, _ *http.Request, d *db.Database)

ListTfVersions lists all Terraform versions @Summary Get terraform versions @Description Lists all terraform versions @ID list-tf-versions @Produce json @Success 200 {string} string "ok" @Router /tf_versions [get]

func ManagePlans

func ManagePlans(w http.ResponseWriter, r *http.Request, db *db.Database)

ManagePlans is used to route the request to the appropriated handler function on /api/plans request

func SearchAttribute

func SearchAttribute(w http.ResponseWriter, r *http.Request, d *db.Database)

SearchAttribute performs a search on Resource Attributes by various parameters @Summary Search Resource Attributes @Description Performs a search on Resource Attributes by various parameters @ID search-attribute @Produce json @Param versionid query string false "Version ID" @Param type query string false "Ressource type" @Param name query string false "Resource ID" @Param key query string false "Attribute Key" @Param value query string false "Attribute Value" @Param tf_version query string false "Terraform Version" @Param lineage_value query string false "Lineage" @Success 200 {string} string "ok" @Router /search/attribute [get]

func StateCompare

func StateCompare(w http.ResponseWriter, r *http.Request, d *db.Database)

StateCompare compares two versions ('from' and 'to') of a State @Summary Compares two versions of a State @Description Compares two versions ('from' and 'to') of a State @ID state-compare @Produce json @Param lineage path string true "Lineage" @Param from query string true "Version from" @Param to query string true "Version to" @Success 200 {string} string "ok" @Router /lineages/{lineage}/compare [get]

func SubmitPlan

func SubmitPlan(w http.ResponseWriter, r *http.Request, db *db.Database)

SubmitPlan inserts a new Terraform plan in the database. /api/plans POST endpoint callback @Summary Submit a new plan @Description Submits and inserts a new Terraform plan in the database. @ID submit-plan @Accept json @Param plan body api.planPayload false "Wrapped plan" @Router /plans [post]

Types

This section is empty.

Jump to

Keyboard shortcuts

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