Adds a flag to the cli to override the entrypoint of a custom docker image. It could be used to reuse existing images with different eentrypoints.
Signed-off-by: Carlo Colombo <carlo.colombo@klarna.com>
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
---
|
||||
'@techdocs/cli': patch
|
||||
---
|
||||
|
||||
Adds a new flag to override the entrypoint when using a custom docker image. It could be used to reuse existing images with different entrypoints.
|
||||
@@ -71,7 +71,7 @@ implementation, which uses the MkDocs preview server as a proxy to fetch the
|
||||
generated documentation files and assets.
|
||||
|
||||
NOTE: When using a custom `techdocs` docker image, make sure the entry point is
|
||||
also `ENTRYPOINT ["mkdocs"]`.
|
||||
also `ENTRYPOINT ["mkdocs"]` or override with `--docker-entrypoint`.
|
||||
|
||||
Command reference:
|
||||
|
||||
@@ -81,11 +81,12 @@ Usage: techdocs-cli serve [options]
|
||||
Serve a documentation project locally in a Backstage app-like environment
|
||||
|
||||
Options:
|
||||
-i, --docker-image <DOCKER_IMAGE> The mkdocs docker container to use (default: "spotify/techdocs")
|
||||
--no-docker Do not use Docker, use MkDocs executable in current user environment.
|
||||
--mkdocs-port <PORT> Port for MkDocs server to use (default: "8000")
|
||||
-v --verbose Enable verbose output. (default: false)
|
||||
-h, --help display help for command
|
||||
-i, --docker-image <DOCKER_IMAGE> The mkdocs docker container to use (default: "spotify/techdocs")
|
||||
--docker-entrypoint <DOCKER_ENTRYPOINT> Override the image entrypoint
|
||||
--no-docker Do not use Docker, use MkDocs executable in current user environment.
|
||||
--mkdocs-port <PORT> Port for MkDocs server to use (default: "8000")
|
||||
-v --verbose Enable verbose output. (default: false)
|
||||
-h, --help display help for command
|
||||
```
|
||||
|
||||
### Generate TechDocs site from a documentation project
|
||||
|
||||
@@ -206,6 +206,10 @@ export function registerCommands(program: CommanderStatic) {
|
||||
'The mkdocs docker container to use',
|
||||
defaultDockerImage,
|
||||
)
|
||||
.option(
|
||||
'--docker-entrypoint <DOCKER_ENTRYPOINT>',
|
||||
'Override the image entrypoint',
|
||||
)
|
||||
.option(
|
||||
'--no-docker',
|
||||
'Do not use Docker, run `mkdocs serve` in current user environment.',
|
||||
@@ -224,6 +228,10 @@ export function registerCommands(program: CommanderStatic) {
|
||||
'The mkdocs docker container to use',
|
||||
defaultDockerImage,
|
||||
)
|
||||
.option(
|
||||
'--docker-entrypoint <DOCKER_ENTRYPOINT>',
|
||||
'Override the image entrypoint',
|
||||
)
|
||||
.option(
|
||||
'--no-docker',
|
||||
'Do not use Docker, use MkDocs executable in current user environment.',
|
||||
|
||||
@@ -61,6 +61,7 @@ export default async function serveMkdocs(cmd: Command) {
|
||||
const childProcess = await runMkdocsServer({
|
||||
port: cmd.port,
|
||||
dockerImage: cmd.dockerImage,
|
||||
dockerEntrypoint: cmd.dockerEntrypoint,
|
||||
useDocker: cmd.docker,
|
||||
stdoutLogFunc: logFunc,
|
||||
stderrLogFunc: logFunc,
|
||||
|
||||
@@ -90,6 +90,7 @@ export default async function serve(cmd: Command) {
|
||||
const mkdocsChildProcess = await runMkdocsServer({
|
||||
port: cmd.mkdocsPort,
|
||||
dockerImage: cmd.dockerImage,
|
||||
dockerEntrypoint: cmd.dockerEntrypoint,
|
||||
useDocker: cmd.docker,
|
||||
stdoutLogFunc: mkdocsLogFunc,
|
||||
stderrLogFunc: mkdocsLogFunc,
|
||||
|
||||
@@ -21,6 +21,7 @@ export const runMkdocsServer = async (options: {
|
||||
port?: string;
|
||||
useDocker?: boolean;
|
||||
dockerImage?: string;
|
||||
dockerEntrypoint?: string;
|
||||
stdoutLogFunc?: LogFunc;
|
||||
stderrLogFunc?: LogFunc;
|
||||
}): Promise<ChildProcess> => {
|
||||
@@ -41,6 +42,9 @@ export const runMkdocsServer = async (options: {
|
||||
'-p',
|
||||
`${port}:${port}`,
|
||||
'-it',
|
||||
...(options.dockerEntrypoint
|
||||
? ['--entrypoint', options.dockerEntrypoint]
|
||||
: []),
|
||||
dockerImage,
|
||||
'serve',
|
||||
'--dev-addr',
|
||||
|
||||
Reference in New Issue
Block a user