@itentialopensource/adapter-kubernetes 0.6.3 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AUTH.md +36 -0
- package/BROKER.md +199 -0
- package/CALLS.md +6686 -0
- package/CHANGELOG.md +51 -24
- package/CODE_OF_CONDUCT.md +12 -17
- package/CONTRIBUTING.md +3 -148
- package/ENHANCE.md +69 -0
- package/PROPERTIES.md +641 -0
- package/README.md +239 -507
- package/SUMMARY.md +9 -0
- package/SYSTEMINFO.md +25 -0
- package/TROUBLESHOOT.md +47 -0
- package/adapter.js +380 -261
- package/adapterBase.js +855 -409
- package/changelogs/CHANGELOG.md +94 -0
- package/entities/.generic/action.json +110 -5
- package/entities/.generic/schema.json +6 -1
- package/error.json +12 -0
- package/metadata.json +61 -0
- package/package.json +29 -22
- package/pronghorn.json +692 -89
- package/propertiesDecorators.json +14 -0
- package/propertiesSchema.json +842 -6
- package/refs?service=git-upload-pack +0 -0
- package/report/adapter-openapi.json +45607 -0
- package/report/adapter-openapi.yaml +40397 -0
- package/report/adapterInfo.json +10 -0
- package/report/updateReport1653089036005.json +120 -0
- package/report/updateReport1691507523436.json +120 -0
- package/report/updateReport1692202542124.json +120 -0
- package/report/updateReport1694461525218.json +120 -0
- package/report/updateReport1698420853365.json +120 -0
- package/sampleProperties.json +159 -6
- package/test/integration/adapterTestBasicGet.js +4 -6
- package/test/integration/adapterTestConnectivity.js +91 -42
- package/test/integration/adapterTestIntegration.js +158 -104
- package/test/unit/adapterBaseTestUnit.js +393 -310
- package/test/unit/adapterTestUnit.js +918 -164
- package/utils/adapterInfo.js +206 -0
- package/utils/addAuth.js +94 -0
- package/utils/artifactize.js +1 -1
- package/utils/basicGet.js +1 -14
- package/utils/checkMigrate.js +1 -1
- package/utils/entitiesToDB.js +179 -0
- package/utils/findPath.js +1 -1
- package/utils/methodDocumentor.js +273 -0
- package/utils/modify.js +14 -16
- package/utils/packModificationScript.js +2 -2
- package/utils/patches2bundledDeps.js +90 -0
- package/utils/pre-commit.sh +5 -0
- package/utils/removeHooks.js +20 -0
- package/utils/taskMover.js +309 -0
- package/utils/tbScript.js +129 -53
- package/utils/tbUtils.js +152 -35
- package/utils/testRunner.js +17 -17
- package/utils/troubleshootingAdapter.js +10 -31
- package/workflows/README.md +0 -3
package/SUMMARY.md
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
## Overview
|
|
2
|
+
|
|
3
|
+
This adapter is used to integrate the Itential Automation Platform (IAP) with the Kubernetes System. The API that was used to build the adapter for Kubernetes is usually available in the report directory of this adapter. The adapter utilizes the Kubernetes API to provide the integrations that are deemed pertinent to IAP. The ReadMe file is intended to provide information on this adapter it is generated from various other Markdown files.
|
|
4
|
+
|
|
5
|
+
>**Note**: It is possible that some integrations will be supported through the Kubernetes adapter while other integrations will not. If you need additional API calls, you can use the Update capabilities provided by the Adapter Builder or request Itential to add them if the Adapter is an Itential opensourced adapter.
|
|
6
|
+
|
|
7
|
+
Itential provides information on all of its product adapters in the Customer Knowledge Base. Information in the <a href="https://itential.atlassian.net/servicedesk/customer/portals" target="_blank">Customer Knowledge Base</a> is consistently maintained and goes through documentation reviews. As a result, it should be the first place to go for information.
|
|
8
|
+
|
|
9
|
+
For opensourced and custom built adapters, the ReadMe is a starting point to understand what you have built, provide the information for you to be able to update the adapter, and assist you with deploying the adapter into IAP.
|
package/SYSTEMINFO.md
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Kubernetes
|
|
2
|
+
|
|
3
|
+
Vendor: Kubernetes
|
|
4
|
+
Homepage: https://kubernetes.io/
|
|
5
|
+
|
|
6
|
+
Product: Kubernetes
|
|
7
|
+
Product Page: https://kubernetes.io/
|
|
8
|
+
|
|
9
|
+
## Introduction
|
|
10
|
+
We classify Kubernetes into the Cloud domain as Kubernetes provides the capability to deploy, manage and orchestrate containerized applications in cloud environments. We also classify it into the Data Center domain because it provides the container orchestration capabilities within data center environments.
|
|
11
|
+
|
|
12
|
+
## Why Integrate
|
|
13
|
+
The Kubernetes adapter from Itential is used to integrate the Itential Automation Platform (IAP) with Kubernetes. With this adapter you have the ability to perform operations such as:
|
|
14
|
+
|
|
15
|
+
- Service Discovery and Load Balancing: Kubernetes can expose a container using the DNS name or using its own IP address. If traffic to a container is high, automatically distribute the network traffic so that the deployment is stable.
|
|
16
|
+
|
|
17
|
+
- Storage Orchestration: Automatically mount a storage system of your choice, such as local storages, public cloud providers, and more.
|
|
18
|
+
|
|
19
|
+
- Automated Rollouts and Rollbacks: You can describe the desired state for your deployed containers, and it can change the actual state to the desired state at a controlled rate.
|
|
20
|
+
|
|
21
|
+
- Automatic Bin Packing: Automatically run containerized tasks with descriptions of how much CPU and memory (RAM) each container needs. Kubernetes can fit containers onto your nodes to make the best use of your resources.
|
|
22
|
+
|
|
23
|
+
## Additional Product Documentation
|
|
24
|
+
The [API documents for Kubernetes](https://kubernetes.io/docs/reference/)
|
|
25
|
+
|
package/TROUBLESHOOT.md
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
## Troubleshoot
|
|
2
|
+
|
|
3
|
+
Run `npm run troubleshoot` to start the interactive troubleshooting process. The command allows you to verify and update connection, authentication as well as healthcheck configuration. After that it will test these properties by sending HTTP request to the endpoint. If the tests pass, it will persist these changes into IAP.
|
|
4
|
+
|
|
5
|
+
You also have the option to run individual commands to perform specific test:
|
|
6
|
+
|
|
7
|
+
- `npm run healthcheck` will perform a healthcheck request of with current setting.
|
|
8
|
+
- `npm run basicget` will perform some non-parameter GET request with current setting.
|
|
9
|
+
- `npm run connectivity` will perform networking diagnostics of the adatper endpoint.
|
|
10
|
+
|
|
11
|
+
### Connectivity Issues
|
|
12
|
+
|
|
13
|
+
1. You can run the adapter troubleshooting script which will check connectivity, run the healthcheck and run basic get calls.
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
npm run troubleshoot
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
2. Verify the adapter properties are set up correctly.
|
|
20
|
+
|
|
21
|
+
```text
|
|
22
|
+
Go into the Itential Platform GUI and verify/update the properties
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
3. Verify there is connectivity between the Itential Platform Server and Kubernetes Server.
|
|
26
|
+
|
|
27
|
+
```text
|
|
28
|
+
ping the ip address of Kubernetes server
|
|
29
|
+
try telnet to the ip address port of Kubernetes
|
|
30
|
+
execute a curl command to the other system
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
4. Verify the credentials provided for Kubernetes.
|
|
34
|
+
|
|
35
|
+
```text
|
|
36
|
+
login to Kubernetes using the provided credentials
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
5. Verify the API of the call utilized for Kubernetes Healthcheck.
|
|
40
|
+
|
|
41
|
+
```text
|
|
42
|
+
Go into the Itential Platform GUI and verify/update the properties
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### Functional Issues
|
|
46
|
+
|
|
47
|
+
Adapter logs are located in `/var/log/pronghorn`. In older releases of the Itential Platform, there is a `pronghorn.log` file which contains logs for all of the Itential Platform. In newer versions, adapters can be configured to log into their own files.
|