Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ENDOC-566 7.1 Edits for loose threads #579

Merged
merged 2 commits into from
Sep 27, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 17 additions & 8 deletions vuepress/docs/next/docs/curate/bundle-details.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ The docker-based approach is an improvement of the previous Entando Bundle struc

* There is a single bundle descriptor, `entando.json`, initialized and managed by the [ent bundle CLI](../getting-started/ent-bundle.md).
* Microservices and micro frontends can be built independently, each with their own folders.
* The `platform` directory is dedicated to platform specific components such as fragments, pages, and static resources.
* The `platform` directory is dedicated to platform specific components such as fragments, pages, and static resources. For more information on component types and descriptors, see the [Bundle Component Details](bundle-component-details.md) page.
* The `svc` directory is allocated for auxiliary services and the docker-compose configuration files that define them. The ent bundle module enables, starts and stops the services. MySQL, PostgreSQL, and Keycloak services are available with Entando out of the box, and for more details, go to the [ent CLI Services page](../getting-started/ent-svc.md).
* Optionally, a thumbnail for your bundle can be set by adding a JPG or PNG image file to the bundle root folder. The file must be named "thumbnail" and be 100kb or less, e.g. thumbnail.png.

Expand Down Expand Up @@ -49,7 +49,7 @@ The docker-based approach is an improvement of the previous Entando Bundle struc

## Bundle Development Process

![Bundle development Process](./img/bundle-develop-process.png)
![Bundle Development Process](./img/development-process.jpg)


The ent bundle CLI module manages the building and publishing of an Entando Bundle. From initialization to installation, from adding MFEs and MSs to calling for services such as Keycloak and making API claims, the ent bundle commands streamline the development process.
Expand All @@ -60,6 +60,8 @@ The next steps build and pack the project using the bundle descriptor. The speci

In the publish step, images are pushed to a Docker registry and tagged according to the bundle configuration. A custom registry can also be used.

![Bundle Publishing Process](./img/publishing-process.jpg)

Finally, the bundle is deployed into the Local Hub of a running Entando instance where it can then be installed. Any improvements to the bundle can be made by repeating the **four steps: pack, publish, deploy and install**. Alternatively, the install step can be done in the App Builder UI by the composer designing the application.

At every phase of the process, options are available to fine-tune the process, and to see more information, go to the [ent bundle CLI](../getting-started/ent-bundle.md) documentation.
Expand All @@ -76,8 +78,8 @@ The following is a list of specifications for the bundle descriptor and its comp
|`displayName`|String|No|A descriptive label used in the UI in place of a name|
|`global`|Global|No|Global bundle configuration item|
|`global/nav`|[MenuEntry[]](#menuentry-specification)|No|Bundle menu global links|
|`microservices`|Microservices|No|Bundle microservices|
|`microfrontends`|Micro Frontends|No|Bundle micro frontends|
|`microservices`|[Microservices](#microservices-specifications)|No|Bundle microservices|
|`microfrontends`|[Micro Frontends](#micro-frontends-specifications)|No|Bundle micro frontends|

```json
{
Expand All @@ -102,7 +104,7 @@ The following is a list of specifications for the bundle descriptor and its comp
|`deploymentBaseName`|String|No||Used to define custom pod names|
|`roles`|String[]|No||Exposed security roles|
|`env`|[EnvironmentVariable[]](#environment-variables-specification)|No||Required environment variables|
|`commands`|Command[]|No||Custom command(s) definitions|
|`commands`|[Command[]](#command-specification)|No||Custom command(s) definitions|

#### Microservices Sample Code
```json
Expand All @@ -118,7 +120,13 @@ The following is a list of specifications for the bundle descriptor and its comp
}
],
```
::: tip
Entando uses the `healthCheckPath` to monitor the health of the microservice. A plugin in an Entando Bundle can use any technology, as long as it provides a health check service configured via the `healthCheckPath`. This path must be specified in the descriptor file and return an HTTP 200 or success status. This can be implemented by a Java service included with the Entando Blueprint in the Spring Boot application. You can also [use a Node.js service as shown here](https://github.com/entando-samples/ent-project-template-node-ms/blob/main/src/main/node/controller/health-controller.js).
:::

::: tip
See the [Plugin Environment Variables](../../tutorials/devops/plugin-environment-variables.md) tutorial to set up environment variables, either inline or based on Kubernetes Secrets.
:::
### Micro Frontends Specifications
|Name|Type|Required|Possible Values|Description|
|:-|:-|:-|:-|:------------------------|
Expand All @@ -132,10 +140,10 @@ The following is a list of specifications for the bundle descriptor and its comp
|`publicFolder`|String|No|Default is `public`|MFE public folder (typically where index.html is located)|
|`apiClaims`|String[]|No||See [API Claim spec](#api-claim-specification) below|
|`nav`|[MenuEntry[]](#menuentry-specification)|No||Bundle menu global links|
|`commands`|Command[]|No||Custom commands definitions|
|`commands`|[Command[]](#command-specification)|No||Custom commands definitions|
|`buildFolder`|String|No|Default is `build`|Corresponds to the MFE build folder |
|`configMfe`|String|No||The custom element for the corresponding widget-config MFE|
|`params`| MfeParam[] |Yes| | User configuration for executing a widget|
|`params`| [MfeParam[]](#mfeparam-specification) |Yes| | User configuration for executing a widget|
|`contextParams`|String[]| Yes | | Information extracted from the application context |

#### Micro Frontends Sample Code
Expand Down Expand Up @@ -163,7 +171,7 @@ The following is a list of specifications for the bundle descriptor and its comp
]
```

#### MfeParam Specification
### MfeParam Specification
|Name|Type|Required|Description|
|:-|:-|:-|:------------------------|
|name|String|Yes|Name of the parameter|
Expand All @@ -190,6 +198,7 @@ The following is a list of specifications for the bundle descriptor and its comp
|`name`|String|Yes||Name|
|`type`|Enum|Yes|*internal *external| Category of claim, either inside the same bundle (internal) or same namespace (external) |
|`serviceName`|String|Yes||The name of the microservice|
|`serviceUrl`| String| ||The URL of the microservice deployed in the local environment|
|`bundle`|String|Yes only for `type=external`||Bundle Docker URL|

#### API Claim Spec Sample
Expand Down
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
6 changes: 3 additions & 3 deletions vuepress/docs/next/docs/getting-started/ent-api.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,12 +43,12 @@ Common operations associated with API claims are detailed below. To execute `ent

**Command details:**
- `api add` supports the following options:
- `service-name`: The name of a microservice in the same bundle as the micro frontend
- `service-url`: The URL of a microservice deployed in the local environment
- `serviceName`: The name of a microservice in the same bundle as the micro frontend
- `serviceUrl`: The URL of a microservice deployed in the local environment

- `api add-ext` supports the following options:
- `bundle`: The external bundle URL
- `service-name`: The name of a microservice in the external bundle. If `service-name` is not set, `api add-ext` will initiate an interactive mode where the user can select from available bundles and microservices.
- `serviceName`: The name of a microservice in the external bundle. If `service-name` is not set, `api add-ext` will initiate an interactive mode where the user can select from available bundles and microservices.

- `api add-ext` requirements:
- Connection to an Entando instance
Expand Down
4 changes: 3 additions & 1 deletion vuepress/docs/next/docs/getting-started/ent-bundle.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ In addition, this document describes the series of `ent ecr` commands that manag

## Entando 7.1 Bundle Development

Beginning with Entando 7.1, the `ent bundle` command and its convenience methods introduce a streamlined process to govern the structure, files and management of Entando bundles. The bundle development lifecycle consists of 6 stages, each corresponding to a subcommand:
Beginning with Entando 7.1, the `ent bundle` CLI tool introduces a streamlined process to govern the files, structure, and management of Entando bundles. The bundle development lifecycle consists of 6 stages, each corresponding to a subcommand:

- [Initialization](#initialization): `ent bundle init` initializes a new bundle project, either with the default files and folders or from an existing bundle in an Entando Hub. The bundle format relies on a single JSON descriptor as the project manifest.

Expand All @@ -32,10 +32,12 @@ See [Build and Publish a Bundle Project](../../tutorials/create/pb/publish-proje
| Commands | Subcommands | Description |
|:-|:-|:----------------------------------
|`ent bundle build`| | Build components (MFE, MS) with a selector |
|`ent bundle deploy`|| Deploy a bundle to the Local Hub of an Entando Application
|`ent bundle generate-cr`| | Generate the Entando Custom Resource for a bundle project |
|`ent bundle help` | | Display help for ent bundle |
|`ent bundle info`| | Show status information for the bundle project |
|`ent bundle init`| | Initialize the project folder structure and descriptor |
|`ent bundle install`| | Install a bundle to the Local Hub of an Entando Application|
|`ent bundle list`| | List the available bundle components |
|`ent bundle mfe` | `add` | Add a micro frontend |
| | `rm` | Remove a micro frontend |
Expand Down
24 changes: 17 additions & 7 deletions vuepress/docs/next/docs/getting-started/entando-cli.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,13 +34,6 @@ curl -L https://get.entando.org/cli | bash

>The automatic option in [Getting Started](../getting-started/) will install the CLI along with a quickstart Entando Application.

### Check the Environment

Verify dependencies required by your Entando installation:
``` bash
ent check-env develop
```

## Command List
Use `ent help` to review the list of available commands.\
Use `ent [command] --help` for command details.
Expand Down Expand Up @@ -98,15 +91,26 @@ TOPICS

COMMANDS
build Build bundle components
deploy Deploy a bundle to the Local Hub of an Entando Application
generate-cr Generate the Entando Custom Resource (CR) for a bundle project
help Display help for ent bundle.
info Show status information for the bundle project
init Perform the scaffolding of a bundle project
install Install a bundle in the Local Hub of an Entando Application
list List the available components in the bundle
pack Generate the bundle Docker images
publish Publish bundle Docker images
run Run bundle components

DEBUG MODE
--debug To enable debug mode for bundle operations

```
### Check the Environment

Verify dependencies required by your Entando installation:
``` bash
ent check-env develop
```

### Update the CLI
Expand All @@ -118,6 +122,12 @@ ent check-env develop
```
>Alternatively, to perform a clean install, delete the `~/.entando` directory via `rm -rf ~/.entando`. Then reinstall the CLI using the instructions above. This will also remove the private copies of JHipster, Entando Blueprint, etc.

### Enable Debug Mode
To utilize the debug mode for ent bundle commands:
``` sh
ent --debug bundle <command>
```

### Customize Quickstart
The `ent quickstart` command accepts parameters to customize your quickstart environment. These options allow you to modify specific properties of your VM, installation versions and databases.

Expand Down
10 changes: 5 additions & 5 deletions vuepress/docs/next/tutorials/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -47,10 +47,10 @@ table th:nth-of-type(3) {

| Basic | Intermediate | Advanced
| :-: | :-: | :-:
| [Set Up Entando on a Local Kubernetes Cluster](../docs/getting-started/) | | [Install Bundle Microservices from a Private Registry](./curate/private-images.md) |
| [Set Up Entando on Amazon Elastic Kubernetes Service (EKS)](./getting-started/eks-install.md) | [Customize the base Entando Application via a Docker Image](./devops/build-core-image.md) |[Add a GitHub Actions CI Workflow](./create/pb/github-actions-workflow.md)|
| [Set Up Entando on Azure Kubernetes Service (AKS)](./getting-started/azure-install.md) |[Connect Your Entando Application to an External Database](./devops/external-db.md) | [Manage NGINX](./devops/manage-nginx.md)
| [Set Up Entando on Google Kubernetes Engine (GKE)](./getting-started/gke-install.md) | [Install the Standard Demo Application](./solution/install-standard-demo.md)| [Setup Plugin Profiles](./devops/plugin-configuration.md)
| [Set Up Entando on Red Hat OpenShift](./getting-started/openshift-install.md) | [Configure the Entando Operator](./devops/entando-operator.md) |
| [Set Up Entando on a Local Kubernetes Cluster](../docs/getting-started/) | [Customize the base Entando Application via a Docker Image](./devops/build-core-image.md) | [Install Bundle Microservices from a Private Registry](./curate/private-images.md) |
| [Set Up Entando on Amazon Elastic Kubernetes Service (EKS)](./getting-started/eks-install.md) | [Connect Your Entando Application to an External Database](./devops/external-db.md) |[Add a GitHub Actions CI Workflow](./create/pb/github-actions-workflow.md)|
| [Set Up Entando on Azure Kubernetes Service (AKS)](./getting-started/azure-install.md) | [Install the Standard Demo Application](./solution/install-standard-demo.md)| [Manage NGINX](./devops/manage-nginx.md)
| [Set Up Entando on Google Kubernetes Engine (GKE)](./getting-started/gke-install.md) | [Configure the Entando Operator](./devops/entando-operator.md) | [Setup Plugin Profiles](./devops/plugin-configuration.md)
| [Set Up Entando on Red Hat OpenShift](./getting-started/openshift-install.md) | |
| [Entando CLI Reference](../docs/getting-started/entando-cli.md) | |