Package io.quarkiverse.quinoa.deployment
Class QuinoaConfig
- java.lang.Object
-
- io.quarkiverse.quinoa.deployment.QuinoaConfig
-
@ConfigRoot(phase=BUILD_TIME) public class QuinoaConfig extends Object
-
-
Field Summary
Fields Modifier and Type Field Description StringbuildDirThis the Web UI internal build system (webpack, ...) output directory.static StringDEFAULT_BUILD_DIRDevServerConfigdevServerConfiguration for the external dev server (live coding server)booleanenableSPARoutingEnable SPA (Single Page Application) routing, all relevant requests will be re-routed to the "index.html".booleanforceInstallForce install packages before building.Optional<Boolean>frozenLockfileInstall the packages using a frozen lockfile.Optional<List<String>>ignoredPathPrefixesList of path prefixes to be ignored by Quinoa.StringindexPageName of the index page.booleanjustBuildIndicate if Quinoa should just do the build part.Optional<String>packageManagerName of the package manager binary.PackageManagerCommandConfigpackageManagerCommandConfiguration for overriding build commandsPackageManagerInstallConfigpackageManagerInstallConfiguration for installing the package managerStringuiDirPath to the Web UI (NodeJS) root directory.
-
Constructor Summary
Constructors Constructor Description QuinoaConfig()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description booleanequals(Object o)List<String>getNormalizedIgnoredPathPrefixes()inthashCode()booleanisEnabled()QuinoaHandlerConfigtoHandlerConfig(boolean prodMode, io.quarkus.vertx.http.runtime.HttpBuildTimeConfig httpBuildTimeConfig)
-
-
-
Field Detail
-
DEFAULT_BUILD_DIR
public static final String DEFAULT_BUILD_DIR
- See Also:
- Constant Field Values
-
justBuild
@ConfigItem public boolean justBuild
Indicate if Quinoa should just do the build part. If true, Quinoa will NOT serve the Web UI built resources. This is handy when the output of the build is used to be served via something else (nginx, cdn, ...) Quinoa put the built files in 'target/quinoa-build' (or 'build/quinoa-build with Gradle). Default is false.
-
uiDir
@ConfigItem(defaultValue="src/main/webui") public String uiDir
Path to the Web UI (NodeJS) root directory. If not set ${project.root}/src/main/webui/ will be used. otherwise the path will be considered relative to the project root.
-
buildDir
@ConfigItem(defaultValue="build/") public String buildDir
This the Web UI internal build system (webpack, ...) output directory. After the build, Quinoa will take the files from this directory, move them to 'target/quinoa-build' (or build/quinoa-build with Gradle) and serve them at runtime. The path is relative to the Web UI path. If not set "build/" will be used
-
packageManager
@ConfigItem(defaultValueDocumentation="auto-detected with lockfile") public Optional<String> packageManager
Name of the package manager binary. If not set, it will be auto-detected depending on the lockfile falling back to "npm". Only npm, pnpm and yarn are supported for the moment.
-
packageManagerInstall
@ConfigItem public PackageManagerInstallConfig packageManagerInstall
Configuration for installing the package manager
-
packageManagerCommand
@ConfigItem public PackageManagerCommandConfig packageManagerCommand
Configuration for overriding build commands
-
indexPage
@ConfigItem(defaultValue="index.html") public String indexPage
Name of the index page. If not set, "index.html" will be used.
-
frozenLockfile
@ConfigItem(defaultValueDocumentation="true if environment CI=true") public Optional<Boolean> frozenLockfile
Install the packages using a frozen lockfile. Don’t generate a lockfile and fail if an update is needed (useful in CI). If not set it is true if environment CI=true, else it is false.
-
forceInstall
@ConfigItem public boolean forceInstall
Force install packages before building. If not set, it will install packages only if the node_modules directory is absent or when the package.json is modified in dev-mode.
-
enableSPARouting
@ConfigItem public boolean enableSPARouting
Enable SPA (Single Page Application) routing, all relevant requests will be re-routed to the "index.html". Currently, for technical reasons, the Quinoa SPA routing configuration won't work with RESTEasy Classic. If not set, it is disabled.
-
ignoredPathPrefixes
@ConfigItem public Optional<List<String>> ignoredPathPrefixes
List of path prefixes to be ignored by Quinoa. If not set, "quarkus.resteasy-reactive.path", "quarkus.resteasy.path" and "quarkus.http.non-application-root-path" will be ignored.
-
devServer
@ConfigItem public DevServerConfig devServer
Configuration for the external dev server (live coding server)
-
-
Method Detail
-
toHandlerConfig
public QuinoaHandlerConfig toHandlerConfig(boolean prodMode, io.quarkus.vertx.http.runtime.HttpBuildTimeConfig httpBuildTimeConfig)
-
isEnabled
public boolean isEnabled()
-
-