diff --git a/apps/docs/content/alpine/how-to/build-pipeline.mdx b/apps/docs/content/alpine/how-to/build-pipeline.mdx index 561fe0f6..5b4f144c 100644 --- a/apps/docs/content/alpine/how-to/build-pipeline.mdx +++ b/apps/docs/content/alpine/how-to/build-pipeline.mdx @@ -183,7 +183,7 @@ When the first build is triggered, Zerops will 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. @@ -216,7 +216,7 @@ zerops: ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: @@ -526,6 +526,10 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: + #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/alpine/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. @@ -598,6 +602,10 @@ zerops: These commands are triggered in the runtime container before your Alpine application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: + Use init commands to clean or initialise your application cache or similar operations. :::caution diff --git a/apps/docs/content/alpine/how-to/build-process.mdx b/apps/docs/content/alpine/how-to/build-process.mdx index b1128d25..d28b59cd 100644 --- a/apps/docs/content/alpine/how-to/build-process.mdx +++ b/apps/docs/content/alpine/how-to/build-process.mdx @@ -58,7 +58,7 @@ The default build environment contains: To install additional packages or tools, add one or more build.prepareCommands to your `zerops.yaml`. :::info -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in the `/build/source` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). ::: ### Build hardware resources diff --git a/apps/docs/content/bun/how-to/build-pipeline.mdx b/apps/docs/content/bun/how-to/build-pipeline.mdx index 65276c34..cd7a4b7f 100644 --- a/apps/docs/content/bun/how-to/build-pipeline.mdx +++ b/apps/docs/content/bun/how-to/build-pipeline.mdx @@ -219,7 +219,7 @@ When the first build is triggered, Zerops will 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. @@ -253,7 +253,7 @@ zerops: ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: @@ -572,6 +572,10 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 2. optionally: [copy selected folders or files from your build container](build-pipeline#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: + #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. @@ -645,6 +649,10 @@ zerops: These commands are triggered in the runtime container before your Bun application is started via the [start command](build-pipeline#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: + Use init commands to clean or initialise your application cache or similar operations. :::caution diff --git a/apps/docs/content/deno/how-to/build-pipeline.mdx b/apps/docs/content/deno/how-to/build-pipeline.mdx index 71fd00fa..94c76110 100644 --- a/apps/docs/content/deno/how-to/build-pipeline.mdx +++ b/apps/docs/content/deno/how-to/build-pipeline.mdx @@ -214,7 +214,7 @@ When the first build is triggered, Zerops will 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. @@ -247,7 +247,7 @@ zerops: ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: @@ -565,6 +565,10 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: + #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/deno/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. @@ -638,6 +642,10 @@ zerops: These commands are triggered in the runtime container before your Deno application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: + Use init commands to clean or initialise your application cache or similar operations. :::caution diff --git a/apps/docs/content/deno/how-to/build-process.mdx b/apps/docs/content/deno/how-to/build-process.mdx index 4e1f5155..f730e456 100644 --- a/apps/docs/content/deno/how-to/build-process.mdx +++ b/apps/docs/content/deno/how-to/build-process.mdx @@ -47,7 +47,7 @@ The default Deno build environment contains: To install additional packages or tools, add one or more [build.prepareCommands](/deno/how-to/build-pipeline#preparecommands) to your `zerops.yaml`. :::info -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in the `/build/source` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). ::: ### Build hardware resources diff --git a/apps/docs/content/dotnet/how-to/build-pipeline.mdx b/apps/docs/content/dotnet/how-to/build-pipeline.mdx index 3eff4f02..e206c3d8 100644 --- a/apps/docs/content/dotnet/how-to/build-pipeline.mdx +++ b/apps/docs/content/dotnet/how-to/build-pipeline.mdx @@ -218,7 +218,7 @@ When the first build is triggered, Zerops will 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. @@ -251,7 +251,7 @@ zerops: ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: @@ -585,6 +585,10 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: + #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/dotnet/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. @@ -660,6 +664,10 @@ zerops: These commands are triggered in the runtime container before your .NET application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: + Use init commands to clean or initialise your application cache or similar operations. :::caution diff --git a/apps/docs/content/elixir/how-to/build-pipeline.mdx b/apps/docs/content/elixir/how-to/build-pipeline.mdx index eeab382f..9a3e37b7 100644 --- a/apps/docs/content/elixir/how-to/build-pipeline.mdx +++ b/apps/docs/content/elixir/how-to/build-pipeline.mdx @@ -215,7 +215,7 @@ When the first build is triggered, Zerops will 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. @@ -249,7 +249,7 @@ zerops: ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: @@ -568,6 +568,10 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: + #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/elixir/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. @@ -641,6 +645,10 @@ zerops: These commands are triggered in the runtime container before your Elixir application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: + Use init commands to clean or initialise your application cache or similar operations. :::caution diff --git a/apps/docs/content/features/pipeline.mdx b/apps/docs/content/features/pipeline.mdx index 084fcb03..e3bb7c55 100644 --- a/apps/docs/content/features/pipeline.mdx +++ b/apps/docs/content/features/pipeline.mdx @@ -252,6 +252,10 @@ run: - sudo apt-get update && apt-get install -y some-package # for Ubuntu ``` +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: + Zerops creates the custom runtime image from this container after all commands complete successfully. #### `build.addToRunPrepare` diff --git a/apps/docs/content/gleam/how-to/build-pipeline.mdx b/apps/docs/content/gleam/how-to/build-pipeline.mdx index 167d3c7a..455d417a 100644 --- a/apps/docs/content/gleam/how-to/build-pipeline.mdx +++ b/apps/docs/content/gleam/how-to/build-pipeline.mdx @@ -216,7 +216,7 @@ When the first build is triggered, Zerops will 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. @@ -250,7 +250,7 @@ zerops: ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: @@ -569,6 +569,10 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: + #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/gleam/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. @@ -642,6 +646,10 @@ zerops: These commands are triggered in the runtime container before your Gleam application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: + Use init commands to clean or initialise your application cache or similar operations. :::caution diff --git a/apps/docs/content/go/how-to/build-pipeline.mdx b/apps/docs/content/go/how-to/build-pipeline.mdx index 879c91df..b10017d9 100644 --- a/apps/docs/content/go/how-to/build-pipeline.mdx +++ b/apps/docs/content/go/how-to/build-pipeline.mdx @@ -212,7 +212,7 @@ When the first build is triggered, Zerops will 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. @@ -245,7 +245,7 @@ zerops: ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: @@ -579,6 +579,10 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: + #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/go/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. @@ -652,6 +656,10 @@ zerops: These commands are triggered in the runtime container before your Go application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: + Use init commands to clean or initialise your application cache or similar operations. :::caution diff --git a/apps/docs/content/java/how-to/build-pipeline.mdx b/apps/docs/content/java/how-to/build-pipeline.mdx index 2a24ba94..2f67ed87 100644 --- a/apps/docs/content/java/how-to/build-pipeline.mdx +++ b/apps/docs/content/java/how-to/build-pipeline.mdx @@ -212,7 +212,7 @@ When the first build is triggered, Zerops will 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. @@ -245,7 +245,7 @@ zerops: ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: @@ -580,6 +580,10 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: + #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/java/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. @@ -653,6 +657,10 @@ zerops: These commands are triggered in the runtime container before your Java application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: + Use init commands to clean or initialise your application cache or similar operations. :::caution diff --git a/apps/docs/content/nginx/how-to/build-pipeline.mdx b/apps/docs/content/nginx/how-to/build-pipeline.mdx index 13a68927..8c683976 100644 --- a/apps/docs/content/nginx/how-to/build-pipeline.mdx +++ b/apps/docs/content/nginx/how-to/build-pipeline.mdx @@ -278,6 +278,10 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: + #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/nginx/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. @@ -358,6 +362,10 @@ zerops: These commands are triggered in the runtime container before your Nginx application is started. +:::note +`run.initCommands` run in the `/var/www` directory. +::: + Use init commands to clean or initialise your application cache or similar operations. :::caution diff --git a/apps/docs/content/nodejs/how-to/build-pipeline.mdx b/apps/docs/content/nodejs/how-to/build-pipeline.mdx index d623ccfe..dba9a223 100644 --- a/apps/docs/content/nodejs/how-to/build-pipeline.mdx +++ b/apps/docs/content/nodejs/how-to/build-pipeline.mdx @@ -217,7 +217,7 @@ When the first build is triggered, Zerops will 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. @@ -251,7 +251,7 @@ zerops: ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: @@ -587,6 +587,10 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: + #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/nodejs/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. @@ -660,6 +664,10 @@ zerops: These commands are triggered in the runtime container before your Node.js application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: + Use init commands to clean or initialise your application cache or similar operations. :::caution diff --git a/apps/docs/content/php/how-to/build-pipeline.mdx b/apps/docs/content/php/how-to/build-pipeline.mdx index 030b6606..874115c9 100644 --- a/apps/docs/content/php/how-to/build-pipeline.mdx +++ b/apps/docs/content/php/how-to/build-pipeline.mdx @@ -215,7 +215,7 @@ When the first build is triggered, Zerops will 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. @@ -248,7 +248,7 @@ zerops: ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: @@ -595,6 +595,10 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: + #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/php/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. @@ -675,6 +679,10 @@ zerops: These commands are triggered in the runtime container before your PHP application is started. +:::note +`run.initCommands` run in the `/var/www` directory. +::: + Use init commands to clean or initialise your application cache or similar operations. :::caution diff --git a/apps/docs/content/python/how-to/build-pipeline.mdx b/apps/docs/content/python/how-to/build-pipeline.mdx index ecdb5612..2b2ecf1f 100644 --- a/apps/docs/content/python/how-to/build-pipeline.mdx +++ b/apps/docs/content/python/how-to/build-pipeline.mdx @@ -212,7 +212,7 @@ When the first build is triggered, Zerops will 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. @@ -535,6 +535,10 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: + #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/python/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. @@ -608,6 +612,10 @@ zerops: These commands are triggered in the runtime container before your Python application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: + Use init commands to clean or initialise your application cache or similar operations. :::caution diff --git a/apps/docs/content/rust/how-to/build-pipeline.mdx b/apps/docs/content/rust/how-to/build-pipeline.mdx index 3ab1dfb9..6acc5b63 100644 --- a/apps/docs/content/rust/how-to/build-pipeline.mdx +++ b/apps/docs/content/rust/how-to/build-pipeline.mdx @@ -213,7 +213,7 @@ When the first build is triggered, Zerops will 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. @@ -246,7 +246,7 @@ zerops: ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: @@ -579,6 +579,10 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: + #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/rust/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. @@ -659,6 +663,10 @@ zerops: These commands are triggered in the runtime container before your Rust application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: + Use init commands to clean or initialise your application cache or similar operations. :::caution diff --git a/apps/docs/content/ubuntu/how-to/build-pipeline.mdx b/apps/docs/content/ubuntu/how-to/build-pipeline.mdx index 7f8b9ccd..fce8e0b4 100644 --- a/apps/docs/content/ubuntu/how-to/build-pipeline.mdx +++ b/apps/docs/content/ubuntu/how-to/build-pipeline.mdx @@ -182,7 +182,7 @@ When the first build is triggered, Zerops will 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. @@ -215,7 +215,7 @@ zerops: ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: @@ -498,6 +498,10 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: + #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/ubuntu/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. @@ -570,6 +574,10 @@ zerops: These commands are triggered in the runtime container before your Ubuntu application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: + Use init commands to clean or initialise your application cache or similar operations. :::caution diff --git a/apps/docs/content/ubuntu/how-to/build-process.mdx b/apps/docs/content/ubuntu/how-to/build-process.mdx index 14074b2c..48e19123 100644 --- a/apps/docs/content/ubuntu/how-to/build-process.mdx +++ b/apps/docs/content/ubuntu/how-to/build-process.mdx @@ -58,7 +58,7 @@ The default build environment contains: To install additional packages or tools, add one or more build.prepareCommands to your `zerops.yaml`. :::info -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in the `/build/source` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). ::: ### Build hardware resources diff --git a/apps/docs/content/zerops-yaml/specification.mdx b/apps/docs/content/zerops-yaml/specification.mdx index 836982c3..3d1196e8 100644 --- a/apps/docs/content/zerops-yaml/specification.mdx +++ b/apps/docs/content/zerops-yaml/specification.mdx @@ -166,6 +166,10 @@ build: - sudo apt-get install -y some-package ``` +:::note +`build.prepareCommands` run in the `/home/zerops` directory. +::: + ### buildCommands Defines the commands to build your application. @@ -177,6 +181,10 @@ build: - npm run build ``` +:::note +`build.buildCommands` run in the `/build/source` directory. +::: + #### Running commands in a single shell instance: ```yaml @@ -383,6 +391,10 @@ Indicates whether the port is running a web server: Customizes the runtime environment by installing additional dependencies or tools. +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: + ### initCommands Defines commands to run each time a new runtime container starts or restarts. @@ -393,6 +405,10 @@ run: - rm -rf ./cache ``` +:::note +`run.initCommands` run in the `/var/www` directory. +::: + ### start Defines the start command for your application. diff --git a/apps/docs/src/components/content/build-process.mdx b/apps/docs/src/components/content/build-process.mdx index b9c078ad..88ea312b 100644 --- a/apps/docs/src/components/content/build-process.mdx +++ b/apps/docs/src/components/content/build-process.mdx @@ -45,7 +45,7 @@ If you prefer Ubuntu instead of Alpine, set the build.prepareCommands to your `zerops.yaml`. :::info -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in the `/build/source` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). `build.prepareCommands` run in the `/home/zerops` directory, while `build.buildCommands` run in the `/build/source` directory. ::: ### Build hardware resources diff --git a/apps/docs/src/plugins/markdown-source/index.js b/apps/docs/src/plugins/markdown-source/index.js index 0c43ed34..730bd100 100644 --- a/apps/docs/src/plugins/markdown-source/index.js +++ b/apps/docs/src/plugins/markdown-source/index.js @@ -149,6 +149,122 @@ function convertFAQToMarkdown(content) { return content; } +// Convert HTML tables to markdown tables, flattening rowspan/colspan +function convertHtmlTablesToMarkdown(content, siteDir) { + return content.replace(//g, (tableHtml) => { + // Resolve UnorderedCodeList components to comma-separated values + tableHtml = tableHtml.replace( + //g, + (match, dataPath) => { + try { + const data = getDataJson(siteDir); + const keys = dataPath.trim().replace(/^data\./, '').split('.'); + let val = data; + for (const key of keys) { + if (val && typeof val === 'object' && key in val) val = val[key]; + else return match; + } + return Array.isArray(val) ? val.join(', ') : String(val); + } catch (e) { return match; } + } + ); + + // Separate thead and tbody + const theadMatch = tableHtml.match(/]*>([\s\S]*?)<\/thead>/); + const tbodyMatch = tableHtml.match(/]*>([\s\S]*?)<\/tbody>/); + const theadHtml = theadMatch ? theadMatch[1] : ''; + const tbodyHtml = tbodyMatch ? tbodyMatch[1] : (theadMatch ? '' : tableHtml); + + function extractRowHtmls(html) { + const rows = []; + const rowPattern = /]*>([\s\S]*?)<\/tr>/g; + let m; + while ((m = rowPattern.exec(html)) !== null) rows.push(m[1]); + return rows; + } + + function cleanCellContent(raw) { + return raw + .replace(/([\s\S]*?)<\/strong>/g, '**$1**') + .replace(/([\s\S]*?)<\/b>/g, '**$1**') + .replace(/([\s\S]*?)<\/em>/g, '*$1*') + .replace(/([\s\S]*?)<\/i>/g, '*$1*') + .replace(/([\s\S]*?)<\/code>/g, '`$1`') + .replace(/ /g, ' ') + .replace(/<[^>]+>/g, '') + .replace(/\s+/g, ' ') + .trim(); + } + + // Build a 2D grid, expanding rowspan/colspan by repeating cell content + function buildGrid(rowHtmls, startRow, grid) { + for (let ri = 0; ri < rowHtmls.length; ri++) { + const absRi = startRow + ri; + if (!grid[absRi]) grid[absRi] = []; + + let colIndex = 0; + const cellPattern = /]*)>([\s\S]*?)<\/t[dh]>/g; + let cellMatch; + + while ((cellMatch = cellPattern.exec(rowHtmls[ri])) !== null) { + while (grid[absRi][colIndex] !== undefined) colIndex++; + + const attrs = cellMatch[1]; + const rowspan = parseInt((attrs.match(/rowspan="?(\d+)"?/) || [, 1])[1]); + const colspan = parseInt((attrs.match(/colspan="?(\d+)"?/) || [, 1])[1]); + const text = cleanCellContent(cellMatch[2]); + + for (let r = 0; r < rowspan; r++) { + const targetRi = absRi + r; + if (!grid[targetRi]) grid[targetRi] = []; + for (let c = 0; c < colspan; c++) { + grid[targetRi][colIndex + c] = text; + } + } + + colIndex += colspan; + } + } + } + + const headerRows = extractRowHtmls(theadHtml); + const bodyRows = extractRowHtmls(tbodyHtml); + const grid = []; + buildGrid(headerRows, 0, grid); + buildGrid(bodyRows, headerRows.length, grid); + + if (grid.length === 0) return tableHtml; + + const colCount = Math.max(...grid.map(row => row.length)); + + function rowToMd(gridRow) { + const cells = Array.from({ length: colCount }, (_, i) => + gridRow[i] !== undefined ? gridRow[i] : '' + ); + return '| ' + cells.join(' | ') + ' |'; + } + + // Merge multiple header rows into one by taking the last value per column + let result = ''; + if (headerRows.length > 0) { + const mergedHeader = Array.from({ length: colCount }, (_, i) => { + for (let ri = headerRows.length - 1; ri >= 0; ri--) { + const val = grid[ri][i]; + if (val !== undefined && val !== '') return val; + } + return ''; + }); + result += '| ' + mergedHeader.join(' | ') + ' |\n'; + result += '| ' + Array(colCount).fill('---').join(' | ') + ' |\n'; + } + for (let ri = headerRows.length; ri < grid.length; ri++) { + result += rowToMd(grid[ri]) + '\n'; + } + + return result; + }); +} + // Preserve markdown tables while processing other content function preserveTablesWhileProcessing(content, processingFn) { // Split content by tables @@ -403,12 +519,15 @@ function cleanMarkdownForDisplay(content, filepath, siteDir, docsDir) { // 15. Convert details/summary components to readable markdown (preserve content) content = convertDetailsToMarkdown(content); - // 16. Remove custom React/MDX components while preserving tables + // 16. Convert HTML tables to markdown tables + content = convertHtmlTablesToMarkdown(content, siteDir); + + // 17. Remove custom React/MDX components while preserving tables content = preserveTablesWhileProcessing(content, (section) => { return section.replace(/<[A-Z][a-zA-Z]*[\s\S]*?(?:\/>|<\/[A-Z][a-zA-Z]*>)/g, ''); }); - // 17. Remove consecutive blank lines (keep max 2 newlines = 1 blank line) + // 18. Remove consecutive blank lines (keep max 2 newlines = 1 blank line) const lines = content.split('\n'); const processedLines = []; let lastLineWasEmpty = false; @@ -426,12 +545,12 @@ function cleanMarkdownForDisplay(content, filepath, siteDir, docsDir) { content = processedLines.join('\n'); - // 18. Add title as H1 at the beginning if it exists + // 19. Add title as H1 at the beginning if it exists if (title) { content = `# ${title}\n\n${content}`; } - // 19. Remove any leading blank lines + // 20. Remove any leading blank lines content = content.replace(/^\s*\n/, ''); return content; diff --git a/apps/docs/static/data.json b/apps/docs/static/data.json index ad42b590..5bb7a5d2 100644 --- a/apps/docs/static/data.json +++ b/apps/docs/static/data.json @@ -1,22 +1,28 @@ { "alpine": { - "default": "Alpine 3.20", + "default": "Alpine Linux", "base": [ - ["alpine@3.20", "alpine@latest"], + ["alpine@3.23", "alpine@latest"], + ["alpine@3.22"], + ["alpine@3.21"], + ["alpine@3.20"], ["alpine@3.19"], ["alpine@3.18"], ["alpine@3.17"] ], "import": [ + ["alpine@3.23"], + ["alpine@3.22"], + ["alpine@3.21"], ["alpine@3.20"], ["alpine@3.19"], ["alpine@3.18"], ["alpine@3.17"] ], - "readable": ["3.20", "3.19", "3.18", "3.17"] + "readable": ["3.23", "3.22", "3.21", "3.20", "3.19", "3.18", "3.17"] }, "ubuntu": { - "default": "Ubuntu 24.04", + "default": "Ubuntu", "base": [ ["ubuntu@24.04"], ["ubuntu@22.04", "ubuntu@latest"] @@ -32,25 +38,28 @@ "base": [ ["go@1.22", "go@1", "golang@1", "go@latest", "golang@latest"] ], - "import": [["go@1.22", "go@1", "golang@1"]], + "import": [["go@1.22", "go@1", "golang@1", "golang@1.22"]], "readable": ["1.22"] }, "php": { - "default": "8.4", + "default": "8.5", "base": { "build": [ - ["php@8.4", "php@latest"], + ["php@8.5", "php@latest"], + ["php@8.4"], ["php@8.3"], ["php@8.1"] ], "runtime": { "apache": [ - ["php-apache@8.4", "php-apache@latest"], + ["php-apache@8.5", "php-apache@latest"], + ["php-apache@8.4"], ["php-apache@8.3"], ["php-apache@8.1"] ], "nginx": [ - ["php-nginx@8.4", "php-nginx@latest"], + ["php-nginx@8.5", "php-nginx@latest"], + ["php-nginx@8.4"], ["php-nginx@8.3"], ["php-nginx@8.1"] ] @@ -58,98 +67,125 @@ }, "import": { "apache": [ + ["php-apache@8.5+2.4", "php-apache@8.5"], ["php-apache@8.4+2.4", "php-apache@8.4"], ["php-apache@8.3+2.4", "php-apache@8.3"], ["php-apache@8.1+2.4", "php-apache@8.1"] ], "nginx": [ + ["php-nginx@8.5+1.28", "php-nginx@8.5"], ["php-nginx@8.4+1.22", "php-nginx@8.4"], ["php-nginx@8.3+1.22", "php-nginx@8.3"], ["php-nginx@8.1+1.22", "php-nginx@8.1"] ] }, - "readable": ["8.4", "8.3", "8.1"] + "readable": ["8.5", "8.4", "8.3", "8.1"] }, "dotnet": { - "default": "9", + "default": "10", "base": [ - ["dotnet@9", "dotnet@latest"], + ["dotnet@10", "dotnet@latest"], + ["dotnet@9"], ["dotnet@8"], ["dotnet@7"], ["dotnet@6"] ], "import": [ + ["dotnet@10"], ["dotnet@9"], ["dotnet@8"], ["dotnet@7"], ["dotnet@6"] ], - "readable": ["9", "8", "7", "6"] + "readable": ["10", "9", "8", "7", "6"] }, "nodejs": { - "default": "22", + "default": "24", "base": [ - ["nodejs@22", "nodejs@latest"], + ["nodejs@24", "nodejs@latest"], + ["nodejs@22"], ["nodejs@20"], ["nodejs@18"] ], "import": [ + ["nodejs@24"], ["nodejs@22"], ["nodejs@20"], ["nodejs@18"] ], - "readable": ["22", "20", "18"] + "readable": ["24", "22", "20", "18"] }, "python": { "default": "3", "base": [ - ["python@3.12", "python@latest"], + ["python@3.14", "python@latest"], + ["python@3.12"], ["python@3.11"] ], "import": [ + ["python@3.14"], ["python@3.12"], ["python@3.11"] ], "readable": ["3"] }, + "ruby": { + "default": "3.4", + "base": [ + ["ruby@3.4", "ruby@latest"], + ["ruby@3.3"], + ["ruby@3.2"] + ], + "import": [ + ["ruby@3.4"], + ["ruby@3.3"], + ["ruby@3.2"] + ], + "readable": ["3.4", "3.3", "3.2"] + }, "rust": { - "default": "1.80", + "default": "1.86", "base": [ - ["rust@1.80", "rust@1", "rust@latest"], + ["rust@1", "rust@latest", "rust@stable"], + ["rust@1.86"], + ["rust@1.80"], ["rust@1.78"], ["rust@nightly"] ], "import": [ - ["rust@1"], + ["rust@1.86", "rust@1", "rust@stable"], + ["rust@1.80"], ["rust@1.78"], ["rust@nightly"] ], - "readable": ["1.78", "1.80", "nightly"] + "readable": ["1.86", "1.80", "1.78", "nightly"] }, "bun": { - "default": "1.1", + "default": "1.3", "base": [ - ["bun@1.2.2", "bun@1.2", "bun@latest"], + ["bun@1.3.9", "bun@1.3", "bun@latest"], + ["bun@1.2.2", "bun@1.2"], ["bun@nightly"], ["bun@canary"], ["bun@1.1.34", "bun@1.1(Ubuntu only)"] ], "import": [ - ["bun@1.2.2", "bun@1.2", "bun@latest"], + ["bun@1.3.9", "bun@1.3", "bun@latest"], + ["bun@1.2.2", "bun@1.2"], ["bun@nightly"], ["bun@canary"], ["bun@1.1.34", "bun@1.1(Ubuntu only)"] ], - "readable": ["1.2","1.1.34 (Ubuntu only)", "nightly", "canary"] + "readable": ["1.3", "1.2", "1.1.34 (Ubuntu only)", "nightly", "canary"] }, "deno": { "default": "2.0", "base": [ - ["deno@2.0.0", "deno@latest"], + ["deno@2.0.0", "deno@2", "deno@latest"], ["deno@1.45.5", "deno@1"] ], "import": [ - ["deno@2.0.0", "deno@latest"], + ["deno@2.0.0", "deno@2", "deno@latest"], ["deno@1.45.5", "deno@1"] ], "readable": ["2.0","1.45"] @@ -217,11 +253,12 @@ }, "postgresql": { "import": [ + ["postgresql@18"], ["postgresql@17"], ["postgresql@16"], ["postgresql@14"] ], - "readable": ["17 (17.5)","16 (16.9)","14 (14.18)" ] + "readable": ["18", "17 (17.5)","16 (16.9)","14 (14.18)"] }, "keydb": { "import": [["keydb@6"]], @@ -239,20 +276,32 @@ "readable": ["1.12", "1.10"] }, "nats": { - "import": [["nats@2.10"]], - "readable": ["2.10"] + "import": [ + ["nats@2.12"], + ["nats@2.10"] + ], + "readable": ["2.12", "2.10"] }, "kafka": { - "import": [["kafka@3.8"]], - "readable": ["3.8"] + "import": [ + ["kafka@3.9"], + ["kafka@3.8"] + ], + "readable": ["3.9", "3.8"] }, "elasticsearch": { - "import": [["elasticsearch@8.16"]], - "readable": ["8.16"] + "import": [ + ["elasticsearch@9.2"], + ["elasticsearch@8.16"] + ], + "readable": ["9.2", "8.16"] }, "meilisearch": { - "import": [["meilisearch@1.10"]], - "readable": ["1.10"] + "import": [ + ["meilisearch@1.20"], + ["meilisearch@1.10"] + ], + "readable": ["1.20", "1.10"] }, "typesense": { "import": [["typesense@27.1"]], @@ -266,6 +315,10 @@ "import": [["clickhouse@25.3"]], "readable": ["25.3"] }, + "seaweedfs": { + "import": [["seaweedfs@3"]], + "readable": ["3"] + }, "sharedstorage": { "import": [["shared-storage"]] }, diff --git a/apps/docs/static/llms-full.txt b/apps/docs/static/llms-full.txt index b6f235ca..d6f25638 100644 --- a/apps/docs/static/llms-full.txt +++ b/apps/docs/static/llms-full.txt @@ -135,7 +135,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -158,7 +158,7 @@ zerops: - ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -370,6 +370,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/alpine/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -418,6 +421,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Alpine application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/alpine/how-to/scaling) or when a runtime container is restarted). @@ -652,7 +658,7 @@ The default build environment contains: ### Customize build environment To install additional packages or tools, add one or more build.prepareCommands to your `zerops.yaml`. :::info -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in the `/build/source` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). ::: ### Build hardware resources All runtime services use the same hardware resources for build containers: @@ -1209,7 +1215,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -1233,7 +1239,7 @@ zerops: - bun run build ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](build-pipeline#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](build-pipeline#preparecommands) attribute @@ -1459,6 +1465,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](build-pipeline#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -1508,6 +1517,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Bun application is started via the [start command](build-pipeline#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the [horizontal scaling](scaling) or when a runtime container is restarted). @@ -2586,7 +2598,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -2609,7 +2621,7 @@ zerops: - deno task build ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -2834,6 +2846,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/deno/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -2883,6 +2898,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Deno application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/deno/how-to/scaling) or when a runtime container is restarted). @@ -3119,7 +3137,7 @@ The default Deno build environment contains: ### Customize build environment To install additional packages or tools, add one or more [build.prepareCommands](/deno/how-to/build-pipeline#preparecommands) to your `zerops.yaml`. :::info -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in the `/build/source` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). ::: ### Build hardware resources All runtime services use the same hardware resources for build containers: @@ -3933,7 +3951,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -3956,7 +3974,7 @@ zerops: - dotnet build -o app ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -4186,6 +4204,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/dotnet/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -4237,6 +4258,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your .NET application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/dotnet/how-to/scaling) or when a runtime container is restarted). @@ -5038,7 +5062,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -5062,7 +5086,7 @@ zerops: - npm run build ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -5288,6 +5312,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/elixir/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -5337,6 +5364,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Elixir application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/elixir/how-to/scaling) or when a runtime container is restarted). @@ -7265,6 +7295,9 @@ run: - sudo apk add --no-cache imagemagick - sudo apt-get update && apt-get install -y some-package # for Ubuntu ``` +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: Zerops creates the custom runtime image from this container after all commands complete successfully. #### `build.addToRunPrepare` Copy specific files from the build phase to the runtime prepare phase. This is useful when you need source files during runtime preparation: @@ -8141,7 +8174,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -8165,7 +8198,7 @@ zerops: - npm run build ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -8391,6 +8424,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/gleam/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -8440,6 +8476,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Gleam application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/gleam/how-to/scaling) or when a runtime container is restarted). @@ -9161,7 +9200,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -9184,7 +9223,7 @@ zerops: - go build -o app main.go ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -9413,6 +9452,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/go/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -9462,6 +9504,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Go application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/go/how-to/scaling) or when a runtime container is restarted). @@ -10302,7 +10347,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -10325,7 +10370,7 @@ zerops: - ./mvnw clean install ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -10555,6 +10600,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/java/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -10604,6 +10652,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Java application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/java/how-to/scaling) or when a runtime container is restarted). @@ -12778,6 +12829,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/nginx/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -12828,6 +12882,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Nginx application is started. +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/nginx/how-to/scaling) or when a runtime container is restarted). @@ -13649,7 +13706,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -13673,7 +13730,7 @@ zerops: - npm run build ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -13906,6 +13963,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/nodejs/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -13955,6 +14015,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Node.js application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/nodejs/how-to/scaling) or when a runtime container is restarted). @@ -15146,7 +15209,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -15169,7 +15232,7 @@ zerops: - composer install ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -15409,6 +15472,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/php/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -15459,6 +15525,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your PHP application is started. +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/php/how-to/scaling) or when a runtime container is restarted). @@ -17075,7 +17144,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -17297,6 +17366,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/python/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -17346,6 +17418,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Python application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/python/how-to/scaling) or when a runtime container is restarted). @@ -18142,10 +18217,10 @@ Zerops requires full access to your repository in order to configure webhooks an - Your GitHub repository is now connected, and builds will be triggered based on the configured triggers. --- -### Managing Your GitHub Integration -To skip triggering a build for a specific commit, you can include `ci skip` or `skip ci` in your commit message (case insensitive). This tells Zerops to ignore that particular commit during the build process. +### Skip the automatic pipeline once +To ensure that a pipeline is not triggered by a specific commit, add `[ci skip]` or `[skip ci]` to the commit message. It is case insensitive. :::note -Although the webhook will still be delivered to GitHub, no action will be taken if `ci skip` is present in the commit message. +You will still see a successful delivery of a webhook in your GitHub repository as a webhook is actually triggered, but with no action. ::: --- ### Disconnecting Your Repository @@ -18235,10 +18310,10 @@ Zerops requires full access to configure webhooks and download your code. Your s - Confirm your settings to complete the integration --> --- -## Managing Your GitLab Integration -To skip triggering a build for a specific commit, you can include `ci skip` or `skip ci` in your commit message (case insensitive). This tells Zerops to ignore that particular commit during the build process. +### Skip the automatic pipeline once +To ensure that a pipeline is not triggered by a specific commit, add `[ci skip]` or `[skip ci]` to the commit message. It is case insensitive. :::note -Although the webhook will still be delivered to GitLab, no action will be taken if `ci skip` is present in the commit message. +You will still see a successful delivery of a webhook in your GitLab repository as a webhook is actually triggered, but with no action. ::: --- ## Disconnecting Your Repository @@ -22556,7 +22631,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -22579,7 +22654,7 @@ zerops: - cargo b --release ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -22807,6 +22882,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/rust/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -22857,6 +22935,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Rust application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/rust/how-to/scaling) or when a runtime container is restarted). @@ -24251,7 +24332,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -24274,7 +24355,7 @@ zerops: - ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -24468,6 +24549,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/ubuntu/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -24516,6 +24600,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Ubuntu application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/ubuntu/how-to/scaling) or when a runtime container is restarted). @@ -24750,7 +24837,7 @@ The default build environment contains: ### Customize build environment To install additional packages or tools, add one or more build.prepareCommands to your `zerops.yaml`. :::info -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in the `/build/source` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). ::: ### Build hardware resources All runtime services use the same hardware resources for build containers: @@ -25471,6 +25558,9 @@ build: - sudo apt-get update - sudo apt-get install -y some-package ``` +:::note +`build.prepareCommands` run in the `/home/zerops` directory. +::: ### buildCommands Defines the commands to build your application. ```yaml @@ -25479,6 +25569,9 @@ build: - npm install - npm run build ``` +:::note +`build.buildCommands` run in the `/build/source` directory. +::: #### Running commands in a single shell instance: ```yaml buildCommands: @@ -25623,6 +25716,9 @@ Indicates whether the port is running a web server: - Used by Zerops for [public access](/features/access) configuration ### prepareCommands Customizes the runtime environment by installing additional dependencies or tools. +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: ### initCommands Defines commands to run each time a new runtime container starts or restarts. ```yaml @@ -25630,6 +25726,9 @@ run: initCommands: - rm -rf ./cache ``` +:::note +`run.initCommands` run in the `/var/www` directory. +::: ### start Defines the start command for your application. ```yaml diff --git a/apps/docs/static/llms-small.txt b/apps/docs/static/llms-small.txt index e1d94c1f..3550d18a 100644 --- a/apps/docs/static/llms-small.txt +++ b/apps/docs/static/llms-small.txt @@ -135,7 +135,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -158,7 +158,7 @@ zerops: - ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -370,6 +370,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/alpine/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -418,6 +421,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Alpine application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/alpine/how-to/scaling) or when a runtime container is restarted). @@ -652,7 +658,7 @@ The default build environment contains: ### Customize build environment To install additional packages or tools, add one or more build.prepareCommands to your `zerops.yaml`. :::info -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in the `/build/source` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). ::: ### Build hardware resources All runtime services use the same hardware resources for build containers: @@ -1209,7 +1215,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -1233,7 +1239,7 @@ zerops: - bun run build ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](build-pipeline#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](build-pipeline#preparecommands) attribute @@ -1459,6 +1465,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](build-pipeline#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -1508,6 +1517,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Bun application is started via the [start command](build-pipeline#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the [horizontal scaling](scaling) or when a runtime container is restarted). @@ -2391,7 +2403,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -2414,7 +2426,7 @@ zerops: - deno task build ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -2639,6 +2651,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/deno/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -2688,6 +2703,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Deno application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/deno/how-to/scaling) or when a runtime container is restarted). @@ -2924,7 +2942,7 @@ The default Deno build environment contains: ### Customize build environment To install additional packages or tools, add one or more [build.prepareCommands](/deno/how-to/build-pipeline#preparecommands) to your `zerops.yaml`. :::info -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in the `/build/source` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). ::: ### Build hardware resources All runtime services use the same hardware resources for build containers: @@ -3738,7 +3756,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -3761,7 +3779,7 @@ zerops: - dotnet build -o app ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -3991,6 +4009,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/dotnet/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -4042,6 +4063,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your .NET application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/dotnet/how-to/scaling) or when a runtime container is restarted). @@ -4843,7 +4867,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -4867,7 +4891,7 @@ zerops: - npm run build ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -5093,6 +5117,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/elixir/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -5142,6 +5169,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Elixir application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/elixir/how-to/scaling) or when a runtime container is restarted). @@ -7070,6 +7100,9 @@ run: - sudo apk add --no-cache imagemagick - sudo apt-get update && apt-get install -y some-package # for Ubuntu ``` +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: Zerops creates the custom runtime image from this container after all commands complete successfully. #### `build.addToRunPrepare` Copy specific files from the build phase to the runtime prepare phase. This is useful when you need source files during runtime preparation: @@ -7946,7 +7979,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -7970,7 +8003,7 @@ zerops: - npm run build ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -8196,6 +8229,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/gleam/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -8245,6 +8281,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Gleam application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/gleam/how-to/scaling) or when a runtime container is restarted). @@ -8966,7 +9005,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -8989,7 +9028,7 @@ zerops: - go build -o app main.go ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -9218,6 +9257,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/go/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -9267,6 +9309,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Go application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/go/how-to/scaling) or when a runtime container is restarted). @@ -10061,7 +10106,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -10084,7 +10129,7 @@ zerops: - ./mvnw clean install ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -10314,6 +10359,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/java/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -10363,6 +10411,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Java application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/java/how-to/scaling) or when a runtime container is restarted). @@ -12537,6 +12588,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/nginx/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -12587,6 +12641,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Nginx application is started. +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/nginx/how-to/scaling) or when a runtime container is restarted). @@ -13408,7 +13465,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -13432,7 +13489,7 @@ zerops: - npm run build ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -13665,6 +13722,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/nodejs/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -13714,6 +13774,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Node.js application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/nodejs/how-to/scaling) or when a runtime container is restarted). @@ -14905,7 +14968,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -14928,7 +14991,7 @@ zerops: - composer install ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -15168,6 +15231,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/php/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -15218,6 +15284,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your PHP application is started. +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/php/how-to/scaling) or when a runtime container is restarted). @@ -16834,7 +16903,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -17056,6 +17125,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/python/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -17105,6 +17177,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Python application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/python/how-to/scaling) or when a runtime container is restarted). @@ -17879,7 +17954,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -17902,7 +17977,7 @@ zerops: - cargo b --release ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -18130,6 +18205,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/rust/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -18180,6 +18258,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Rust application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/rust/how-to/scaling) or when a runtime container is restarted). @@ -19574,7 +19655,7 @@ When the first build is triggered, Zerops will 1. create a build container 2. download your application code from your repository 3. run the prepare commands in the defined order -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in `/build/source` before the prepare commands are triggered, so you can use any file from your repository in your prepare commands (e.g. a configuration file). The commands themselves run in the `/home/zerops` directory. :::note These commands are skipped when using cached environment. Modifying `prepareCommands` will invalidate your build cache. See our [Build Cache Documentation](/features/build-cache) for details about cache invalidation. ::: @@ -19597,7 +19678,7 @@ zerops: - ... ``` -Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container. +Build commands are optional. Zerops triggers each command in the defined order in a dedicated build container, running from the `/build/source` directory. Before the build commands are triggered the build container contains: 1. base environment defined by the [base](#base) attribute 2. optional customisation of the base environment defined in the [prepareCommands](#preparecommands) attribute @@ -19791,6 +19872,9 @@ When the first deploy with a defined prepare attribute is triggered, Zerops will 1. create a prepare runtime container 2. optionally: [copy selected folders or files from your build container](#copy-folders-or-files-from-your-build-container) 3. run the `prepareCommands` commands in the defined order +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: #### Command exit code If any command fails, it returns an exit code other than 0 and the deploy is canceled. Read the [prepare runtime log](/ubuntu/how-to/logs#prepare-runtime-log) to troubleshoot the error. If the command ends successfully, it returns the exit code 0 and Zerops triggers the following command. When all `prepareCommands` commands are finished, your custom runtime environment is ready for the deploy phase. #### Cache of your custom runtime environment @@ -19839,6 +19923,9 @@ zerops: - rm -rf ./cache ``` These commands are triggered in the runtime container before your Ubuntu application is started via the [start command](#start). +:::note +`run.initCommands` run in the `/var/www` directory. +::: Use init commands to clean or initialise your application cache or similar operations. :::caution The init commands will delay the start of your application each time a new runtime container is started (including the horizontal [scaling](/ubuntu/how-to/scaling) or when a runtime container is restarted). @@ -20073,7 +20160,7 @@ The default build environment contains: ### Customize build environment To install additional packages or tools, add one or more build.prepareCommands to your `zerops.yaml`. :::info -The application code is available in the `/var/www` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). +The application code is available in the `/build/source` folder in your build container before the prepare commands are triggered. This allows you to use any file from your application code in your prepare commands (e.g. a configuration file). ::: ### Build hardware resources All runtime services use the same hardware resources for build containers: @@ -20794,6 +20881,9 @@ build: - sudo apt-get update - sudo apt-get install -y some-package ``` +:::note +`build.prepareCommands` run in the `/home/zerops` directory. +::: ### buildCommands Defines the commands to build your application. ```yaml @@ -20802,6 +20892,9 @@ build: - npm install - npm run build ``` +:::note +`build.buildCommands` run in the `/build/source` directory. +::: #### Running commands in a single shell instance: ```yaml buildCommands: @@ -20946,6 +21039,9 @@ Indicates whether the port is running a web server: - Used by Zerops for [public access](/features/access) configuration ### prepareCommands Customizes the runtime environment by installing additional dependencies or tools. +:::note +`run.prepareCommands` run in the `/home/zerops` directory. +::: ### initCommands Defines commands to run each time a new runtime container starts or restarts. ```yaml @@ -20953,6 +21049,9 @@ run: initCommands: - rm -rf ./cache ``` +:::note +`run.initCommands` run in the `/var/www` directory. +::: ### start Defines the start command for your application. ```yaml diff --git a/zerops.yml b/zerops.yml index d053c0a4..e140d716 100644 --- a/zerops.yml +++ b/zerops.yml @@ -18,6 +18,7 @@ zerops: base: static initCommands: - sudo sed -i 's/^\(\s*text\/plain\s\+\)txt;$/\1txt md;/' /etc/nginx/mime.types + - printf 'charset utf-8;\ncharset_types text/plain;\n' | sudo tee /etc/nginx/conf.d/charset.conf - sudo service nginx reload routing: headers: