2.0 KiB
2.0 KiB
Devpi Release Flow
Current state
mandel/testingis the active package source for MandelBlog project builds.ocyan.plugin.template_engine==0.2.12is published there and is the current production-safe version.mandel/stableis not available yet.
This means production is intentionally running from the testing index for now, to avoid breaking installs while the stable index is not provisioned.
Index roles
mandel/testing- pre-production and current fallback source
- currently also the active production source until stable exists
mandel/stable- intended production index
- not yet provisioned
Promotion flow
When mandel/stable exists, promote existing artifacts without rebuilding:
devpi use https://pypi.mandelblog.com/mandel/testing
devpi login mandel
devpi push ocyan-plugin-template-engine==0.2.12 mandel/stable
Admin prerequisite
Promotion requires a devpi admin to create the production index and grant upload or push permissions.
Recommended admin setup:
devpi index -c mandel/stable bases=root/pypi volatile=False acl_upload=mandel,Mandel-publish
Planned stable-first install order
Do not enable this until mandel/stable exists:
PIP_INDEX_URL=https://pypi.mandelblog.com/mandel/stable/+simple/
PIP_EXTRA_INDEX_URL=https://pypi.mandelblog.com/mandel/testing/+simple/
CI behavior
- If the stable index is missing, Jenkins logs:
devpi stable index not available, using testing as production source
- The build does not fail because of the missing stable index.
- Installs continue from
mandel/testing.
Validation checklist
After stable becomes available and promotion is done:
- confirm both wheel and sdist are visible in the stable simple index
- switch MandelStudio to stable-first
- run Jenkins build and deploy
- verify installed version is still
0.2.12 - recheck editor validation for:
/contact//diensten/#demo- absolute URLs