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.

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.6.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

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

Web applications

Steps to release:
  • bump the version

  • run yarn cdeps to update all required Corteza dependencies

  • commit the changes

  • tag the version

The steps defined above should be used for all core repositories:

Server

Steps to release:
  • commit the changes

  • tag the version

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.