You are reading the documentation for an outdated Corteza release. 2024.9 is the latest stable Corteza release.

Corteza Core Repositories

Corteza build pipelines
Figure 1. A diagram outlining the release pipeline:

Dependency warnings

Go over each repository and (try to) assure that there aren’t any warnings with any of the dependencies. GitHub provides a friendly system for this, so that shouldn’t be an issue.

Repositories:
  1. corteza: The monorepo containing the codebase for core Corteza features.

  2. corteza-server-corredor: Corredor automation runner.

  3. corteza-docs: Corteza documentation.

Building infrastructure

All Corteza repositories utilize GitHub workflows and actions to release server binaries, web application bundles, docker images, or other output formats.

Versioning

Bump the version of the NPM packages, following the CalVer standard; for example, 2020.9-rc.1.

Released versions should also be tagged.

Use this Git command to get it done:
# $V is the version; for example export V=2021.9.0;
git tag $V && git push origin $V;

NPM packages

The rest of the repositories depend on these two, so you should handle them first.

Table 1. A list of predefined decoders:

corteza-js

Steps to release:
  • remove node_modules and run yarn

  • bump the version

  • commit the changes

  • tag the version

  • run yarn build to build the package

  • run npm publish --dry-run to test the publish

  • run npm publish to publish

  • push the changes and the created tag to the Github repository

corteza-vue

Steps to release:
  • remove node_modules and run yarn

  • bump the version

  • run yarn cdeps to update all required Corteza dependencies

  • commit the changes

  • tag the version

  • run yarn build to build the package

  • run npm publish --dry-run to test the publish

  • run npm publish to publish

  • push the changes and the created tag to the Github repository

Web applications and Corredor server

Steps to release:
  • bump the version

  • run yarn cdeps to update all required Corteza dependencies

  • commit the changes

  • tag the version

  • push the changes and the created tag to the Github repository

The steps defined above should be used for all core repositories:
  1. corteza: The monorepo containing the codebase for core Corteza features.

  2. corteza-server-corredor: Corredor automation runner.

Server

Steps to release:
  • commit the changes

  • tag the version

  • push the changes and the created tag to the Github repository

Binaries & Bundles

All of the outputs are stored on the https://releases.cortezaproject.org/files. When building the Docker images, the sources are taken from the storage mentioned above.

The Docker images are placed on the DockerHub.

Unofficially, you can use the released packages with a Vagrant box https://github.com/cortezaproject/corteza-vagrant.

Alternatively, you can (build and) install these packages manually, either on the virtual machine or a regular machine.