34. Releasing your code – Mastering Plone 6 development

34. Releasing your code#

We finally have some working code! Depending on your policies, you need repeatable deployments and definitive versions of software. That means you don't just run your production site with your latest source code from your source repository. You want to work with Python wheels/eggs and npm releases.

Note

You may want to move your add-on from your repository to the Plone collective of add-ons if it's relevant for general use cases.

Please contact the community on community.plone.org for a release.

34.1. Releasing your backend add-on#

When you are ready with development and tests are OK, you can release your package.

Test your add-on with

make check

We are releasing the Python package on PyPI. Go to pypi.org and create an account as explained in https://packaging.python.org/en/latest/guides/distributing-packages-using-setuptools/#create-an-account.

The package created with cookieplone is prepared for releasing with zest.releaser. Run fullrelease in the root directory of your add-on.

fullrelease

34.2. Releasing your frontend add-on#

When you are ready with development and tests are OK, you can release your package.

Frontend add-ons are Node packages and are released on https://www.npmjs.com. So, please create an account (https://docs.npmjs.com/getting-started/setting-up-your-npm-user-account) and configure your local environment (https://docs.npmjs.com/getting-started/configuring-your-local-environment).

Have a look at the Makefile of your add-on. You'll see that it is already prepared for a release. The following command starts a dialog to release the package.

make release

You may want to trigger a test run before with

make release-dry-run

Congratulation!