This is an automated email from the ASF dual-hosted git repository.
hansva pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/hop.git
The following commit(s) were added to refs/heads/main by this push:
new fdf99410f3 documentation fixes. fixes #6012 (#6016)
fdf99410f3 is described below
commit fdf99410f344587fd0354492a60482d0a02cea68
Author: Bart Maertens <[email protected]>
AuthorDate: Sat Nov 15 16:15:17 2025 +0100
documentation fixes. fixes #6012 (#6016)
---
.../modules/ROOT/pages/hop-doc/index.adoc | 2 +-
.../modules/ROOT/pages/hop-gui/hop-gui-git.adoc | 6 ++--
.../modules/ROOT/pages/hop-tools/hop.adoc | 3 +-
.../metadata-types/salesforce-connection.adoc | 34 ++++++++++++----------
.../azure-key-vault-variable-resolver.adoc | 2 +-
.../pages/pipeline/transforms/getdatafromxml.adoc | 8 ++---
.../ROOT/pages/pipeline/transforms/tableinput.adoc | 18 ++++++------
.../ROOT/pages/workflow/actions/filesexist.adoc | 4 ++-
8 files changed, 41 insertions(+), 36 deletions(-)
diff --git a/docs/hop-user-manual/modules/ROOT/pages/hop-doc/index.adoc
b/docs/hop-user-manual/modules/ROOT/pages/hop-doc/index.adoc
index ef0b00a91c..cceb4688e5 100644
--- a/docs/hop-user-manual/modules/ROOT/pages/hop-doc/index.adoc
+++ b/docs/hop-user-manual/modules/ROOT/pages/hop-doc/index.adoc
@@ -100,4 +100,4 @@ Open a terminal, change to the directory where you unzipped
Apache Hop and run:
----
./hop doc -j demo -t /tmp/hop/docs --include-notes --include-parameters
--include-metadata
----
-
+====
\ No newline at end of file
diff --git a/docs/hop-user-manual/modules/ROOT/pages/hop-gui/hop-gui-git.adoc
b/docs/hop-user-manual/modules/ROOT/pages/hop-gui/hop-gui-git.adoc
index 4b1fdb7e1b..20687b2697 100644
--- a/docs/hop-user-manual/modules/ROOT/pages/hop-gui/hop-gui-git.adoc
+++ b/docs/hop-user-manual/modules/ROOT/pages/hop-gui/hop-gui-git.adoc
@@ -39,12 +39,12 @@ The available options to work with files and the available
git operations in thi
|icon|action|description|shortcut
|image:icons/arrow-right.svg[width="24px"]|Open selected file|Opens the
selected file in the appropriate editor (pipeline or workflow editor for
workflows and pipelines, text editor for other file.|double-click
|image:icons/folder-add.svg[width="24px"]|Add folder|adds a new folder at the
selected location. A popup is shown for the folder name.|
-|image:icons/expand-all.svg[width="24px"]|Expand all folders|Display all
nested folders in the directory tree.|
-|image:icons/collapse-all.svg[width="24px"]|Collapse all folders|Hide all
nested folders in the directory tree.|
+|image:getting-started/icons/expand-all.svg[width="24px"]|Expand all
folders|Display all nested folders in the directory tree.|
+|image:getting-started/icons/collapse-all.svg[width="24px"]|Collapse all
folders|Hide all nested folders in the directory tree.|
|image:icons/delete.svg[width="24px"]|Delete Selected File|Deletes the
selected file.|DEL
|image:icons/rename.svg[width="24px"]|Rename the selected file|Makes the
selected file name editable to allow renaming.|F2
|image:icons/refresh.svg[width="24px"]|Refresh|Refreshes the projects folder
and file structure.|
-|image:icons/hide.svg[width="24px"]|Show or hide files|Show or hide files or
directories.|
+|image:getting-started/icons/hide.svg[width="24px"]|Show or hide files|Show or
hide files or directories.|
|image:icons/git-info.svg[width="24px"]|Git info|Populates the file explorer's
git dialog with version information for the selected file.|
|image:icons/git-add.svg[width="24px"]|Git Add|Add the selected file to
version control.|
|image:icons/git-revert.svg[width="24px"]|Git Revert|Revert file to last
committed version (HEAD).|
diff --git a/docs/hop-user-manual/modules/ROOT/pages/hop-tools/hop.adoc
b/docs/hop-user-manual/modules/ROOT/pages/hop-tools/hop.adoc
index 7cd15939ef..5057f1a72d 100644
--- a/docs/hop-user-manual/modules/ROOT/pages/hop-tools/hop.adoc
+++ b/docs/hop-user-manual/modules/ROOT/pages/hop-tools/hop.adoc
@@ -49,6 +49,8 @@ Commands:
server Run a Hop server
----
+=====
+
== Options
[options="header"]
@@ -59,4 +61,3 @@ Commands:
|-V|Show the current Hop version
|===
-
diff --git
a/docs/hop-user-manual/modules/ROOT/pages/metadata-types/salesforce-connection.adoc
b/docs/hop-user-manual/modules/ROOT/pages/metadata-types/salesforce-connection.adoc
index 545003f045..10ad4be1fe 100644
---
a/docs/hop-user-manual/modules/ROOT/pages/metadata-types/salesforce-connection.adoc
+++
b/docs/hop-user-manual/modules/ROOT/pages/metadata-types/salesforce-connection.adoc
@@ -15,6 +15,8 @@ language governing permissions and limitations under the
License.
////
:imagesdir: ../../assets/images/
+:openvar: ${
+:closevar: }
:page-pagination:
:description: Describes a Salesforce connection. The Salesforce connection,
specified on a project level, can be reused across multiple Salesforce
transforms.
@@ -22,7 +24,7 @@ License.
== Description
-image:icons/SFI.svg[width="24px"]
+image:transforms/icons/SFI.svg[width="24px"]
Describes a Salesforce connection that can be reused across multiple
Salesforce transforms.
@@ -80,7 +82,7 @@ Server-to-server authentication using JWT (JSON Web Token)
signed with RSA priva
|Password
|
-|Your Salesforce password (can use variables like `${SF_PASS}`)
+|Your Salesforce password (can use variables like `{openvar}SF_PASS{closevar}`)
|Security Token (Optional)
|
@@ -140,7 +142,7 @@ Server-to-server authentication using JWT (JSON Web Token)
signed with RSA priva
|Private Key
|
-|RSA private key in PKCS8 PEM format. For security, use variables like
`${SF_JWT_PRIVATE_KEY}` to reference keys stored in external secret managers.
The key is encrypted when saved. Click Browse to load from file.
+|RSA private key in PKCS8 PEM format. For security, use variables like
`{openvar}SF_JWT_PRIVATE_KEY{closevar}` to reference keys stored in external
secret managers. The key is encrypted when saved. Click Browse to load from
file.
|Token Endpoint
|https://login.salesforce.com
@@ -161,7 +163,7 @@ Follow these steps to create a Salesforce connection using
username and password
5. Ensure "Username/Password" is selected as the Authentication Type
6. Fill in the required fields:
* **Username**: Your Salesforce username or email address
- * **Password**: Your Salesforce password (or use a variable like
`${SF_PASS}`)
+ * **Password**: Your Salesforce password (or use a variable like
`{openvar}SF_PASS{closevar}`)
* **Security Token (Optional)**: Only required if your organization has IP
restrictions enabled and you're connecting from an untrusted IP address. If you
need a security token, you can request it from Salesforce by going to Settings
> My Personal Information > Reset My Security Token
* **Target URL**: The default
`https://login.salesforce.com/services/Soap/u/64.0` works for most cases. Use
`https://test.salesforce.com/services/Soap/u/64.0` for sandbox environments
7. Click "Test Connection" to verify your settings
@@ -313,11 +315,11 @@ If you selected "Admin approved users are pre-authorized":
4. Enter a descriptive name for your connection
5. Select "OAuth JWT Bearer" as the Authentication Type
6. Fill in the JWT settings:
- * **Username**: Your Salesforce username (e.g., `[email protected]` or use
`${SF_USER}`)
- * **Consumer Key**: Paste the Consumer Key from your Salesforce Connected
App (or use `${SF_CONSUMER_KEY}`)
+ * **Username**: Your Salesforce username (e.g., `[email protected]` or use
`{openvar}SF_USER{closevar}`)
+ * **Consumer Key**: Paste the Consumer Key from your Salesforce Connected
App (or use `{openvar}SF_CONSUMER_KEY{closevar}`)
* **Private Key**:
** Click the "Browse..." button to load your private key file
(`salesforce_private_pkcs8.key`)
- ** OR use a variable reference: `${SF_JWT_PRIVATE_KEY}` (recommended for
production)
+ ** OR use a variable reference: `{openvar}SF_JWT_PRIVATE_KEY{closevar}`
(recommended for production)
* **Token Endpoint**:
** Use `https://login.salesforce.com` for production
** Use `https://test.salesforce.com` for sandbox environments
@@ -337,7 +339,7 @@ IMPORTANT: The private key is the most sensitive component
of JWT authentication
export SF_JWT_PRIVATE_KEY="$(cat /secure/path/salesforce_private_pkcs8.key)"
# Or use Hop's variable system
-SF_JWT_PRIVATE_KEY = ${SECRET:azure-keyvault:salesforce-jwt-key}
+SF_JWT_PRIVATE_KEY =
{}openvar}SECRET:azure-keyvault:salesforce-jwt-key{closevar}
----
* **Use Azure Key Vault, AWS Secrets Manager, or HashiCorp Vault** for
production deployments
@@ -376,9 +378,9 @@ All connection fields support Hop variables:
[source,properties]
----
-Username: ${SF_USER}
-Password: ${SF_PASS}
-Target URL: ${SF_URL}
+Username: {openvar}SF_USER{closevar}
+Password: {openvar}SF_PASS{closevar}
+Target URL: {openva}rSF_URL{closevar}
----
This allows you to use different credentials for different environments
without changing your pipelines.
@@ -411,8 +413,8 @@ This allows you to use different credentials for different
environments without
----
Name: Salesforce-Production
Authentication Type: Username/Password
-Username: ${SF_USER}
-Password: ${SF_PASS}
+Username: {openvar}SF_USER{closevar}
+Password: {openvar}SF_PASS{closevar}
Target URL: https://login.salesforce.com/services/Soap/u/64.0
----
@@ -422,8 +424,8 @@ Target URL:
https://login.salesforce.com/services/Soap/u/64.0
----
Name: Salesforce-OAuth-Production
Authentication Type: OAuth
-Client ID: ${SF_CLIENT_ID}
-Client Secret: ${SF_CLIENT_SECRET}
+Client ID: {openvar}SF_CLIENT_ID{closevar}
+Client Secret: {openvar}SF_CLIENT_SECRET{closevar}
Instance URL: https://yourcompany.my.salesforce.com
----
@@ -435,7 +437,7 @@ Name: Salesforce-JWT-Production
Authentication Type: OAuth JWT Bearer
Username: [email protected]
Consumer Key:
3MVG9rZjd7MXFdLhRZwW8nz6y4HzBapVD3GeaSU_Ukf4HxwFls4LiQIJGJISQKQf8OO96mjyvT5CPI0EFiWhH
-Private Key: ${SF_JWT_PRIVATE_KEY}
+Private Key: {openvar}SF_JWT_PRIVATE_KEY{closevar}
Token Endpoint: https://login.salesforce.com
----
diff --git
a/docs/hop-user-manual/modules/ROOT/pages/metadata-types/variable-resolver/azure-key-vault-variable-resolver.adoc
b/docs/hop-user-manual/modules/ROOT/pages/metadata-types/variable-resolver/azure-key-vault-variable-resolver.adoc
index 5f8d6fdd24..3acf0f5c87 100644
---
a/docs/hop-user-manual/modules/ROOT/pages/metadata-types/variable-resolver/azure-key-vault-variable-resolver.adoc
+++
b/docs/hop-user-manual/modules/ROOT/pages/metadata-types/variable-resolver/azure-key-vault-variable-resolver.adoc
@@ -324,7 +324,7 @@ To see detailed logging from the variable resolver,
increase the logging level i
== Related Metadata Types
-* xref:metadata-types/variable-resolver/vault-variable-resolver.adoc[HashiCorp
Vault Variable Resolver]
+*
xref:metadata-types/variable-resolver/hashicorp-vault-variable-resolver.adoc[HashiCorp
Vault Variable Resolver]
*
xref:metadata-types/variable-resolver/google-secret-manager-variable-resolver.adoc[Google
Secret Manager Variable Resolver]
*
xref:metadata-types/variable-resolver/pipeline-variable-resolver.adoc[Pipeline
Variable Resolver]
diff --git
a/docs/hop-user-manual/modules/ROOT/pages/pipeline/transforms/getdatafromxml.adoc
b/docs/hop-user-manual/modules/ROOT/pages/pipeline/transforms/getdatafromxml.adoc
index de23ad5e50..e0252d528b 100644
---
a/docs/hop-user-manual/modules/ROOT/pages/pipeline/transforms/getdatafromxml.adoc
+++
b/docs/hop-user-manual/modules/ROOT/pages/pipeline/transforms/getdatafromxml.adoc
@@ -105,9 +105,9 @@ You can also do this using the
xref:pipeline/transforms/xmlinputstream.adoc[XML
|Rownum in output?|Allows you to specify a field name to include the row
number (Integer) in the output of this transform.
|Rownum fieldname|The field to read the row number value from.
-+2|Add to result filename
-|Add files to result filename|Adds the XML filenames read to the result of
this pipeline.
-A unique list is being kept in memory that can be used in the next workflow
action in a workflow, for example in another pipeline.
+2+|Add to result filename|
+|Add files to result filename|Adds the XML filenames read to the result of
this pipeline. A unique list is being kept in memory that can be used in the
next workflow action in a workflow, for example in another pipeline.
+
|===
=== Fields Tab
@@ -149,4 +149,4 @@ A unique list is being kept in memory that can be used in
the next workflow acti
|Last modification field|The field used to store the date the file was last
modified.
|Uri field|The field used to store the XML document's source URL.
|Root uri field|The field used to store the XML document's namespace URL,
taken from the root element
-
+|===
diff --git
a/docs/hop-user-manual/modules/ROOT/pages/pipeline/transforms/tableinput.adoc
b/docs/hop-user-manual/modules/ROOT/pages/pipeline/transforms/tableinput.adoc
index 1dc9f52fce..270f794cc4 100644
---
a/docs/hop-user-manual/modules/ROOT/pages/pipeline/transforms/tableinput.adoc
+++
b/docs/hop-user-manual/modules/ROOT/pages/pipeline/transforms/tableinput.adoc
@@ -30,7 +30,7 @@ a|
The Table Input transform is one of the most frequently used transforms in
Apache Hop. It reads data from a relational database using a connection and an
SQL query, and introduces that data into a pipeline.
This transform supports parameterization using:
-- Apache Hop variables (e.g., `${customerId}`)
+- Apache Hop variables (e.g., `{openvar}customerId{closevar}`)
- Input fields from a previous transform (JDBC prepared statements using `?`
placeholders)
These features make Table Input ideal for dynamic and reusable data retrieval
logic.
@@ -111,10 +111,10 @@ If your query includes Hop variables, enable `Replace
variables in script`. This
----
SELECT *
FROM public.tableinput
-WHERE id > ${PRM_ID};
+WHERE id > {openvar}PRM_ID{closevar};
----
-- `${PRM_ID}` is defined as a pipeline variable (e.g., via parameters or `Set
Variables` transform)
+- `{openvar}PRM_ID{closevar}` is defined as a pipeline variable (e.g., via
parameters or `Set Variables` transform)
image:transforms/tableinput/table-input-variables-in-sql-parameter-definition.png[Parameter
definition in pipeline, width="45%"]
@@ -139,10 +139,10 @@
image:transforms/tableinput/table-input-combine-variables-and-prepared-statement
----
SELECT *
FROM public.tableinput
-where id > ${PRM_ID} AND lastdate > ?;
+where id > {openvar}PRM_ID{closevar} AND lastdate > ?;
----
-- `${startDate}` is a pipeline variable
+- `{openvar}startDate{closevar}` is a pipeline variable
- `?` is a parameter provided by the input stream
== Best Practices and Pro Tips
@@ -166,15 +166,15 @@ Table Input can be used in a metadata-driven pipeline.
For example, create a tem
[source,sql]
----
SELECT *
-FROM ${tableName}
-WHERE ${condition}
+FROM {openvar}tableName{closevar}
+WHERE {openvar}condition{closevar}
----
Then use a Metadata Injection transform to inject actual values (e.g., from a
CSV or database).
.Steps:
1. Create a template pipeline with Table Input
-2. Use `${tableName}` and `${condition}` as placeholders
+2. Use `{openvar}tableName{closevar}` and `{openvar}condition{closevar}` as
placeholders
3. In a separate pipeline, use Metadata Injection to inject values into the
SQL field
4. Execute the injected pipeline
@@ -198,7 +198,7 @@ You can inject metadata into the following fields of the
Table Input transform:
|Transform name|Name of the transform instance.
|Connection|Database connection to execute the query against.
|SQL|SQL statement used to retrieve data. Use `Get SQL select statement` to
auto-generate.
-|Replace variables in script?|Enable to substitute variables (e.g.,
`${param}`) in your SQL before execution.
+|Replace variables in script?|Enable to substitute variables (e.g.,
`{openvar}param{closevar}`) in your SQL before execution.
|Insert data from transform|Select a transform to use its fields as input for
`?` parameters in a prepared statement.
|Execute for each row?|Runs the SQL query once for each incoming row, using
that row’s values as parameters. Only applies when “Insert data from transform”
is enabled. Useful for row-specific lookups, but may be slower on large
datasets.
|Limit size|Number of rows to return. `0` means no limit.
diff --git
a/docs/hop-user-manual/modules/ROOT/pages/workflow/actions/filesexist.adoc
b/docs/hop-user-manual/modules/ROOT/pages/workflow/actions/filesexist.adoc
index 4e7386e290..f51f2a04ba 100644
--- a/docs/hop-user-manual/modules/ROOT/pages/workflow/actions/filesexist.adoc
+++ b/docs/hop-user-manual/modules/ROOT/pages/workflow/actions/filesexist.adoc
@@ -16,6 +16,8 @@ under the License.
////
:documentationPath: /workflow/actions/
:language: en_US
+:openvar: ${
+:closevar: }
:description: The Checks If Files Exist action verifies that the specified
files exist. The action returns true (success) if all the listed files exist,
false (fail) if any of those don't.
= Checks if files exist
@@ -30,5 +32,5 @@ The `Checks if files exist` action verifies that the
specified files exist. The
|===
|Option|Description
|Action name|The name of the workflow action. This name must be unique in a
single workflow.
-|Files/Folders|Specify the files and folders full paths to verify, one per
line. You can use variables like `${PROJECT_HOME}` in the path, and they will
be resolved.
+|Files/Folders|Specify the files and folders full paths to verify, one per
line. You can use variables like `{openvar}PROJECT_HOME{closevar}` in the path,
and they will be resolved.
|===