This documentation and the Cisco Observability Platform functionalities it describes are subject to change. Data saved on the platform may disappear and APIs may change without notice.
Solution Validation and Deployment
This page describes the following topics:
- Solution Validation
- Solution Deployment to a Tenant
- Solution Upload Status Check
- Solution Subscription
- Solution Installation and Subscription Status Check
- Solution Deployment to the Cisco Observability Platform Exchange
1. Solution Validation
Validating a solution ensures that:
- The manifest structure and content are correct.
- Knowledge objects are compliant with the schema in the knowledge type definition.
When run from the directory containing the manifest file, the following command validates the Space Fleet solution:
fsoc solution validate --dev
Sample Output - Successful Execution
Creating solution zip: "/var/folders/f2/bqcq6lws1r36dlrzr6d771f80000gn/T/spacefleet.zip"
Validating solution spacefleet version 1.0.1 with tag dev
✓ Platform API call (POST /solution-manager/v1/solutions)
Successfully validated solution spacefleet version 1.0.1 with tag dev.
Sample Output - Failed Execution
fsoc solution validate --dev
Creating solution zip: "/var/folders/f2/bqcq6lws1r36dlrzr6d771f80000gn/T/spacefleet.zip"
Validating solution spacefleet version 1.0.0 with tag dev
✓ Platform API call (POST /solution-manager/v1/solutions)
1 errors detected while validating solution
- Error Content: {Error:Requested version: 1.0.0 should be greater than latest available for solution: spacefleet, tag: dev, version: 1.0.1 Source:manifest.json}
⨯ 1 error(s) found while validating the solution
2. Solution Deployment to a Tenant
Solution developers can only programmatically deploy solutions to their own Tenant.
When run from the directory containing the manifest file, the following command deploys Space Fleet to the user's Tenant:
fsoc solution push --dev
Sample output for a successful execution:
fsoc solution push --dev
Creating solution zip: "/var/folders/f2/bqcq6lws1r36dlrzr6d771f80000gn/T/spacefleet.zip"
Deploying solution spacefleet version 1.0.1 with tag dev
✓ Platform API call (POST /solution-manager/v1/solutions)
Successfully uploaded solution spacefleet version 1.0.1 with tag dev.
3. Solution Upload Status Check
The following command checks if the latest version of Space Fleet was sucessfully uploaded to the user's Tenant:
fsoc solution status spacefleet --status-type upload --dev
Sample output for a successful execution:
fsoc solution status spacefleet --dev --status-type upload
✓ Platform API call (GET /knowledge-store/v1/objects/extensibility:solutionRelease?order=desc&filter=data.solutionName+eq+%22spacefleet%22+and+data.tag+eq+%22dev%22&max=1)
✓ Platform API call (GET /knowledge-store/v1/objects/extensibility:solutionInstall?order=desc&filter=data.solutionName+eq+%22spacefleet%22+and+data.tag+eq+%22dev%22&max=1)
✓ Platform API call (GET /knowledge-store/v1/objects/extensibility:solution/spacefleet.dev)
Solution Name: spacefleet
Solution Subscription Status: Subscribed
Solution Upload Version: 1.0.1
Upload Timestamp: 2023-08-10T20:21:34.733Z
4. Solution Subscription
The following command subscribes the user's Tenant to Space Fleet:
fsoc solution subscribe spacefleet
Sample output for a successful execution:
fsoc solution subscribe spacefleet
✓ Platform API call (PATCH /knowledge-store/v1/objects/extensibility:solution/spacefleet)
Tenant 5fda9d-9de-4b2-b88-c2c2ac1d3f has successfully subscribed to solution spacefleet
5. Solution Installation and Subscription Status Check
The following command checks if the user's Tenant successfully installed and subscribed to the latest version of Space Fleet:
fsoc solution status spacefleet --status-type install --dev
Sample output for a successful execution:
fsoc solution status spacefleet --dev --status-type install
✓ Platform API call (GET /knowledge-store/v1/objects/extensibility:solutionRelease?order=desc&filter=data.solutionName+eq+%22spacefleet%22+and+data.tag+eq+%22dev%22&max=1)
✓ Platform API call (GET /knowledge-store/v1/objects/extensibility:solutionInstall?order=desc&filter=data.solutionName+eq+%22spacefleet%22+and+data.tag+eq+%22dev%22&max=1)
✓ Platform API call (GET /knowledge-store/v1/objects/extensibility:solution/spacefleet.dev)
Solution Name: spacefleet
Solution Subscription Status: Subscribed
Solution Install Version: 1.0.1
Solution Install Successful?: true
Solution Install Time: 2023-08-10T20:21:40.955Z
Solution Install Message:
6. Solution Deployment to the Cisco Observability Platform Exchange
Once Space Fleet is tested and in a stable state, the user can request for it to be deployed to the Cisco Observability Platform Exchange for all Tenants. To do so, the user emails the following content to fso-submission@cisco.com:
The Cisco Observability Platform Exchange submission email:
Email Subject: Cisco Observability Platform Exchange Submission Request - Space Fleet
Email Body:
I am submitting Space Fleet for review by the Cisco Observability Platform. Attached in the email are my solution package (.zip) and solution metadata file (.json). Please find additional information below for my solution.
- Executable File: Attached.
- Metadata File: Attached in JSON format.
- Solution Title: Space Fleet
- Company Name: Cisco
- Description: The Space Fleet solution enables developers to understand how to build new domains by leveraging platform elements such as FMM and the Knowledge Store.
- Contact: developer@cisco.com
- Documentation: https://docs.appdynamics.com/
Submission Date: August 10, 2023
The solution .zip file, which contains the manifest file and component definition files.
The solution metadata .json file:
"name": "SpaceFleet", "displayTitle": "Space Fleet Reference Solution", "displaySubTitle": "A Cisco Cloud Observability Module", "shortDescription": "The Space Fleet solution enables developers to understand how to build new domains by leveraging platform elements such as FMM and the Knowledge Store.", "longDescription": "The Space Fleet solution enables developers to understand how to build new domains by leveraging platform elements such as FMM and the Knowledge Store. It adds a new domain that shows up on the Observe page, generates OpenTelemetry data for the entities modeled by the solution, and generates scenario-based telemetry workloads that enable users to observe actions in real time.", "version": "1.0.1", "keywords": "ECP FMM UI", "icon": "url-to-a-png-file", "screenshots": [ "images/fso/screenshots/spacefleet-01.png", "images/fso/screenshots/spacefleet-02.png", "images/fso/screenshots/spacefleet-03.png" ], "benefitDescription": [ "Using the Space Fleet solution, you can learn how to create and monitor new domains in Cisco Cloud Observability.", ], "developerName": "Cisco", "developerEmail": "developer@cisco.com", "subscribable": "paid", "homePageLink": "https://www.cisco.com", "documentationLink": "https://docs.appdynamics.com/", "supportSiteLink": "https://www.appdynamics.com/support"