What new features does the new repository have?
The old repository is moved to a newly updated repository, one with versioning. This means that when installing an appliance you can choose the version of TrustBuilder you want to install. This enables the possibility to deploy the same version of TrustBuilder in all your environment and create consistency.
2. Complete control
On the TrustBuilder repositories, TrustBuilder Corporation has complete control of all the packages used in the appliance. We host our own mirror of the Epel, MariaDB and CentOS repository. That way we control what packages are being updated, reducing the risk of upgrading to the latest TB version.
Packages for debugging purposes are also available on the TB repository, so you only need to whitelist one URL.
If security patches are available, they are released asap on our repository.
The Centos repository and the EPEL repository are updated every first of the month.
What has changed for the customer?
With a new repository there will be some changes for the customer. These changes are not big and are automated as best as possible.
1. Change the URL
There is new URL for the new repository, this means that for appliances that needs to go through a proxy, yum update, a new request need to be made to include the new URL.
The old URL: https://repo.trustbuilder.io/
The new URL: https://repository.trustbuilder.io/
2. Setting correct version
In the normal location for installing the appliance there is a new YAML file, environment.yml. This file needs to be modified to set the correct TB version, TB Major version, TB Minor version and the TB repository.
Currently the following TB versions are available:
- 9.0.0 -> 9.0.9
- 9.1.0 -> 9.1.1
How to link with the new repository?
Installation of the new repository can be different for each customer, as they have sometimes their own way for updating the appliance.
The default procedure:
- Remove all old TrustBuilder repository .repo files in /etc/yum.repos.d/ folder or delete everything with sudo rm -rf /etc/yum.repos.d/
- Go to /etc/yum.repos.d/ and download the global TrustBuilder .repo file: sudo curl https://repository.trustbuilder.io/appliance/trustbuilder-epel-centos-custom.repo > trustbuilder-epel-centos-custom.repo
- Go to https://repository.trustbuilder.io/appliance/ and check what appliance version you want to download. Currently there are 3 versions available.
- Now download the right TrustBuilder appliance package and install it: sudo yum localinstall https://repository.trustbuilder.io/appliance/<chosen rpm>
- If the above installation fails, first remove the old TrustBuilder appliance package: sudo yum remove trustbuilder-appliance and try step 4. again.
- Go to /opt/trustbuilder/appliance/config/ and edit environment.yml to suite your requirements and version of TrustBuilder.
- tb_repo: 'Production' is the default value for this and this should only be used at customers. Other options are 'development' and 'acceptance' but these are used at own risk as these are not official releases.
- tb_version: The product version of Trustbuilder
- tb_version_major: The major version of the Product version of Trustbuilder
- tb_version_minor: The minor releases between the major releases
- update_packages: This will update all packages of the appliance with the latest CentOS -and Trustbuilder packages.
- Execute the environment.yml file as trustbuilder user: ansible-playbook -v environment.yml
- You should run the steps above on all the appliances in the cluster.
- Now run command: sudo yum update trustbuilder-appliance, to have the latest install for that version.
- There are packages that had wrong version numbers in the yum repository. This means if you do an upgrade to a specific version these components will not be upgraded because version number was equal to a timestamp and is bigger then the version number now used. This is now fixed. To make sure you have the right version do the following steps:
- sudo yum list installed | grep trustbuilder, if you see version number that looks like a timestamp, ex: trustbuilder-gateway.x86_64 20180108160127-1 @tb-appliance-91-development ( this will also likely be for the tomcat-core and tomcat-gui).
- If this is the case then you need to run the following command, ex: sudo yum downgrade trustbuilder-gateway. Downgrade seems counter intuitive but the timestamp has a higher number then the version number now used. After this, run the command in step 1 again and the timestamp should be changed into a valid version number.
- Do this for all the components that have a timestamp
- Now if you upgrade, all the component will follow the correct upgrade procedure.
- After this you can run your normal installation .yml template as the trustbuilder user.