OPEX 1.9 Release

Overview

We're proud to announce the OPEX version 1.9 release!

We've worked hard on not only providing support for Peatio 1.9 but also on improving the infrastructure, deployment scripts and configuration structure greatly.

This release contains an extensive list of features, enhancements, fixes and also a few breaking changes. Thus, don't forget to check the upgrade guide before upgrading to the new version!

Breaking changes

#402 Removed ability to use dev mode in Vault

Starting from this release, Vault is deployed in cluster mode, which doesn't allow for in-memory dev mode usage, thus we have dropped its support in favor of using industry-proven production mode with a Google Cloud Storage bucket as a backend. See more on Vault usage and deployment process here.

#380 Moved most of the Helm charts to the Openware Charts repository

All the Helm charts except for Peatio, Barong and Applogic have been moved to the Openware Charts Helm repository, allowing for easier distribution and updates of the charts used in OPEX.

#398 All Terraform IaC files have been moved to terraform

All the Terraform Infrastructure as Code files have been moved to the terraform directory in a Kite project's root to allow for conditional rendering and easier customization/replacability.

#409 Separated Peatio configuration into multiple files

Since the Peatio 1.9 release, the number of configuration files has noticeably increased and thus we've decided to split instead of merging them all in one file. Now all the Peatio configs are located at config/environments/*env_name*/peatio/

Features

#400 Added Event API configs to Peatio

#392 Added autoscaling and HA to the K8s cluster, updated node versions

#391 Updated the administration docs with Applogic, frontend and Slanger details

#385 Updated the Vault Helm chart

#381 Added documentation on how to work with custom SSL certificates

#376 Added documentation on how to send requests to peatio from the internal cluster network

#371 Added installation logic for Peatio Trading UI into the opex binary

#404 Moved all the dependencies(buckets, SQL users, Service Accounts etc) into a separate Terraform module to allow for fine-grained control over SA IAM policies and to avoid cluttering things up

#398 Added ability to choose between regional(High Availability) and zonal clusters

Enhancements

#402 Updated Vault documentation

#401 Updated Barong Management API configs with read_accounts and read/write_labels

#403 Moved RAILS_LOG_TO_STDOUT into Applogic env directly

#395 Added EVENT_API_RABBITMQ_PASSWORD environment variable to the Peatio chart helper

#394 Updated deployment files for 1.9

#388 Update frontend documentation and configuration

#383 Put 'warn' as the default LOG_LEVEL in Peatio

#378 Added ability to output Applogic logs to STDOUT

#377 Fixed probes in the Peatio Helm chart

#375 Added Applogic troubleshooting documentation

#374 Removed redundant checksums usage in the Peatio helm chart

#369 Updated the helm repo link

#368 Added a user-friendly error display when the module is not found or opex.rb can't be loaded

#367 Added ability to upload files more than 1 MB

#365 Added config linking to Barong's Helm chart

#364 Frontend domain is now automatically whitelisted in API CORS origins

#363 Changed the flag of sed to be usable on all the supported platforms

#352 Updated the specifications of multi-signature withdrawal request to Applogic

#406 Updated RSA key generation with explicit PEM formatting

#397 Updated README.md with new kite usage details and K8s IP template improvements

#423 Remove the redundant Peatio WS API from the chart

Fixes

#396 Fixed Peatio configuration files

#390 Fixed URLs in Barong and frontend config files

#389 Frontend chart version is now loaded dynamically

#384 Fixed the barong_deps_up.sh script

#425 Fix OPEX CLI config file helper to not parse Helm charts

#424 Fix markets.yml to get mounted properly

#422 Update image versions with the latest 1.9 tags

#421 Remove redundant/duplicate tf variables from the manifest

#420 Add zone to the peatio.tf

#418 Сonfigs for captcha server side check support

#416 Provide configs to enable captcha server side check functionality

#415 Set only the frontend/trading components to be indexed by search engines

#413 Added ability to block all the indexing by search engines

#414 Set only the frontend/trading components to be indexed by search engines

Upgrade guide

  1. Prepare a dump of your database before starting. Also, don't forget to run export KITE_ENV=*env_name*

  2. Install the latest version of kite (>=1.1.3)

  3. Use kite module fetch --version 1-9-stable *module_url* to load the new release of OPEX

  4. Run kite module vars modules/kite-opex and apply the necessary changes to your vars.kite-opex.yml file, e.g. terraform.k8s_ha

  5. Run kite module render modules/kite-opex to render all the new files, applying the necessary changes

  6. Move all the configuration from your old peatio.yml file into the respective files inside of the peatio directory

  7. Temporarily tear down the old Peatio deployment using helm del --purge peatio

  8. Deploy Barong, Applogic and Peatio using their respective deployment scripts.

  9. Feel great about yourself and your fresh OPEX 1.9 deployment :)