Demos
A demo is a group of argocd application deploying a group of resources into a demo project created in the targeted cluster.
demo are stored into the /usr/share/sxcm/demos
directory and copied into a cluster gitops repository when enabled into a cluster.
Demo name | Kind | Purpose |
---|---|---|
3scale | API | Demo on how to use 3Scale API Management |
couchbase | Application | Demo on how to deploy and use NoSQL database in a resilient way |
affinity | Run | Demo on how to use Afinity pod placement |
ansible | Automation | Demo on how to use Ansible AWX infrastructure |
argocd | Automation | Demo on how to use ArgoCD Gitops platform for application lifecycle |
compliance | Security | Demo on how to use the compliance operator |
elasticsearch | Infra | Demo on how to use the elasticsearch operator |
helm | Application | Demo on how to use Helm to deploy application |
hpa | Infra | Demo on how to use the Horizontal Pod Autoscaler |
hugo | Application | Demo on how to use HUGO to build static website container |
imagestreams | Infra | Demo on how to load imagestreams into the service catalog |
istio | Run | Demo on how to use service mesh |
jenkins | Build | Demo on how to deploy and use a jenkins server |
keycloak | Security | Demo deploying an SSO server |
knative | App | Demo on to deploy an application using a serverless architecture |
kubevirt | Run | Demo running virtual machine into a Kubernetes cluster |
kustomize | Automation | Demo on how to deploy application using kustomize files |
nexus | Build | Demo on how to deploy and use a nexus server |
ocs | Infra | Demo on how to deploy and use an ODF storage backend |
ptp | Infra | Demo on how to enable Precision Time Protocol |
s2i | Build | Demo on how to build application container using source to image |
storage | Infra | Demo with various deployment using block, FS and object storage |
sxapi | API | Demo on how to deploy various micro-services |
taintoleration | Run | Demo on how to deploy a application using tain and toleration placement |
tekton | Build | Demo on how to build using tekton task and pipeline |
vault | Security | Demo on how a application can consume secret stored into a vault |
vpa | Run | Demo on how to deploy an application with vertical autoscalling capacities |
workspace | Build | Demo on how to deploy an Eclipse IDE environment |
yaml | Run | Demo on how to describe resource with the yaml syntax |
Read commands
This group of command are readonly command available for micro and macro information of the cluster demos installed into your local environment
List availables demos
List available cluster configurations
Param | mandatory | Content |
---|---|---|
help | no | Get the manpage of this command |
# List the demo in the shared directory
sxcm demo stack
Read information
Get information about a demo.
Should be a demo stored into the sxcm demo stack. See sxcm demo stack
to get a list of available demos.
Param | mandatory | Content |
---|---|---|
mydemo | yes | The name of the demo to search |
help | no | Get the manpage of this command |
# Read information about the demo version installed into your host (local)
sxcm demo info mydemo
Write commands
This group of command have impact on the demo loaded into the cluster demo stack.
Edit
Edit a demo and commit change to the remote gitops repository. Change are not executed into the cluster and you must enable the demo with sxcm demo enable mydemo
to apply change to the cluster.
Param | mandatory | Content |
---|---|---|
mydemo | yes | The name of the demo to edit |
mycluster | no | The name of the cluster impacted by this command. Default is the active cluster |
help | no | Get the manpage of this command |
# Edit the mydemo of the active cluster and record change into the gitops repository
sxcm demo edit mydemo
# Edit the mydemo of the mycluster cluster and record change into the gitops repository
sxcm demo edit mydemo mycluster
Cluster interaction commands
This group of command have impat on the cluster instances and demo stored into it. According to your cluster state (deployed or not), some command may be more usefull.
Associate / Dissociate
Add or remove a demo into a cluster demo stack and push it to gitops repository. If no cluster name is given, the currently active cluster will be used.
This command is mostly intended to use when your cluster is not deployed. If your cluster is deployed, no change will happen into the running cluster, change will be performed when
- deploy the defined cluster
sxcm deploy mycluster
- enable the demo into the cluster using
sxcm demo enable mydemo mycluster
Param | mandatory | Content |
---|---|---|
mydemo | yes | The name of the demo to associate or dissociate |
mycluster | no | The name of the cluster impacted by this command. Default is the active cluster |
help | no | Get the manpage of this command |
# Associate this demo to the cluster mycluster (runable demo)
sxcm demo associate mydemo mycluster
# Dissociate this demo from the cluster mycluster (removable demo)
sxcm demo dissociate mydemo mycluster
Enable / Disable
Add or remove a demo into a cluster demo stack, apply it into a deployed cluster and push it to gitops repository. If no cluster name is given, the currently active cluster will be used.
This command is mostly intended to use when your cluster is deployed. If your cluster is not deployed, change will be performed when
you will deploy the defined cluster using sxcm deploy mycluster
command.
Param | mandatory | Content |
---|---|---|
mydemo | yes | The name of the demo to enable or disable |
mycluster | no | The name of the cluster impacted by this command. Default is the active cluster |
help | no | Get the manpage of this command |
# Enable this demo to the cluster mycluster (running demo)
sxcm demo enable mydemo mycluster
# Disable this demo from the cluster mycluster (removed demo)
sxcm demo disable mydemo mycluster