Deploying or Upgrading CloudBlue Store
Requirements and Prerequisites
Before installing CloudBlue Store, ensure the prerequisites bellow:
-
CloudBlue Store requires a single Kubernetes Pod with the following configuration:
Container CPU cores RAM in GiB appstore 0.5 1.0
-
A special account needs to be created individually for each provider. To obtain the account credentials, send us an email message. Please specify your company name and copy your technical account manager on the email message.
-
An appstore-secret secret needs to be created in the Kubernetes namespace:
kubectl -n <your namespace> create secret generic appstore-secret --from-literal=jira_robot_username=<your username> --from-literal=jira_robot_password_encoded=`echo -n "<your_password>" | base64`
How to Deploy CloudBlue Store
To deploy CloudBlue Store:
- Ensure the prerequisites above.
- Follow the common CloudBlue Commerce component deployment procedure using the CloudBlue Store deployment parameters below in the config.yaml.
Verifying the Installation
To verify that the installation completed successfully, complete the following steps:
-
Log in to CloudBlue Commerce as a provider, go to UX1 > CloudBlue Store. The landing page of the store opens. Click any app tile to open it.
-
Log in to CloudBlue Commerce as a reseller, go to UX1 > CloudBlue Store. The landing page of the store opens. Click any app tile to open it.
How to Upgrade CloudBlue Store
How to Update from CloudBlue Store 1.x to 2.0 or Later
In version 2.0, CloudBlue Store was integrated with new storage. This requires credentials to be updated so that the content remain accessible after the update.
If you are updating CloudBlue Store from version 1.x to version 2.0 or later, make sure you complete the following steps before starting the component update:
-
Obtain a new login and password for CloudBlue Store. To do this, send us an email.
-
Update the secret in the Kubernetes namespace with the obtained credentials. To do this, run the following command:
kubectl patch secret appstore-secret -p="{\"data\":{\"jira_robot_username\":\"$(echo -n '<your_username>' | base64 -w 0)\", \"jira_robot_password_encoded\":\"$(echo -n '<your_password>' | base64 -w 0 | base64 -w 0)\"}}"
Note: Using the
base64
parameter twice for the password in this command is intended. The command must be used as is, except for replacing placeholders<your_username>
and<your_password>
with the actual data. -
Update the component using the generic update procedure.
Generic Update Procedure
To update CloudBlue Store, follow the common CloudBlue Commerce component update procedure using the CloudBlue Store deployment parameters below in the config.yaml file.
Deployment Parameters
When installing or updating CloudBlue Store, use the parameters below in the config.yaml.
Component Name
appstore
Common Parameters
Parameter | Default value |
---|---|
javaopts | -XX:MetaspaceSize=96m -XX:MaxMetaspaceSize=256m -XX:InitialRAMPercentage=30.0 -XX:MaxRAMPercentage=70.0 |
resources.requests.cpu | 1000m |
resources.requests.memory | 768Mi |
resources.limits.cpu | 4000m |
resources.limits.memory | 1280Mi |
oauthkey | |
oauthsecret | |
alerts_enabled | false |
Specific Parameters
Parameter | Default value | Description |
---|---|---|
appstore_secret | A K8s secret to access the application storage |
Sample config.yaml
Default config.yaml:
--- components: appstore: alerts_enabled: true # disabled by default
--- components: appstore: oauthkey: 7d69aaf7-35af-49dd-bf89-e679c0cacbf2 oauthsecret: 2840de45-378c-436b-ab48-e57b2fa09885 javaopts: "-XX:MinRAMPercentage=30.0 -XX:MaxRAMPercentage=70.0 -XX:MetaspaceSize=96m -XX:MaxMetaspaceSize=256m" devmode: enabled: false resources: requests: cpu: 10m memory: 512Mi limits: cpu: 500m memory: 1024Mi alerts_enabled: false jira: allowed_statuses_string: Published # Load credentials from precreated secret appstore_secret: appstore-secret
How to Obtain the Current config.yaml from CloudBlue Commerce
When updating CloudBlue Commerce components, you may need to obtain the current config.yaml.
To obtain the current config.yaml from CloudBlue Commerce, on a machine with kubectl, execute the following request:
kubectl -n NAMESPACE get secret config-yaml-backup -o "jsonpath={.data['config\.yaml']}" | base64 -d
Note: NAMESPACE is the namespace of your CloudBlue Commerce installation.
To find it, execute the following command:
kubectl describe svc oss-proxy | grep namespace
How to View the Deployment Parameters with Default Values for the Component Version You Want to Install (values.yaml)
To view the deployment parameters with default values (values.yaml) for the component version you want to install, run the following command from the machine with kubectl:
helm show values <component_name_for_config.yaml> --version <component_version> --username <username_for_deployment_repository> --password <username_for_deployment_repository> --repo <a_link_to_repository_with_CloudBlue Commerce_components>
For username and password to the deployment repository, please contact your Technical Account Manager.