Deploying LuxCoreRender

From LuxCoreRender Wiki
Jump to navigation Jump to search

Releasing and Deploying LuxCoreRender

Audience, Scope and Prerequisites

This document is intended for LuxCoreRender administrators only.


Releasing refers to the process of finalizing a version of LuxCore, i.e. defining a state of LuxCore which can be made available to end-users.

Deployment refers to the process of making a new release of LuxCoreRender available to end-users.


The scope of Deployment includes the following components:

  • LuxCore Python Wheels (aka pyluxcore)
  • LuxCore Samples (aka luxcoreui and luxcoreconsole)
  • BlendLuxCore


Please note we deliberately exclude the dependencies (aka LuxCoreDeps) from the deployment scope. Indeed:

  • Dependencies are not intended for end-users, so deployment is not applicable.
  • Up-to-date dependencies are necessary for LuxCore development and tests, so they should have been released for a while when LuxCore deployment occurs.

Prerequisites

#1 Admin rights

The process requires that the administrator running the Release and Deploy process be:

  • granted with sufficient rights on LuxCoreRender repositories on Github, including running actions, producing releases etc.
  • granted with sufficient rights on LuxCoreRender repository on PyPI and PyPI-test, including adding and deleting versions
  • skilled enough in Github administration and, especially, able to run Github actions
  • and skilled enough in PyPI administration

#2 Buildability

The process required that targeted LuxCore components are buildable.

Buildability: the component must by buildable by Continuous Integration. This can be checked by running the following Github Actions:

  • Wheels: LuxCore Python Wheel Builder
  • Samples: LuxCore Python Sample Builder
  • BlendLuxCore: BlendLuxCore Build Bundle