otf

module
v0.2.4 Latest Latest
Warning

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

Go to latest
Published: Dec 16, 2023 License: MPL-2.0

README

OTF logo

OTF is an open source alternative to Terraform Enterprise. Includes SSO, team management, agents, and no per-resource pricing.

Docs: https://docs.otf.ninja/

Slack

OTF is in no way affiliated with Hashicorp. Terraform and Terraform Enterprise are trademarks of Hashicorp. Hashicorp have confirmed OTF is in compliance with their BSL license.

Directories

Path Synopsis
cmd
Package cmd provides CLI functionality.
Package cmd provides CLI functionality.
otf
Package internal is code only for consumption from within the otf project.
Package internal is code only for consumption from within the otf project.
agent
Package agent contains code related to agents
Package agent contains code related to agents
api
Package api provides commmon functionality for the OTF API
Package api provides commmon functionality for the OTF API
authenticator
Package authenticator is responsible for handling the authentication of users with third party identity providers.
Package authenticator is responsible for handling the authentication of users with third party identity providers.
cli
Package cli provides the CLI client, i.e.
Package cli provides the CLI client, i.e.
configversion
Package configversion handles terraform configurations.
Package configversion handles terraform configurations.
connections
Package connections manages connections between VCS repositories and OTF resources, e.g.
Package connections manages connections between VCS repositories and OTF resources, e.g.
daemon
Package daemon configures and starts the otfd daemon and its subsystems.
Package daemon configures and starts the otfd daemon and its subsystems.
disco
Package disco implements terraform's "remote service discovery protocol":
Package disco implements terraform's "remote service discovery protocol":
ghapphandler
Package ghapphandler provides a handler for the github app webhook endpoint.
Package ghapphandler provides a handler for the github app webhook endpoint.
github
Package github provides github related code
Package github provides github related code
gitlab
Package gitlab provides gitlab related code
Package gitlab provides gitlab related code
http
Package http provides an HTTP interface allowing HTTP clients to interact with otf.
Package http provides an HTTP interface allowing HTTP clients to interact with otf.
http/decode
Package decode contains decoders for various HTTP artefacts
Package decode contains decoders for various HTTP artefacts
http/html
Package html contains code relating specifically to the web UI.
Package html contains code relating specifically to the web UI.
http/html/paths
Package paths provides rails-style path helpers for use with the web app.
Package paths provides rails-style path helpers for use with the web app.
inmem
Package inmem implements a layer of services in memory using purely Go constructs.
Package inmem implements a layer of services in memory using purely Go constructs.
integration
Package integration provides inter-service integration tests.
Package integration provides inter-service integration tests.
json
Package json provides helpers for the JSON encoding.
Package json provides helpers for the JSON encoding.
loginserver
Package loginserver implements a "terraform login protocol" server:
Package loginserver implements a "terraform login protocol" server:
logr
Package logr provides a logger that implements the logr interface
Package logr provides a logger that implements the logr interface
logs
Package logs handles log output from a run
Package logs handles log output from a run
module
Package module is reponsible for registry modules
Package module is reponsible for registry modules
notifications
Package notifications sends notifications for run state transitions and workspace events.
Package notifications sends notifications for run state transitions and workspace events.
organization
Package organization is responsible for OTF organizations
Package organization is responsible for OTF organizations
pubsub
Package pubsub provides cluster-wide publishing and subscribing of events
Package pubsub provides cluster-wide publishing and subscribing of events
rbac
Package rbac is concerned with authorization
Package rbac is concerned with authorization
releases
Package releases manages terraform releases.
Package releases manages terraform releases.
repohooks
Package repohooks manages webhooks for VCS events
Package repohooks manages webhooks for VCS events
resource
Package resource contains code common to all resources (orgs, workspaces, runs, etc)
Package resource contains code common to all resources (orgs, workspaces, runs, etc)
run
Package run is responsible for OTF runs, the primary mechanism for executing terraform
Package run is responsible for OTF runs, the primary mechanism for executing terraform
scheduler
Package scheduler is responsible for the scheduling of runs
Package scheduler is responsible for the scheduling of runs
semver
Package semver wraps golang.org/x/mod/semver, relaxing the requirement for semantic versions to be prefixed with "v".
Package semver wraps golang.org/x/mod/semver, relaxing the requirement for semantic versions to be prefixed with "v".
sql
Package sql implements persistent storage using the postgres database.
Package sql implements persistent storage using the postgres database.
state
Package state manages terraform state.
Package state manages terraform state.
team
Package team manages teams, which are groups of users with shared privileges.
Package team manages teams, which are groups of users with shared privileges.
testbrowser
Package testbrowser provisions web browsers for tests
Package testbrowser provisions web browsers for tests
testcompose
Package testcompose provides interaction with a docker compose stack of services for testing purposes.
Package testcompose provides interaction with a docker compose stack of services for testing purposes.
testutils
Package testutils provides test helpers.
Package testutils provides test helpers.
tfeapi
Package tfeapi provides common functionality useful for implementation of the Hashicorp TFE/TFC API, which uses the json:api encoding
Package tfeapi provides common functionality useful for implementation of the Hashicorp TFE/TFC API, which uses the json:api encoding
tfeapi/types
Package types provides structs suitable for marshaling to/from json:api
Package types provides structs suitable for marshaling to/from json:api
tokens
Package tokens manages token authentication
Package tokens manages token authentication
user
Package user manages user accounts and their team membership.
Package user manages user accounts and their team membership.
variable
Package variable manages terraform workspace variables
Package variable manages terraform workspace variables
vcs
Package vcs handles version control system stuff.
Package vcs handles version control system stuff.
vcsprovider
Package vcsprovider is responsible for VCS providers
Package vcsprovider is responsible for VCS providers
workspace
Package workspace provides access to terraform workspaces
Package workspace provides access to terraform workspaces

Jump to

Keyboard shortcuts

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