From fe43fbbadb68b72f13736fd5e357a8368818c119 Mon Sep 17 00:00:00 2001
From: Daniel O'Grady <103028279+daogrady@users.noreply.github.com>
Date: Mon, 12 May 2025 16:18:30 +0200
Subject: [PATCH 01/18] [WIP] Update custom-builds.md
---
guides/deployment/custom-builds.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/guides/deployment/custom-builds.md b/guides/deployment/custom-builds.md
index 19b519fe0..887eb9f02 100644
--- a/guides/deployment/custom-builds.md
+++ b/guides/deployment/custom-builds.md
@@ -96,7 +96,7 @@ If you want to change the default target folder, use the `target` property in _.
#### Node.js
Node.js projects use the folder _./gen_ below the project root as build target folder by default.
-Relevant source files from _db_ or _srv_ folders are copied into this folder, which makes it a self-contained folder that is ready for deployment. The default folder names can be changed with the _folders.db_, _folders.srv_, _folders.app_ configuration. Or you can go for individual build task configuration for full flexibility.
+Relevant source files from _db_ or _srv_ folders are copied into this folder, which makes it a self-contained folder that is ready for deployment. The default folder names can be changed with the `folders.db`, `folders.srv`, `folders.app` configuration. Or you can go for individual build task configuration for full flexibility.
Project files like _.cdsrc.json_ or _.npmrc_ located in the _root_ folder or in the _srv_ folder of your project are copied into the application's deployment folder (default _gen/srv_). Files located in the _srv_ folder have precedence over the corresponding files located in the project root directory.
As a consequence these files are used when deployed to production. Make sure that the folders do not contain one of these files by mistake. Consider using profiles `development` or `production` in order to distinguish environments. CDS configuration that should be kept locally can be defined in a file _.cdsrc-private.json_.
From c59c6cfc42ca8dc82ad10f337d03528971214bde Mon Sep 17 00:00:00 2001
From: Daniel O'Grady
Date: Mon, 12 May 2025 16:22:20 +0200
Subject: [PATCH 02/18] Formatting
---
guides/deployment/custom-builds.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/guides/deployment/custom-builds.md b/guides/deployment/custom-builds.md
index 887eb9f02..7df3de88f 100644
--- a/guides/deployment/custom-builds.md
+++ b/guides/deployment/custom-builds.md
@@ -19,7 +19,7 @@ status: released
The CDS model folders and files used by `cds build` are determined as follows:
-- Known root folders, by [default](../../get-started/#project-structure) the folders _db/, srv/, app/_, can also be configured by [_folders.db, folders.srv, folders.app_](../../get-started/#project-structure).
+- Known root folders, by [default](../../get-started/#project-structure) the folders _db/, srv/, app/_, can also be configured by [`folders.db`, `folders.srv`, `folders.app`](../../get-started/#project-structure).
- The _src_ folder configured for the individual build task.
- If [Feature toggles](../extensibility/feature-toggles#enable-feature-toggles) are enabled: subfolders of the folder _fts_.
- CDS Model folders and files defined by the [required services](../../node.js/cds-env#services) of your project. This also includes models used by required built-in CDS services, like [persistent outbox](../../node.js/outbox#persistent-outbox) or [MTX related services](../multitenancy/mtxs#mtx-services-reference).
From 397bf40bdd838d774e2001d2e9c897baf0a7e860 Mon Sep 17 00:00:00 2001
From: Daniel O'Grady
Date: Mon, 12 May 2025 16:26:38 +0200
Subject: [PATCH 03/18] Make file name explicit
---
guides/deployment/custom-builds.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/guides/deployment/custom-builds.md b/guides/deployment/custom-builds.md
index 7df3de88f..f90109db7 100644
--- a/guides/deployment/custom-builds.md
+++ b/guides/deployment/custom-builds.md
@@ -110,7 +110,7 @@ Relevant source files from _db_ or _srv_ folders are copied into this folder, wh
**Note:**
`cds build` provides options you can use to switch on or off the copy behavior on build task level:
-```json
+```json [package.json]
{
"build": {
"tasks": [
From 8058eed810fbea6cd97c3b224fcc3c636946f1a1 Mon Sep 17 00:00:00 2001
From: Daniel O'Grady
Date: Mon, 12 May 2025 16:30:01 +0200
Subject: [PATCH 04/18] Wording
---
guides/deployment/custom-builds.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/guides/deployment/custom-builds.md b/guides/deployment/custom-builds.md
index f90109db7..27bb2fa4b 100644
--- a/guides/deployment/custom-builds.md
+++ b/guides/deployment/custom-builds.md
@@ -96,7 +96,7 @@ If you want to change the default target folder, use the `target` property in _.
#### Node.js
Node.js projects use the folder _./gen_ below the project root as build target folder by default.
-Relevant source files from _db_ or _srv_ folders are copied into this folder, which makes it a self-contained folder that is ready for deployment. The default folder names can be changed with the `folders.db`, `folders.srv`, `folders.app` configuration. Or you can go for individual build task configuration for full flexibility.
+Relevant source files from _db_ or _srv_ folders are copied into this folder, which makes it self-contained and ready for deployment. The default folder names can be changed with the `folders.db`, `folders.srv`, `folders.app` configuration. Or you can go for individual build task configuration for full flexibility.
Project files like _.cdsrc.json_ or _.npmrc_ located in the _root_ folder or in the _srv_ folder of your project are copied into the application's deployment folder (default _gen/srv_). Files located in the _srv_ folder have precedence over the corresponding files located in the project root directory.
As a consequence these files are used when deployed to production. Make sure that the folders do not contain one of these files by mistake. Consider using profiles `development` or `production` in order to distinguish environments. CDS configuration that should be kept locally can be defined in a file _.cdsrc-private.json_.
@@ -108,7 +108,7 @@ Relevant source files from _db_ or _srv_ folders are copied into this folder, wh
[Learn more about `cds env get`](../../node.js/cds-env#cli){.learn-more}
**Note:**
-`cds build` provides options you can use to switch on or off the copy behavior on build task level:
+`cds build` provides options you can use to switch the copy behavior on build task level on or off:
```json [package.json]
{
From fcb58a6343db1f03f0797d1c3b7cb09ffb0b6228 Mon Sep 17 00:00:00 2001
From: Daniel O'Grady
Date: Mon, 12 May 2025 16:33:59 +0200
Subject: [PATCH 05/18] Typo
---
guides/deployment/custom-builds.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/guides/deployment/custom-builds.md b/guides/deployment/custom-builds.md
index 27bb2fa4b..a949e55c4 100644
--- a/guides/deployment/custom-builds.md
+++ b/guides/deployment/custom-builds.md
@@ -21,7 +21,7 @@ The CDS model folders and files used by `cds build` are determined as follows:
- Known root folders, by [default](../../get-started/#project-structure) the folders _db/, srv/, app/_, can also be configured by [`folders.db`, `folders.srv`, `folders.app`](../../get-started/#project-structure).
- The _src_ folder configured for the individual build task.
-- If [Feature toggles](../extensibility/feature-toggles#enable-feature-toggles) are enabled: subfolders of the folder _fts_.
+- If [feature toggles](../extensibility/feature-toggles#enable-feature-toggles) are enabled: subfolders of the folder _fts_.
- CDS Model folders and files defined by the [required services](../../node.js/cds-env#services) of your project. This also includes models used by required built-in CDS services, like [persistent outbox](../../node.js/outbox#persistent-outbox) or [MTX related services](../multitenancy/mtxs#mtx-services-reference).
Feature toggle folders and required built-in service models will also be added if user defined models have already been configured as [_model_ option](#build-task-properties) in your build tasks.
From b5c85b95fd942254db53fd1536bc21693c558ea6 Mon Sep 17 00:00:00 2001
From: Daniel O'Grady
Date: Mon, 12 May 2025 16:46:06 +0200
Subject: [PATCH 06/18] Explicitly link to build task description
---
guides/deployment/custom-builds.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/guides/deployment/custom-builds.md b/guides/deployment/custom-builds.md
index a949e55c4..5b12f0b6f 100644
--- a/guides/deployment/custom-builds.md
+++ b/guides/deployment/custom-builds.md
@@ -32,7 +32,7 @@ Feature toggle folders and required built-in service models will also be added i
For example, you want to configure the _src_ folder and add the default models. To achieve this, do not define the _model_ option in your build task. That way, the model paths will still be dynamically determined, but the _src_ folder is taken from the build task configuration. So you benefit from the automatic determination of models, for example, when adding a new external services, or when CAP is changing any built-in service configuration values.
:::
-To control which tasks `cds build` executes, you can add them as part of your [project configuration](../../node.js/cds-env#project-settings) in _package.json_ or _.cdsrc.json_.
+To control which tasks `cds build` executes, you can add them as part of your [project configuration](../../node.js/cds-env#project-settings) in _package.json_ or _.cdsrc.json_, as outlined [below](#build-task-properties).
## Properties
From 08c9ab12246675a55317e97635e6773ff1841a74 Mon Sep 17 00:00:00 2001
From: Daniel O'Grady
Date: Mon, 12 May 2025 17:04:29 +0200
Subject: [PATCH 07/18] Typo
---
guides/deployment/custom-builds.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/guides/deployment/custom-builds.md b/guides/deployment/custom-builds.md
index 5b12f0b6f..f6c5a67ab 100644
--- a/guides/deployment/custom-builds.md
+++ b/guides/deployment/custom-builds.md
@@ -141,7 +141,7 @@ This causes `cds build` to create the build output below the individual source f
## Implement a Build Plugin {#custom-build-plugins}
-CDS already offers build plugins to create deployment layouts for the most use cases. However, you find cases where these plugins are not enough and you have to develop your own. This section shows how such a build plugin can be implemented and how it can be used in projects.
+CDS already offers build plugins to create deployment layouts for the most use cases. However, you will find cases where these plugins are not enough and you have to develop your own. This section shows how such a build plugin can be implemented and how it can be used in projects.
Build plugins are run by `cds build` to generate the required deployment artifacts. Build tasks hold the actual project specific configuration. The task's `for` property value has to match the build plugin ID.
From 59f3909f7a66c340d27af426a33407950207207b Mon Sep 17 00:00:00 2001
From: Daniel O'Grady
Date: Wed, 21 May 2025 07:55:03 +0200
Subject: [PATCH 08/18] Clarify use of options in build task
---
guides/deployment/custom-builds.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/guides/deployment/custom-builds.md b/guides/deployment/custom-builds.md
index f6c5a67ab..48e539ce1 100644
--- a/guides/deployment/custom-builds.md
+++ b/guides/deployment/custom-builds.md
@@ -108,7 +108,7 @@ Relevant source files from _db_ or _srv_ folders are copied into this folder, wh
[Learn more about `cds env get`](../../node.js/cds-env#cli){.learn-more}
**Note:**
-`cds build` provides options you can use to switch the copy behavior on build task level on or off:
+`cds build` provides `options` you can use to switch the copy behavior of specific files on or off on build task level:
```json [package.json]
{
From 26024a950f60153401946b1de5aa64f5e717a165 Mon Sep 17 00:00:00 2001
From: Daniel O'Grady
Date: Wed, 21 May 2025 08:07:11 +0200
Subject: [PATCH 09/18] Add example
---
guides/deployment/custom-builds.md | 19 ++++++++++++++++++-
1 file changed, 18 insertions(+), 1 deletion(-)
diff --git a/guides/deployment/custom-builds.md b/guides/deployment/custom-builds.md
index 48e539ce1..816094ad3 100644
--- a/guides/deployment/custom-builds.md
+++ b/guides/deployment/custom-builds.md
@@ -29,7 +29,24 @@ Feature toggle folders and required built-in service models will also be added i
[Learn more about the calculation of the concrete list of CDS models.](../../node.js/cds-compile#cds-resolve){.learn-more}
::: tip If custom build tasks are configured, those properties have precedence
-For example, you want to configure the _src_ folder and add the default models. To achieve this, do not define the _model_ option in your build task. That way, the model paths will still be dynamically determined, but the _src_ folder is taken from the build task configuration. So you benefit from the automatic determination of models, for example, when adding a new external services, or when CAP is changing any built-in service configuration values.
+For example, you want to configure the _src_ folder and add the default models. To achieve this, do not define the _model_ option in your build task:
+
+```json
+{
+ "build": {
+ "target": "gen",
+ "tasks": [
+ {
+ "for": "nodejs",
+ "src": "srv",
+ "options": { /* no "model" entry here */ }
+ }
+ ]
+ }
+}
+```
+
+ That way, the model paths will still be dynamically determined, but the _src_ folder is taken from the build task configuration. So you benefit from the automatic determination of models, for example, when adding a new external services, or when CAP is changing any built-in service configuration values.
:::
To control which tasks `cds build` executes, you can add them as part of your [project configuration](../../node.js/cds-env#project-settings) in _package.json_ or _.cdsrc.json_, as outlined [below](#build-task-properties).
From ffb8fa6fcd40f0402e7a45dab14e445336ef25ca Mon Sep 17 00:00:00 2001
From: Daniel O'Grady
Date: Wed, 21 May 2025 08:40:22 +0200
Subject: [PATCH 10/18] Use Config tag for build.target explanation
---
guides/deployment/custom-builds.md | 8 ++------
1 file changed, 2 insertions(+), 6 deletions(-)
diff --git a/guides/deployment/custom-builds.md b/guides/deployment/custom-builds.md
index b9aa537b3..ac3fe7e75 100644
--- a/guides/deployment/custom-builds.md
+++ b/guides/deployment/custom-builds.md
@@ -106,13 +106,9 @@ Alternatively you can execute build tasks and pass the described arguments from
### Build Target Folder {#build-target-folder}
-If you want to change the default target folder, use the `target` property in _.cdsrc.json_ or _package.json_. It is resolved based on the root folder of your project.
+If you want to change the default target folder, use the cds.build.target=myfolder property. It is resolved based on the root folder of your project.
+
-```json
-{
- "build": { "target" : "myfolder" }
-}
-```
#### Node.js
From 81cf30b5d46f38c9869d7cde23964a976037e64b Mon Sep 17 00:00:00 2001
From: Daniel O'Grady
Date: Wed, 21 May 2025 08:47:54 +0200
Subject: [PATCH 11/18] Example got workspace deps
---
guides/deployment/custom-builds.md | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/guides/deployment/custom-builds.md b/guides/deployment/custom-builds.md
index ac3fe7e75..d70290030 100644
--- a/guides/deployment/custom-builds.md
+++ b/guides/deployment/custom-builds.md
@@ -144,7 +144,18 @@ Use CLI option `--ws-pack` to enable tarball based deployment of [npm workspace]
As an effect, your workspace dependencies can be deployed to SAP BTP without them being published to an npm registry before.
-Behind the scenes, `cds build --ws-pack` creates a tarball in folder _gen/srv_ for each workspace dependency of your project that has a `*` version identifier. Dependencies in _gen/package.json_ will be adapted to point to the correct tarball file URL.
+Behind the scenes, `cds build --ws-pack` creates a tarball in folder _gen/srv_ for each workspace dependency of your project that has a `*` version identifier. Dependencies in _gen/package.json_ will be adapted to point to the correct tarball file URL:
+
+::: code-group
+```json [package.json]
+{
+ "dependencies": {
+ "some-package": "^1", // regular package
+ "some-workspace": "*" // workspace dependency, marked as such via "*"
+ }
+}
+```
+:::
Packaging of the tarball content is based on the rules of the [`npm pack`](https://docs.npmjs.com/cli/commands/npm-pack) command:
From c1966daf6f571699de58c6e4e6e98916ec6f8ef6 Mon Sep 17 00:00:00 2001
From: Daniel O'Grady
Date: Wed, 21 May 2025 09:06:46 +0200
Subject: [PATCH 12/18] Use for folders
---
guides/deployment/custom-builds.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/guides/deployment/custom-builds.md b/guides/deployment/custom-builds.md
index d70290030..1fca136e0 100644
--- a/guides/deployment/custom-builds.md
+++ b/guides/deployment/custom-builds.md
@@ -113,7 +113,7 @@ If you want to change the default target folder, use the cds.bui
#### Node.js
Node.js projects use the folder _./gen_ below the project root as build target folder by default.
-Relevant source files from _db_ or _srv_ folders are copied into this folder, which makes it self-contained and ready for deployment. The default folder names can be changed with the `folders.db`, `folders.srv`, `folders.app` configuration. Or you can go for individual build task configuration for full flexibility.
+Relevant source files from _db_ or _srv_ folders are copied into this folder, which makes it self-contained and ready for deployment. The default folder names can be changed with the cds.folders.db, cds.folders.srv, cds.folders.app configuration. Or you can go for individual build task configuration for full flexibility.
Project files like _.cdsrc.json_ or _.npmrc_ located in the _root_ folder or in the _srv_ folder of your project are copied into the application's deployment folder (default _gen/srv_). Files located in the _srv_ folder have precedence over the corresponding files located in the project root directory.
As a consequence these files are used when deployed to production. Make sure that the folders do not contain one of these files by mistake. Consider using profiles `development` or `production` in order to distinguish environments. CDS configuration that should be kept locally can be defined in a file _.cdsrc-private.json_.
From 5977d07f9232c7998c4a766f6f16ab60bb011a2a Mon Sep 17 00:00:00 2001
From: Daniel O'Grady
Date: Wed, 21 May 2025 09:09:15 +0200
Subject: [PATCH 13/18] Add package.json header to snippets
---
guides/deployment/custom-builds.md | 16 ++++++++++++++--
1 file changed, 14 insertions(+), 2 deletions(-)
diff --git a/guides/deployment/custom-builds.md b/guides/deployment/custom-builds.md
index 1fca136e0..c64d4a168 100644
--- a/guides/deployment/custom-builds.md
+++ b/guides/deployment/custom-builds.md
@@ -31,7 +31,9 @@ Feature toggle folders and required built-in service models will also be added i
::: tip If custom build tasks are configured, those properties have precedence
For example, you want to configure the _src_ folder and add the default models. To achieve this, do not define the _model_ option in your build task:
-```json
+::: code-group
+
+```json [package.json]
{
"build": {
"target": "gen",
@@ -46,6 +48,8 @@ For example, you want to configure the _src_ folder and add the default models.
}
```
+:::
+
That way, the model paths will still be dynamically determined, but the _src_ folder is taken from the build task configuration. So you benefit from the automatic determination of models, for example, when adding a new external services, or when CAP is changing any built-in service configuration values.
:::
@@ -57,7 +61,9 @@ To control which tasks `cds build` executes, you can add them as part of your [p
The following build tasks represent the default configuration dynamically determined by `cds build` for a minimal Node.js project when executing `cds build --production` or `cds build --profile production` :
-```json
+::: code-group
+
+```json [package.json]
{
"build": {
"target": "gen",
@@ -69,6 +75,8 @@ The following build tasks represent the default configuration dynamically determ
}
```
+:::
+
::: tip
The executed build tasks are logged to the command line. You can use them as a blue print – copy & paste them into your CDS configuration and adapt them to your needs. See also the command line help for further details using `cds build --help`.
:::
@@ -127,6 +135,8 @@ Relevant source files from _db_ or _srv_ folders are copied into this folder, wh
**Note:**
`cds build` provides `options` you can use to switch the copy behavior of specific files on or off on build task level:
+::: code-group
+
```json [package.json]
{
"build": {
@@ -138,6 +148,8 @@ Relevant source files from _db_ or _srv_ folders are copied into this folder, wh
}
```
+:::
+
#### npm Workspace Support {#build-ws}
Use CLI option `--ws-pack` to enable tarball based deployment of [npm workspace](https://docs.npmjs.com/cli/using-npm/workspaces) dependencies. Workspaces are typically used to manage multiple local packages within a singular top-level root package. Such a setup is often referred to as a [monorepo](https://earthly.dev/blog/npm-workspaces-monorepo/).
From ce97729e9ad517b5beb79589fdb7aa058d712425 Mon Sep 17 00:00:00 2001
From: Daniel O'Grady <103028279+daogrady@users.noreply.github.com>
Date: Wed, 21 May 2025 14:47:45 +0200
Subject: [PATCH 14/18] Update guides/deployment/custom-builds.md
Co-authored-by: Christian Georgi
---
guides/deployment/custom-builds.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/guides/deployment/custom-builds.md b/guides/deployment/custom-builds.md
index c64d4a168..88d7da560 100644
--- a/guides/deployment/custom-builds.md
+++ b/guides/deployment/custom-builds.md
@@ -33,7 +33,7 @@ For example, you want to configure the _src_ folder and add the default models.
::: code-group
-```json [package.json]
+```jsonc [package.json]
{
"build": {
"target": "gen",
From ba3111d7d9d307c7818c3db64d9f6e7c0c8f6e84 Mon Sep 17 00:00:00 2001
From: Daniel O'Grady
Date: Wed, 21 May 2025 14:48:54 +0200
Subject: [PATCH 15/18] Appease spellchecker
---
guides/deployment/custom-builds.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/guides/deployment/custom-builds.md b/guides/deployment/custom-builds.md
index 88d7da560..bb345d797 100644
--- a/guides/deployment/custom-builds.md
+++ b/guides/deployment/custom-builds.md
@@ -114,7 +114,7 @@ Alternatively you can execute build tasks and pass the described arguments from
### Build Target Folder {#build-target-folder}
-If you want to change the default target folder, use the cds.build.target=myfolder property. It is resolved based on the root folder of your project.
+If you want to change the default target folder, use the cds.build.target=path/to/my/folder property. It is resolved based on the root folder of your project.
From d831b758dd30fe27f2108b318b0b0084ba14f101 Mon Sep 17 00:00:00 2001
From: Daniel O'Grady <103028279+daogrady@users.noreply.github.com>
Date: Wed, 21 May 2025 15:39:11 +0200
Subject: [PATCH 16/18] Update guides/deployment/custom-builds.md
Co-authored-by: Christian Georgi
---
guides/deployment/custom-builds.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/guides/deployment/custom-builds.md b/guides/deployment/custom-builds.md
index bb345d797..04af48868 100644
--- a/guides/deployment/custom-builds.md
+++ b/guides/deployment/custom-builds.md
@@ -159,7 +159,7 @@ As an effect, your workspace dependencies can be deployed to SAP BTP without the
Behind the scenes, `cds build --ws-pack` creates a tarball in folder _gen/srv_ for each workspace dependency of your project that has a `*` version identifier. Dependencies in _gen/package.json_ will be adapted to point to the correct tarball file URL:
::: code-group
-```json [package.json]
+```jsonc [package.json]
{
"dependencies": {
"some-package": "^1", // regular package
From d3fcc835a8f024c32b5f366b04fd5164d83e49c9 Mon Sep 17 00:00:00 2001
From: Daniel O'Grady <103028279+daogrady@users.noreply.github.com>
Date: Thu, 22 May 2025 07:32:57 +0200
Subject: [PATCH 17/18] Update guides/deployment/custom-builds.md
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Co-authored-by: René Jeglinsky
---
guides/deployment/custom-builds.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/guides/deployment/custom-builds.md b/guides/deployment/custom-builds.md
index 04af48868..e789d3ab1 100644
--- a/guides/deployment/custom-builds.md
+++ b/guides/deployment/custom-builds.md
@@ -53,7 +53,7 @@ For example, you want to configure the _src_ folder and add the default models.
That way, the model paths will still be dynamically determined, but the _src_ folder is taken from the build task configuration. So you benefit from the automatic determination of models, for example, when adding a new external services, or when CAP is changing any built-in service configuration values.
:::
-To control which tasks `cds build` executes, you can add them as part of your [project configuration](../../node.js/cds-env#project-settings) in _package.json_ or _.cdsrc.json_, as outlined [below](#build-task-properties).
+To control which tasks `cds build` executes, you can add them as part of your [project configuration](../../node.js/cds-env#project-settings) in _package.json_ or _.cdsrc.json_, as outlined [in the following chapter](#build-task-properties).
## Properties
From 1abdc8d8a429c54b402706707214c260a87b0f09 Mon Sep 17 00:00:00 2001
From: Daniel O'Grady <103028279+daogrady@users.noreply.github.com>
Date: Thu, 22 May 2025 07:34:18 +0200
Subject: [PATCH 18/18] Update guides/deployment/custom-builds.md
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Co-authored-by: René Jeglinsky
---
guides/deployment/custom-builds.md | 1 -
1 file changed, 1 deletion(-)
diff --git a/guides/deployment/custom-builds.md b/guides/deployment/custom-builds.md
index e789d3ab1..7bbdecd97 100644
--- a/guides/deployment/custom-builds.md
+++ b/guides/deployment/custom-builds.md
@@ -48,7 +48,6 @@ For example, you want to configure the _src_ folder and add the default models.
}
```
-:::
That way, the model paths will still be dynamically determined, but the _src_ folder is taken from the build task configuration. So you benefit from the automatic determination of models, for example, when adding a new external services, or when CAP is changing any built-in service configuration values.
:::