Documentation
¶
Overview ¶
Package appfile reads and writes encore.app files.
Index ¶
Constants ¶
View Source
const Name = "encore.app"
Name is the name of the Encore app file. It is expected to be located in the root of the Encore app (which is usually the Git repository root).
Variables ¶
This section is empty.
Functions ¶
func Experiments ¶
func Experiments(appRoot string) ([]experiments.Name, error)
Experiments returns the experimental feature the app located at appRoot has opted into.
Types ¶
type Build ¶ added in v1.27.6
type Build struct { // CgoEnabled enables building with cgo. CgoEnabled bool `json:"cgo_enabled,omitempty"` // Docker configures the docker images built // by Encore's CI/CD system. Docker Docker `json:"docker,omitempty"` // WorkerPooling enables worker pooling for Encore.ts. WorkerPooling bool `json:"worker_pooling,omitempty"` }
type CORS ¶
type CORS struct { // Debug enables CORS debug logging. Debug bool `json:"debug,omitempty"` // AllowHeaders allows an app to specify additional headers that should be // accepted by the app. // // If the list contains "*", then all headers are allowed. AllowHeaders []string `json:"allow_headers"` // ExposeHeaders allows an app to specify additional headers that should be // exposed from the app, beyond the default set always recognized by Encore. // // If the list contains "*", then all headers are exposed. ExposeHeaders []string `json:"expose_headers"` // AllowOriginsWithoutCredentials specifies the allowed origins for requests // that don't include credentials. If nil it defaults to allowing all domains // (equivalent to []string{"*"}). AllowOriginsWithoutCredentials []string `json:"allow_origins_without_credentials,omitempty"` // AllowOriginsWithCredentials specifies the allowed origins for requests // that include credentials. If a request is made from an Origin in this list // Encore responds with Access-Control-Allow-Origin: <Origin>. // // The URLs in this list may include wildcards (e.g. "https://*.example.com" // or "https://*-myapp.example.com"). AllowOriginsWithCredentials []string `json:"allow_origins_with_credentials,omitempty"` }
func GlobalCORS ¶
GlobalCORS returns the global CORS settings for the app located
type Docker ¶ added in v1.27.6
type Docker struct { // BaseImage changes the docker base image used for building the application // in Encore's CI/CD system. If unspecified it defaults to "scratch". BaseImage string `json:"base_image,omitempty"` // BundleSource determines whether the source code of the application // should be bundled into the binary, at "/workspace". BundleSource bool `json:"bundle_source,omitempty"` // WorkingDir specifies the working directory to start the docker image in. // If empty it defaults to "/workspace" if the source code is bundled, and to "/" otherwise. WorkingDir string `json:"working_dir,omitempty"` // ProcessPerService specifies whether each service should run in its own process. If false, // all services are run in the same process. ProcessPerService bool `json:"process_per_service,omitempty"` }
type File ¶
type File struct { // ID is the encore.dev app id for the app. // It is empty if the app is not linked to encore.dev. ID string `json:"id"` // can be empty // Experiments is a list of values to enable experimental features in Encore. // These are not guaranteed to be stable in either runtime behaviour // or in API design. // // Do not use these features in production without consulting the Encore team. Experiments []experiments.Name `json:"experiments,omitempty"` // Lang is the language the app is written in. // If empty it defaults to Go. Lang Lang `json:"lang"` // Configure global CORS settings for the application which // will be applied to all API gateways into the application. GlobalCORS *CORS `json:"global_cors,omitempty"` // Build contains build settings for the application. Build Build `json:"build,omitempty"` // CgoEnabled enables building with cgo. // // Deprecated: Use build.cgo_enabled instead. CgoEnabled bool `json:"cgo_enabled,omitempty"` // DockerBaseImage changes the docker base image used for building the application // in Encore's CI/CD system. If unspecified it defaults to "scratch". // // Deprecated: Use build.docker.base_image instead. DockerBaseImage string `json:"docker_base_image,omitempty"` // LogLevel is the minimum log level for the app. // If empty it defaults to "trace". LogLevel string `json:"log_level,omitempty"` }
File is a parsed encore.app file.
func ParseFileStrict ¶ added in v1.48.5
ParseFileStrict parses the app file located at path. Unlike ParseFile, it returns an error if the file does not exist.
Click to show internal directories.
Click to hide internal directories.