Skip to content

Commit

Permalink
#532: Initial reorganization of Quarkus guides (#536)
Browse files Browse the repository at this point in the history
  • Loading branch information
domhanak authored Feb 27, 2024
1 parent 10b27e5 commit 74f95eb
Show file tree
Hide file tree
Showing 79 changed files with 1,106 additions and 1,147 deletions.
28 changes: 19 additions & 9 deletions serverlessworkflow/antora.yml
Original file line number Diff line number Diff line change
Expand Up @@ -43,17 +43,21 @@ asciidoc:
# kogito_sw_ga: org.kie.kogito:kogito-quarkus-serverless-workflow
kogito_sw_ga: kogito-quarkus-serverless-workflow
# downstream: 2.7.6.Final-redhat-00006
quarkus_version: 2.16.10.Final
quarkus_version: 3.2.9.Final
# downstream: 2.7.6.Final-redhat-00006 (might be different to the quarkus_version)
quarkus_platform_version: 2.16.10.Final
java_min_version: 11+
maven_min_version: 3.8.6
quarkus_platform_version: 3.2.9.Final
java_min_version: 17+
maven_min_version: 3.9.3
graalvm_min_version: 22.3.0
spec_version: 0.8
vscode_version: 1.67.0
kn_cli_version: 0.31.0
kn_cli_version: 0.32.0
kn_cli_tag: 0.32
docker_min_version: 20.10.7
docker_compose_min_version: 1.27.2
kubernetes_version: 1.26
openshift_version_min: 4.10
openshift_version_max: 4.15
# only used in downstream
operator_version: main
# after TP1, change to Serverless Logic
Expand Down Expand Up @@ -83,7 +87,10 @@ asciidoc:
quarkus_guides_kafka_url: https://quarkus.io/guides/kafka
quarkus_guides_config_reference_url: https://quarkus.io/guides/config-reference
quarkus_guides_infinispan_client_reference_url: https://quarkus.io/guides/infinispan-client-reference
quarkus_guides_profiles_url: https://quarkus.io/guides/config-reference#profiles
quarkus_url: https://quarkus.io/
dev_services_url: https://quarkus.io/guides/dev-services
test_containers_url: https://www.testcontainers.org/
smallrye_messaging_url: https://smallrye.io/smallrye-reactive-messaging/smallrye-reactive-messaging/3.3
quarkus_config_url: https://quarkus.io/guides/config
quarkus_swagger_url: https://quarkus.io/guides/openapi-swaggerui
Expand Down Expand Up @@ -117,7 +124,10 @@ asciidoc:
ocp_knative_eventing_url: https://docs.openshift.com/container-platform/4.12/serverless/install/installing-knative-eventing.html
ocp_kn_cli_url: https://docs.openshift.com/container-platform/4.12/serverless/install/installing-kn.html
serverless_workflow_vscode_extension_name: KIE Serverless Workflow Editor
# references to documents within the documentation.
data_index_xref: xref:/data-index/data-index-core-concepts.adoc
job_service_xref: xref:/job-services/core-concepts.adoc

# xreferences to documents within the documentation.
data_index_xref: xref:data-index/data-index-core-concepts.adoc
job_service_xref: xref:job-services/core-concepts.adoc
# string unication references
data_index_ref: Data Index
workflow_instance: workflow instance
workflow_instances: ${workflow_instance}s
87 changes: 48 additions & 39 deletions serverlessworkflow/modules/ROOT/nav.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -17,23 +17,19 @@

* xref:release_notes.adoc[Release notes]
* Getting Started
** xref:getting-started/getting-familiar-with-our-tooling.adoc[]
** xref:getting-started/create-your-first-workflow-service-with-kn-cli-and-vscode.adoc[]
** xref:getting-started/create-your-first-workflow-service.adoc[]
// We will refactor this section here: https://issues.redhat.com/browse/KOGITO-9451
//** xref:getting-started/getting-familiar-with-our-tooling.adoc[Getting familiar with tooling]
* Core Concepts
** xref:core/cncf-serverless-workflow-specification-support.adoc[]
** xref:core/handling-events-on-workflows.adoc[Events]
** xref:core/working-with-callbacks.adoc[Callbacks]
** xref:core/understanding-jq-expressions.adoc[]
** xref:core/understanding-workflow-error-handling.adoc[Error handling]
** xref:core/configuration-properties.adoc[Configuration]
// TODO: describe output schema https://issues.redhat.com/browse/KOGITO-9468
** xref:core/defining-an-input-schema-for-workflows.adoc[Input Schema]
** xref:core/custom-functions-support.adoc[Custom Functions]
** xref:core/timeouts-support.adoc[Timeouts]
** xref:core/working-with-parallelism.adoc[Parallelism]
// We will refactor this section here: https://issues.redhat.com/browse/KOGITO-9451
* Tooling
** xref:tooling/serverless-workflow-editor/swf-editor-overview.adoc[Editor]
** xref:tooling/serverless-workflow-editor/swf-editor-vscode-extension.adoc[VS Code extension]
Expand All @@ -47,21 +43,14 @@
** xref:service-orchestration/orchestration-of-openapi-based-services.adoc[OpenAPI]
*** xref:service-orchestration/configuring-openapi-services-endpoints.adoc[Advanced Configuration]
*** xref:service-orchestration/working-with-openapi-callbacks.adoc[Callbacks]
** xref:service-orchestration/orchestration-of-grpc-services.adoc[gRPC]
** xref:service-orchestration/troubleshooting.adoc[Troubleshooting]
* Event Orchestration
** xref:eventing/orchestration-of-asyncapi-based-services.adoc[AsyncAPI]
** xref:eventing/event-correlation-with-workflows.adoc[Event Correlation]
** Quarkus
*** xref:eventing/consume-producing-events-with-kafka.adoc[Apache Kafka]
*** xref:eventing/consume-produce-events-with-knative-eventing.adoc[Knative Eventing]
* Security
** Client Authentication
*** xref:security/authention-support-for-openapi-services.adoc[OpenAPI Authentication]
*** xref:security/orchestrating-third-party-services-with-oauth2.adoc[OpenAPI OAuth2]
//* Running Workflows Locally
//** Running a Workflow Project TODO: https://issues.redhat.com/browse/KOGITO-9457
// ** Running a Quarkus Workflow Project TODO: https://issues.redhat.com/browse/KOGITO-9458
* Executing, Testing and Troubleshooting
** Executing and Testing Workflows
*** xref:testing-and-troubleshooting/quarkus-dev-ui-extension/quarkus-dev-ui-overview.adoc[Developer UI]
Expand All @@ -70,16 +59,8 @@
**** xref:testing-and-troubleshooting/quarkus-dev-ui-extension/quarkus-dev-ui-monitoring-page.adoc[Monitoring]
**** xref:testing-and-troubleshooting/quarkus-dev-ui-extension/quarkus-dev-ui-custom-dashboard-page.adoc[Dashboards]
*** xref:testing-and-troubleshooting/kn-plugin-workflow-overview.adoc[Command Line]
// *** Swagger UI, GraphiQL, Console logging TODO: https://issues.redhat.com/browse/KOGITO-9462
** Quarkus
*** xref:testing-and-troubleshooting/mocking-http-cloudevents-with-wiremock.adoc[Mocking HTTP CloudEvents]
*** xref:testing-and-troubleshooting/mocking-openapi-services-with-wiremock.adoc[Mocking OpenAPI Services]
*** xref:testing-and-troubleshooting/basic-integration-tests-with-restassured.adoc[Testing with REST Assured]
* Persistence
** Quarkus
*** xref:persistence/persistence-with-postgresql.adoc[PostgreSQL Configuration]
*** xref:persistence/postgresql-flyway-migration.adoc[PostgreSQL Database Migration]
*** xref:persistence/integration-tests-with-postgresql.adoc[Integration Tests with PostgreSQL]
** xref:persistence/core-concepts.adoc[Core concepts]
// * Java Workflow Library TODO: https://issues.redhat.com/browse/KOGITO-9454
* xref:cloud/index.adoc[Cloud]
** Operator
Expand All @@ -93,29 +74,57 @@
*** xref:cloud/operator/building-custom-images.adoc[Building Custom Images]
*** xref:cloud/operator/known-issues.adoc[Roadmap and Known Issues]
*** xref:cloud/operator/customize-podspec.adoc[Custom Workflow PodSpec]
*** xref:cloud/operator/migration-guide.adoc[]
** Quarkus
*** xref:cloud/quarkus/build-workflow-image-with-quarkus-cli.adoc[Building Workflow Images]
*** xref:cloud/quarkus/deploying-on-minikube.adoc[Deploying on Minikube]
*** xref:cloud/quarkus/deploying-on-kubernetes.adoc[Deploying on Kubernetes]
*** xref:cloud/quarkus/deploying-on-openshift.adoc[Deploying on OpenShift]
*** xref:cloud/quarkus/kubernetes-service-discovery.adoc[Service Discovery]
* Integrations
** xref:integrations/camel-routes-integration.adoc[Camel Routes]
** xref:integrations/custom-functions-knative.adoc[Knative Serving]
** xref:integrations/expose-metrics-to-prometheus.adoc[Exposing Prometheus Metrics]
** xref:integrations/serverless-dashboard-with-runtime-data.adoc[Displaying workflow Data in Dashboards]
** xref:integrations/core-concepts.adoc[]
* Job Service
** xref:job-services/core-concepts.adoc[Core Concepts]
** xref:job-services/quarkus-extensions.adoc[Quarkus Extensions]
* Data Index
** xref:data-index/data-index-core-concepts.adoc[Core concepts]
** xref:data-index/data-index-service.adoc[Standalone service]
** xref:data-index/data-index-quarkus-extension.adoc[Quarkus Extensions]
* xref:migration-guide/index.adoc[Migration Guide]
** Operator
*** xref:data-index/data-index-usecase-singleton.adoc[]
*** xref:data-index/data-index-usecase-multi.adoc[]
//** Quarkus Extensions TODO: https://issues.redhat.com/browse/KOGITO-9463
*** xref:migration-guide/operator/to-1.43.0-migration-guide.adoc[Migrating {product_name} operator to 1.43.0]
* Use Cases
** xref:use-cases/orchestration-based-saga-pattern.adoc[Saga Orchestration]
** xref:use-cases/timeout-showcase-example.adoc[Timeouts Showcase]
** xref:use-cases/advanced-developer-use-cases/index.adoc[Advanced Development Use Cases of {product_name} applications using Quarkus and Java]
*** Getting started
**** xref:use-cases/advanced-developer-use-cases/getting-started/create-your-first-workflow-service.adoc[]
**** xref:use-cases/advanced-developer-use-cases/getting-started/build-workflow-image-with-quarkus-cli.adoc[]
**** xref:use-cases/advanced-developer-use-cases/getting-started/working-with-serverless-workflow-quarkus-examples.adoc[]
**** xref:use-cases/advanced-developer-use-cases/getting-started/test-serverless-workflow-quarkus-examples.adoc[]
*** Deployment
**** xref:use-cases/advanced-developer-use-cases/deployments/deploying-on-minikube.adoc[Deploying on Minikube]
**** xref:use-cases/advanced-developer-use-cases/deployments/deploying-on-kubernetes.adoc[Deploying on Kubernetes]
**** xref:use-cases/advanced-developer-use-cases/deployments/deploying-on-openshift.adoc[Deploying on OpenShift]
*** Persistence
**** xref:use-cases/advanced-developer-use-cases/persistence/persistence-with-postgresql.adoc[]
**** xref:use-cases/advanced-developer-use-cases/persistence/postgresql-flyway-migration.adoc[]
**** xref:use-cases/advanced-developer-use-cases/persistence/integration-tests-with-postgresql.adoc[]
*** Job Service
**** xref:use-cases/advanced-developer-use-cases/job-service/quarkus-extensions.adoc[]
*** Data Index
**** xref:use-cases/advanced-developer-use-cases/data-index/data-index-as-quarkus-dev-service.adoc[]
**** xref:use-cases/advanced-developer-use-cases/data-index/data-index-usecase-singleton.adoc[]
**** xref:use-cases/advanced-developer-use-cases/data-index/data-index-usecase-multi.adoc[]
**** xref:use-cases/advanced-developer-use-cases/data-index/data-index-quarkus-extension.adoc[]
*** Service Orchestration
**** xref:use-cases/advanced-developer-use-cases/service-orchestration/configuring-openapi-services-endpoints-with-quarkus.adoc[]
**** xref:use-cases/advanced-developer-use-cases/service-orchestration/orchestration-of-grpc-services.adoc[]
*** Service Discovery
**** xref:use-cases/advanced-developer-use-cases/service-discovery/kubernetes-service-discovery.adoc[Service Discovery]
*** Event Orchestration
**** xref:use-cases/advanced-developer-use-cases/event-orchestration/consume-produce-events-with-knative-eventing.adoc[]
**** xref:use-cases/advanced-developer-use-cases/event-orchestration/consume-producing-events-with-kafka.adoc[]
**** xref:use-cases/advanced-developer-use-cases/event-orchestration/orchestration-based-saga-pattern.adoc[]
*** Timeouts
**** xref:use-cases/advanced-developer-use-cases/timeouts/timeout-showcase-example.adoc[]
*** Callbacks
**** xref:use-cases/advanced-developer-use-cases/callbacks/callback-state-example.adoc[]
*** Integrations of external services
**** xref:use-cases/advanced-developer-use-cases/integrations/camel-routes-integration.adoc[]
**** xref:use-cases/advanced-developer-use-cases/integrations/custom-functions-knative.adoc[]
**** xref:use-cases/advanced-developer-use-cases/integrations/expose-metrics-to-prometheus.adoc[]
**** xref:use-cases/advanced-developer-use-cases/integrations/serverless-dashboard-with-runtime-data.adoc[]
*** Testing
**** xref:use-cases/advanced-developer-use-cases/testing/basic-integration-tests-with-restassured.adoc[]
**** xref:use-cases/advanced-developer-use-cases/testing/mocking-http-cloudevents-with-wiremock.adoc[]
**** xref:use-cases/advanced-developer-use-cases/testing/mocking-openapi-services-with-wiremock.adoc[]
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
<dependency>
<groupId>io.quarkus.platform</groupId>
<artifactId>quarkus-kogito-bom</artifactId>
<version>2.7.6.Final</version>
<version>{quarkus_platform_version}/version>
<type>pom</type>
<scope>import</scope>
</dependency>
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
* A workflow project is created.
+
For more information about creating a workflow project, see xref:getting-started/create-your-first-workflow-service.adoc[Creating your first Serverless Workflow service].
For more information about creating a workflow project, see xref:use-cases/advanced-developer-use-cases/getting-started/create-your-first-workflow-service.adoc[Creating your first Serverless Workflow Java service].
18 changes: 5 additions & 13 deletions serverlessworkflow/modules/ROOT/pages/cloud/index.adoc
Original file line number Diff line number Diff line change
Expand Up @@ -101,14 +101,6 @@ xref:cloud/operator/known-issues.adoc[]
Learn about the known issues and feature Roadmap of the {operator_name}
--

[.card]
--
[.card-title]
xref:cloud/operator/migration-guide.adoc[]
[.card-description]
Migration guides
--

[.card-section]
== Kubernetes with Quarkus

Expand All @@ -117,39 +109,39 @@ For Java developers, you can use Quarkus and a few add-ons to help you build and
[.card]
--
[.card-title]
xref:cloud/quarkus/build-workflow-image-with-quarkus-cli.adoc[Building workflow images using Quarkus CLI]
xref:use-cases/advanced-developer-use-cases/getting-started/build-workflow-image-with-quarkus-cli.adoc[Building workflow images using Quarkus CLI]
[.card-description]
Learn how to build images for your workflow applications using Quarkus CLI
--

[.card]
--
[.card-title]
xref:cloud/quarkus/kubernetes-service-discovery.adoc[Kubernetes service discovery in {product_name}]
xref:use-cases/advanced-developer-use-cases/service-discovery/kubernetes-service-discovery.adoc[Kubernetes service discovery in {product_name}]
[.card-description]
Learn what is and how the Kubernetes service discovery for workflow application configuration works
--

[.card]
--
[.card-title]
xref:cloud/quarkus/deploying-on-openshift.adoc[Deploying your {product_name} application on OpenShift]
xref:use-cases/advanced-developer-use-cases/deployments/deploying-on-openshift.adoc[Deploying your {product_name} application on OpenShift]
[.card-description]
Learn how to deploy your workflow application on OpenShift cluster
--

[.card]
--
[.card-title]
xref:cloud/quarkus/deploying-on-minikube.adoc[Deploying your {product_name} application on Minikube]
xref:use-cases/advanced-developer-use-cases/deployments/deploying-on-minikube.adoc[Deploying your {product_name} application on Minikube]
[.card-description]
Learn how to deploy your workflow application on Minikube for local tests and development
--

[.card]
--
[.card-title]
xref:cloud/quarkus/deploying-on-kubernetes.adoc[Deploying your {product_name} application on Kubernetes]
xref:use-cases/advanced-developer-use-cases/deployments/deploying-on-kubernetes.adoc[Deploying your {product_name} application on Kubernetes]
[.card-description]
Learn how to deploy your workflow application on Kubernetes
--
Original file line number Diff line number Diff line change
Expand Up @@ -40,10 +40,10 @@ The table below lists the additional packages installed in the development mode
|tzdata-java
|

|java-11-openjdk-devel
|OpenJDK 11
|java-17-openjdk-devel
|OpenJDK 17

|apache-maven-3.8.6-bin.tar.gz
|apache-maven-3.9.3-bin.tar.gz
|Apache Maven

|===
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
:kubernetes_operator_uninstall_url: https://olm.operatorframework.io/docs/tasks/uninstall-operator/
:operatorhub_url: https://operatorhub.io/

This guide describes how to install the {operator_name} in a Kubernetes or OpenShift cluster. The operator is in an xref:/cloud/operator/known-issues.adoc[early development stage] (community only) and has been tested on OpenShift 4.11+, Kubernetes 1.22+, and link:{minikube_url}[Minikube].
This guide describes how to install the {operator_name} in a Kubernetes or OpenShift cluster. The operator is in an xref:/cloud/operator/known-issues.adoc[early development stage] (community only) and has been tested on OpenShift {openshift_version_min}+, Kubernetes {kubernetes_version}+, and link:{minikube_url}[Minikube].

.Prerequisites
* A Kubernetes or OpenShift cluster with admin privileges. Alternatively, you can use Minikube or KIND.
Expand Down Expand Up @@ -155,7 +155,6 @@ kubectl delete -f https://raw.githubusercontent.com/apache/incubator-kie-kogito-

[TIP]
====
<<<<<<< HEAD
If you're running a snapshot version, use this URL instead `https://raw.githubusercontent.com/apache/incubator-kie-kogito-serverless-operator/main/operator.yaml`.
The URL should be the same used when installing the operator.
Expand Down

This file was deleted.

This file was deleted.

Original file line number Diff line number Diff line change
Expand Up @@ -244,7 +244,7 @@ For more information about timeouts, see xref:core/timeouts-support.adoc[Timeout

{product_name} supports workflow compensation as described in the link:{spec_doc_url}#Workflow-Compensation[Serverless Workflow specification definition].

For more information about compensations, see xref:use-cases/orchestration-based-saga-pattern.adoc[Saga orchestration example in {product_name}].
For more information about compensations, see xref:use-cases/advanced-developer-use-cases/event-orchestration/orchestration-based-saga-pattern.adoc[Saga orchestration example in {product_name}].

[[constants]]
== Constants
Expand All @@ -266,7 +266,7 @@ Secrets are associated with the link:{quarkus_config_guide_url}[Quarkus Configur

== Additional resources

* xref:getting-started/create-your-first-workflow-service.adoc[Creating your first workflow service]
* xref:getting-started/create-your-first-workflow-service-with-kn-cli-and-vscode.adoc[]
* xref:getting-started/getting-familiar-with-our-tooling.adoc[Getting familiar with {product_name} tooling]

include::../../pages/_common-content/report-issue.adoc[]
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,7 @@ Kogito supports the link:{camel_url}[Camel Routes] functions within an Apache Ma

[NOTE]
====
This section briefly exemplifies how to define and use Camel Routes within your workflow application. For more information, see the xref:integrations/camel-routes-integration.adoc[Integrating with Camel Routes].
This section briefly exemplifies how to define and use Camel Routes within your workflow application. For more information, see the xref:use-cases/advanced-developer-use-cases/integrations/camel-routes-integration.adoc[Integrating with Camel Routes].
====

=== Function definition
Expand Down Expand Up @@ -307,7 +307,7 @@ include::../../pages/_common-content/camel-valid-responses.adoc[]

[NOTE]
====
This section briefly exemplifies how to define and use Knative custom functions within your workflow application. For more information, see xref:integrations/custom-functions-knative.adoc[Invoking Knative services from Serverless Workflow].
This section briefly exemplifies how to define and use Knative custom functions within your workflow application. For more information, see xref:use-cases/advanced-developer-use-cases/integrations/custom-functions-knative.adoc[Invoking Knative services from Serverless Workflow].
====

=== Function definition
Expand Down Expand Up @@ -336,7 +336,7 @@ You can declare a {product_name} custom function using the Knative service name,

<1> `greet` is the function name
<2> `custom` is the function type
<3> In `operation` you set the coordinates of the Knative service. See xref:cloud/quarkus/kubernetes-service-discovery.adoc[Kubernetes Service Discovery] for supported Scheme and Kubernetes GVK
<3> In `operation` you set the coordinates of the Knative service. See xref:use-cases/advanced-developer-use-cases/service-discovery/kubernetes-service-discovery.adoc[Kubernetes Service Discovery] for supported Scheme and Kubernetes GVK

The above function will send a `POST` request to the http://custom-function-knative-service.default.10.109.169.193.sslip.io/plainJsonFunction URL. If you don't specify a path, {product_name} will use the root path (/).

Expand Down
Loading

0 comments on commit 74f95eb

Please sign in to comment.