This command is used for product deployment.
tcxctl deploy all
This command is provided for Day 0 product deployment, you need to run one command to deploy everything. Internally, it performs these steps sequentially:
tcxctl push
tcxctl deploy core
tcxctl deploy product
Ensure that the extracted bundle directory structure is as follows:
tcx-deployer ├── csars ├── examples │ ├── backup-and-restore │ └── tcops_helm_customizations ├── images ├── imgpkg │ ├── controller │ └── services ├── product-helm-charts │ ├── init │ │ ├── charts │ │ └── templates │ │ └── configmaps │ └── tcsa │ ├── charts │ └── templates └── scripts ├── deployment ├── imgpkg_tags.yaml └── manifests ├── crds │ ├── system │ └── tcx └── harbor └── custom
Examples:
- tcxctl deploy all command in TKG:
tcxctl deploy all --path /root/tcx-deployer --kubeconfig <your-kubeconfig-location> --registry <harbor-registry-fqdn>/<project-name> --registry-password <harbor-registry- password> --registry-username <harbor-registry-username> --registry-cert <path-to-your- registry-ca-certificate-file> --timeout <time-in-mins>
- tcxctl deploy all command in AWS:
export AWS_PROFILE=<MY-AWS-PROFILE> tcxctl deploy all --path /root/tcx-deployer --kubeconfig <your-kubeconfig-location> --registry <your-profile-ID>.dkr.ecr.<aws-region>.amazonaws.com/<project-name> --timeout <time-in-mins>
tcxctl deploy core
Deploys core tcx components, which is collection of three apps
tcx-bootstrap
,
admin-operator
, and
kapp-controllertcxct
.
tcxctl deploy core -r <registry> -u <username> -p <password> -c <ca.crt_full_path_if_any> --tag-file full_path_of_tag.yaml --kubeconfig <kubeconfig>
OR
docker login registry tcxctl deploy core -r <registry> --tag-file <full_path_of_tag.yaml> --kubeconfig <kubeconfig>
If need to apply any settings to all core tcx apps (
tcx-bootstrap
,
admin-operator
, and
kapp-controllertcxct
) then helm flags use:
--set, --set-file or --values flags
tcxctl deploy core -r <registry> -u <username> -p <password> -c <ca.crt_full_path_if_any> --tag-file full_path_of_tag.yaml --kubeconfig <kubeconfig> --set foo=bar --set-file file.yaml -f values-foo.yaml
Core Apps details:
- Tcx-Bootstrap includes:
- TCxProduct CRDs
- CRDs needed by kapp-controller
- StorageClass based on Cloud includes:
- Kubelet-pull-secret
- ServiceAccount
- Admin-operator
- Kapp-Controller
tcxctl deploy core:
tcxctl deploy core --kubeconfig <your-kubeconfig-location> --tag-file <$TCSA_WORK_SPACE> /tcx-deployer/scripts/imgpkg_tags.yaml --registry <harbor-registry- fqdn>/<project-name> --registry-password <your-registry-password> --registry-username <- registry-username> --registry-cert <path-to-your-registry-ca-certificate-file>
tcxctl deploy core --kubeconfig /root/.kube/config --tag-file /root/tcx-deployer/scripts/imgpkg_tags.yaml --registry <harbor-registry- fqdn>/<project-name> --registry-password <your-registry-password> --registry-username <- registry-username> --registry-cert <path-to-your-registry-ca-certificate-file>
tcxctl deploy product
This command deploys the product chart as a Helm release. It uses the Helm SDK to deploy the chart contents. It is not mandatory to use this command to deploy the Helm chart. The helm
CLI or other higher-order tools that understand Helm charts like CloudFormation or VMware Telco Cloud Automation can be used.