Skip to content

Commit

Permalink
Merge pull request #209 from grego952/markdown-linting
Browse files Browse the repository at this point in the history
Apply markdowlint rules in the ACM repository
  • Loading branch information
kyma-bot authored Mar 28, 2024
2 parents db1c89b + b6ca5e6 commit 53e184c
Show file tree
Hide file tree
Showing 32 changed files with 408 additions and 334 deletions.
28 changes: 28 additions & 0 deletions .markdownlint.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# This is a configuration file for the markdownlint. You can use this file to overwrite the default settings.
# MD013 is set to false by default because many files include lines longer than the conventional 80 character limit
MD013: false
# Disable the Multiple headings with the same content rule
MD024: false
# MD029 is set to false because it generated some issues with longer lists
MD029: false
# Checks if there some inline HTML-elements
MD033: false
# MD044 is used to set capitalization for the particular words. You can determine whether it should be used also for code blocks and html elements
MD044:
code_blocks: false
html_elements: false
names:
- Kyma
- Kubernetes
- ConfigMap
- CronJob
- CustomResourceDefinition
- Ingress
- Node
- PodPreset
- Pod
- ProwJob
- Secret
- ServiceBinding
- ServiceClass
- ServiceInstance
1 change: 1 addition & 0 deletions .markdownlintignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
_sidebar.md
14 changes: 9 additions & 5 deletions docs/contributor/01-10-installation.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# Install Application Connector Manager
# Install Application Connector Manager

- [Install Application Connector Manager](#install-application-connector-manager)
- [Install Application Connector Manager from the Local Sources](#install-application-connector-manager-from-the-local-sources)
Expand All @@ -9,7 +9,7 @@

Learn how to install the Application Connector module locally (on k3d) or on your remote cluster.

## Install Application Connector Manager from the Local Sources
## Install Application Connector Manager from the Local Sources

### Prerequisites

Expand All @@ -34,7 +34,8 @@ Run the following commands to deploy Application Connector Manager in a target K

2. Set the Application Connector Manager image name.

> NOTE: You can use the local k3d registry or your Docker Hub account to push intermediate images.
> NOTE: You can use the local k3d registry or your Docker Hub account to push intermediate images.
```bash
export IMG=<DOCKER_USERNAME>/custom-application-connector-manager:0.0.1
```
Expand All @@ -44,11 +45,13 @@ Run the following commands to deploy Application Connector Manager in a target K
```bash
make test
```

4. Build and push the image to the registry.

```bash
make module-image
```

5. Create a target namespace.

```bash
Expand All @@ -69,7 +72,7 @@ Run the following commands to deploy Application Connector Manager in a target K

You should get a result similar to this example:

```
```bash
NAME READY UP-TO-DATE AVAILABLE AGE
application-connector-controller-manager 1/1 1 1 20s
```
Expand All @@ -86,10 +89,11 @@ Thanks to that, you don't need to push the Application Connector module images t
```bash
git clone https://github.com/kyma-project/application-connector-manager.git && cd application-connector-manager/
```

2. Build the manager locally and run it in the k3d cluster.

```bash
make -C hack/local run-without-lifecycle-manager
```
3. If you want to clean up the k3d cluster, use the `make -C hack/local stop` make target.

3. If you want to clean up the k3d cluster, use the `make -C hack/local stop` make target.
2 changes: 1 addition & 1 deletion docs/contributor/03-10-scripts-dont-work.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,4 +16,4 @@ Install [Kyma CLI manually](https://github.com/kyma-project/cli#installation) an

```bash
export KYMA=$(which kyma)
```
```
2 changes: 1 addition & 1 deletion docs/contributor/04-10-ci-cd.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ The following CI jobs are part of the development cycle. They verify the functio
| [`pre-application-connector-manager-build`](https://github.com/kyma-project/test-infra/blob/main/templates/data/generic_module_data.yaml#L1059) | true | prow | Builds Application Connector Manager's image and pushes it to the `dev` registry. |
| [`pre-application-connector-manager-presubmit-scanner`](https://github.com/kyma-project/test-infra/blob/main/prow/jobs/kyma-project/test-infra/presubmit-scanner.yaml#L556) | true | prow | Runs the Gitleaks presubmit scanner to detect committed sensitive data for Application Connector Manager. |
| [`pre-main-application-connector-manager-verify`](https://github.com/kyma-project/test-infra/blob/main/templates/data/generic_module_data.yaml#L1093) | true | prow | Installs Application Connector Manager, not using Lifecycle Manager, and applies the sample Application Connector CR in a k3d cluster. Executes smoke integration test of Application Connector. |
| [`golangci-lint `](https://github.com/kyma-project/application-connector-manager/blob/main/.github/workflows/golangci-lint.yaml) | true | GH Actions | Is responsible for linting and static code analysis. |
| [`golangci-lint`](https://github.com/kyma-project/application-connector-manager/blob/main/.github/workflows/golangci-lint.yaml) | true | GH Actions | Is responsible for linting and static code analysis. |
| [`Run unit tests`](https://github.com/kyma-project/application-connector-manager/blob/main/.github/workflows/run-tests.yaml) | true | GH Actions | Executes basic create/update/delete functional tests of Application Connector Manager's reconciliation logic. |
| [`Run integration tests`](https://github.com/kyma-project/application-connector-manager/blob/main/.github/workflows/run-validation.yaml) | true | GH Actions | Installs Application Connector Manager, not using Lifecycle Manager, and applies the sample Application Connector CR in a k3d cluster. Executes smoke integration test of Application Connector. |
| [`Run vuln check`](https://github.com/kyma-project/application-connector-manager/blob/main/.github/workflows/run-vuln-check.yaml) | true | GH Actions | Executes the [govulncheck](https://pkg.go.dev/golang.org/x/vuln/cmd/govulncheck) tool on the Application Connector Manager code to detect known vulnerabilities. |
Expand Down
4 changes: 2 additions & 2 deletions docs/user/00-10-application-gateway.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
# Application Gateway

Application Gateway is an intermediary component between a Function or a microservice and an external API.
Application Gateway is an intermediary component between a Function or a microservice and an external API.
It [proxies the requests](technical-reference/04-20-application-gateway.md) from Functions and microservices in Kyma to external APIs based on the configuration stored in Secrets.

Application Gateway also supports redirects for the request flows in which the URL host remains unchanged. For more details, see [Response rewriting](technical-reference/07-10-application-gateway-details.md#response-rewriting).
Expand All @@ -24,4 +24,4 @@ Application Gateway overrides the registered API's security type if it gets a re

This mechanism is suited for implementations in which an external application handles user authentication.

See how to [pass an access token in a request header](02-10-pass-access-token-in-request-header.md).
See how to [pass an access token in a request header](02-10-pass-access-token-in-request-header.md).
2 changes: 1 addition & 1 deletion docs/user/00-20-security.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,4 @@ To provide maximum security, in the [Compass mode](README.md), Application Conne
### TLS Certificate Verification for External Systems

By default, the TLS certificate verification is enabled when sending data and requests to every application.
You can [disable the TLS certificate verification](tutorials/01-50-disable-tls-certificate-verification.md) in the communication between Kyma and an application to allow Kyma to send requests and data to an unsecured application. Disabling the certificate verification can be useful in certain testing scenarios.
You can [disable the TLS certificate verification](tutorials/01-50-disable-tls-certificate-verification.md) in the communication between Kyma and an application to allow Kyma to send requests and data to an unsecured application. Disabling the certificate verification can be useful in certain testing scenarios.
25 changes: 13 additions & 12 deletions docs/user/00-30-runtime-agent-overview.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
# Runtime Agent

> [!WARNING]
> Runtime Agent is currently not integrated into the Application Connector module. Proceed with caution and consult the respective documentation for the Application Connector module's current configuration and functionality.
> Runtime Agent is currently not integrated into the Application Connector module. Proceed with caution and consult the respective documentation for the Application Connector module's current configuration and functionality.
Runtime Agent is a Kyma component that connects to [Compass](https://github.com/kyma-incubator/compass). It is an integral part of every Kyma Runtime in the [Compass mode](README.md) and it fetches the latest configuration from Compass. It also provides Runtime-specific information that is displayed in the Compass UI, such as Runtime UI URL, and it provides Compass with Runtime configuration, such as Event Gateway URL, that should be passed to an Application. To learn more, read the section on [configuring the Runtime](technical-reference/07-20-configuring-runtime.md).

The main responsibilities of the component are:

- Establishing a trusted connection between the Kyma Runtime and Compass
- Renewing a trusted connection between the Kyma Runtime and Compass
- Synchronizing with the [Director](https://github.com/kyma-incubator/compass/blob/master/docs/compass/02-01-components.md#director) by fetching new Applications from the Director and creating them in the Runtime, and removing from the Runtime Applications that no longer exist in the Director.
Expand All @@ -16,19 +17,19 @@ If you're interested in learning more about Runtime Agent, follow these links to

- Perform some simple and more advanced tasks:

- [Enable Kyma with Runtime Agent](02-20-enable-kyma-with-runtime-agent.md)
- [Establish a secure connection with Compass](tutorials/01-60-establish-secure-connection-with-compass.md)
- [Maintain a secure connection with Compass](tutorials/01-70-maintain-secure-connection-with-compass.md)
- [Revoke a client certificate (RA)](tutorials/01-80-revoke-client-certificate.md)
- [Configure Runtime Agent with Compass](tutorials/01-90-configure-runtime-agent-with-compass.md)
- [Reconnect Runtime Agent with Compass](tutorials/01-100-reconnect-runtime-agent-with-compass.md)
- [Enable Kyma with Runtime Agent](02-20-enable-kyma-with-runtime-agent.md)
- [Establish a secure connection with Compass](tutorials/01-60-establish-secure-connection-with-compass.md)
- [Maintain a secure connection with Compass](tutorials/01-70-maintain-secure-connection-with-compass.md)
- [Revoke a client certificate (RA)](tutorials/01-80-revoke-client-certificate.md)
- [Configure Runtime Agent with Compass](tutorials/01-90-configure-runtime-agent-with-compass.md)
- [Reconnect Runtime Agent with Compass](tutorials/01-100-reconnect-runtime-agent-with-compass.md)

- Analyze Runtime Agent specification and configuration files:

- [Compass Connection](resources/06-20-compassconnection.md) custom resource (CR)
- [Connection with Compass](technical-reference/05-20-connection-with-compass.md)
- [Compass Connection](resources/06-20-compassconnection.md) custom resource (CR)
- [Connection with Compass](technical-reference/05-20-connection-with-compass.md)

- Understand technicalities behind the Runtime Agent implementation:

- [Runtime Agent workflow](technical-reference/04-30-runtime-agent-workflow.md)
- [Configuring the Runtime](technical-reference/07-20-configuring-runtime.md)
- [Runtime Agent workflow](technical-reference/04-30-runtime-agent-workflow.md)
- [Configuring the Runtime](technical-reference/07-20-configuring-runtime.md)
2 changes: 1 addition & 1 deletion docs/user/02-10-pass-access-token-in-request-header.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@ The Application Gateway service supports passing the access token directly in th

## Passing the Access Token

If the user is already authenticated to the target API, the access token can be passed in a custom `Access-token` header. The header's value is of the `Bearer {TOKEN}` or `Basic {TOKEN}` form. If the Application Gateway service detects that the custom header is present, instead of performing authentication steps, it removes the `Access-token` header and passes the received value in the `Authorization` header.
If the user is already authenticated to the target API, the access token can be passed in a custom `Access-token` header. The header's value is of the `Bearer {TOKEN}` or `Basic {TOKEN}` form. If the Application Gateway service detects that the custom header is present, instead of performing authentication steps, it removes the `Access-token` header and passes the received value in the `Authorization` header.
4 changes: 2 additions & 2 deletions docs/user/02-20-enable-kyma-with-runtime-agent.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,5 +3,5 @@
> [!WARNING]
> Runtime Agent is currently not integrated into the Application Connector module. Proceed with caution and consult the respective documentation for the Application Connector module's current configuration and functionality.
[Runtime Agent](00-30-runtime-agent-overview.md) is a part of the Application Connector module that is used in the [Compass mode](README.md) of Application Connectivity.
By default, Kyma uses the [standalone Application Connectivity mode](README.md), which does not support integration with Compass.
[Runtime Agent](00-30-runtime-agent-overview.md) is a part of the Application Connector module that is used in the [Compass mode](README.md) of Application Connectivity.
By default, Kyma uses the [standalone Application Connectivity mode](README.md), which does not support integration with Compass.
4 changes: 2 additions & 2 deletions docs/user/resources/06-10-application.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,6 +64,6 @@ These components use this CR:

| Component | Description |
|-----------|-------------|
| Application Gateway | Reads the API metadata in order to connect to the external system. |
| Application Gateway | Reads the API metadata in order to connect to the external system. |
| Application Connectivity Validator (in the [Compass mode](../README.md)) | Validates requests and events from the external system against the respective Application CR. |
| Runtime Agent (in the [Compass mode](../README.md)) | Saves the metadata of the connected external system in the Application CR, synchronizes the metadata stored in Compass with the state in the cluster stored in the Application CR. |
| Runtime Agent (in the [Compass mode](../README.md)) | Saves the metadata of the connected external system in the Application CR, synchronizes the metadata stored in Compass with the state in the cluster stored in the Application CR. |
7 changes: 2 additions & 5 deletions docs/user/resources/06-20-compassconnection.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,7 @@
> [!WARNING]
> Runtime Agent is currently not integrated into the Application Connector module. Proceed with caution and consult the respective documentation for the Application Connector module's current configuration and functionality.
The `compassconnections.compass.kyma-project.io` CustomResourceDefinition (CRD)
is a detailed description of the kind of data and the format used to preserve
the status of the connection between the Runtime Agent and Compass.
The `compassconnections.compass.kyma-project.io` CustomResourceDefinition (CRD) is a detailed description of the kind of data and the format used to preserve the status of the connection between the Runtime Agent and Compass.
The `CompassConnection` custom resource (CR) contains the connection statuses and Compass URLs.
To get the up-to-date CRD and show the output in the `yaml` format, run this command:

Expand All @@ -15,8 +13,7 @@ kubectl get crd compassconnections.compass.kyma-project.io -o yaml

## Sample Custom Resource

This is a sample resource that registers the `compass-agent-connection` CompassConnection,
which preserves the status of the connection between Runtime Agent and Compass.
This is a sample resource that registers the `compass-agent-connection` CompassConnection, which preserves the status of the connection between Runtime Agent and Compass.
It also stores the URLs for the Connector and the Director.

```yaml
Expand Down
46 changes: 23 additions & 23 deletions docs/user/resources/06-30-application-connector.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,15 @@

The `applicationconnectors.operator.kyma-project.io` CustomResourceDefinition (CRD) is a comprehensive specification that defines the structure and format used to manage the configuration and status of the Application Connector module within your Kyma environment.

# Purpose
## Purpose

The CRD serves as the blueprint for creating custom resources (CRs) specific to Application Connector. These CRs encapsulate the configuration settings and real-time statuses of the Application Connector module, providing essential insights into the module's behavior in the Kubernetes cluster.

To get the up-to-date CRD and show the output in the `yaml` format, run this command:

```bash
kubectl get crd applicationconnectors.operator.kyma-project.io -o yaml
```
```bash
kubectl get crd applicationconnectors.operator.kyma-project.io -o yaml
```

## Custom Resource Specification

Expand All @@ -25,22 +25,22 @@ kubectl get crd applicationconnectors.operator.kyma-project.io -o yaml

## Sample Custom Resource

```
apiVersion: operator.kyma-project.io/v1alpha1
kind: ApplicationConnector
metadata:
namespace: kyma-system
labels:
app.kubernetes.io/name: applicationconnector
app.kubernetes.io/instance: applicationconnector-sample
name: applicationconnector-sample
spec:
domainName: "my.domain"
appConnValidator:
logLevel: "info"
logFormat: "json"
appGateway:
proxyTimeout: "10s"
requestTimeout: "10s"
logLevel: "info"
```
```bash
apiVersion: operator.kyma-project.io/v1alpha1
kind: ApplicationConnector
metadata:
namespace: kyma-system
labels:
app.kubernetes.io/name: applicationconnector
app.kubernetes.io/instance: applicationconnector-sample
name: applicationconnector-sample
spec:
domainName: "my.domain"
appConnValidator:
logLevel: "info"
logFormat: "json"
appGateway:
proxyTimeout: "10s"
requestTimeout: "10s"
logLevel: "info"
```
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ An Application represents an external solution connected to Kyma. It handles the
Using the components of Application Connector, the Application creates a coherent identity for a connected external solution and ensures its separation.
All Applications are instances of the Application custom resource, which also stores all the relevant metadata.

> [!NOTE]
> [!NOTE]
> Every Application custom resource corresponds to a single Application to which you can connect an external solution.
## Application Gateway
Expand All @@ -35,7 +35,6 @@ Application Gateway can call services which are not secured, or are secured with

Additionally, Application Gateway supports cross-site request forgery (CSRF) tokens as an optional layer of API protection.


## Kubernetes Secret

The Kubernetes Secret is a Kubernetes object that stores sensitive data, such as OAuth credentials.
The Kubernetes Secret is a Kubernetes object that stores sensitive data, such as OAuth credentials.
Loading

0 comments on commit 53e184c

Please sign in to comment.