Mike's Notes
The experiments continue, with progress slow but steady, and with a lot of new stuff learned.
Ongoing test results at the end. This one seems to be working without error.
😎😎😎😎
Update 19/04/2026
- Nest /9cc/ passed all critical tests
- The next job is to add the System Engine (sys) to nest /9cc/ and test it.
- Then add a Nest Engine (nst) inside the System Engine (sys) to enable Pipi to build, configure, and repair nests on demand, so that Pipi can then deploy itself to production and also create archives of itself.
Resources
- https://www.blog.ajabbi.com/2026/04/pipi-nest.html
- https://www.blog.ajabbi.com/2026/04/pipi-naming-pattern.html
- https://www.blog.ajabbi.com/2026/04/pipi-core-directory-structure.html
- https://www.blog.ajabbi.com/2025/08/enterprise-plan-directory-structure.html
- https://helpx.adobe.com/coldfusion/kb/purpose-location-xml-configuration-files.html
- https://docs.lucee.org/guides/installing-lucee/installation-linux/installing-in-unattended-mode.html
- https://www.tutorialspoint.com/java/lang/system_getproperties.htm
References
- Reference
Repository
- Home > Ajabbi Research > Library >
- Home > Handbook >
Last Updated
23/04/2026
Pipi Nest update - what I learned this week
Mike is the inventor and architect of Pipi and the founder of Ajabbi.
Problem
Last week, I created Pipi Nest, a container that uses a standard root directory convention for hosting Pipi.
- The problem I discovered was that a standard deployment was not working across multiple CFML Engine environments on various operating systems.
- Adobe ColdFusion Server 11+
- Lucee
- BoxLang
- Pipi (robot version) is required to manipulate enterprise applications.
- Mission Control requires a website
- Some of the configuration files were outside the webroot.
- Application.cfc (1), (2)
Solution
- Install side by side in <pipi nest>/pipi/
- <user account>/ (none, one, or many)
- <pipi instance-n>/ (one or many)
- <pipi nest>/pipi/<pipi instance>/www/
- mission-control/
- Create CFML server mappings where a Pipi Instance is the only user.
- data/
- pipi/
- work/
Database support
Adobe ColdFusion, Lucee, and BoxLang are all built on the Java Virtual Machine (JVM). This means they can technically connect to any relational database that provides a JDBC (Java Database Connectivity) driver
Pipi Core example (Windows)
/9cc/ (Pipi Nest)
- pipi_nest_probe.cfm
- data/
- pipi_data.cfm
- couchbase/
- db2/
- derby/
- h2/
- hsqldb/
- informix/
- mariadb/
- msaccess/
- 32/
- 64/
- mssql/
- mysql/
- oracle/
- pg/
- 18/
- sqllite/
- sybase/
- virtuoso/
- pipi/
- Application.cfc (1) - Nest settings
- pipi_nest.cfm
- loki-01/ (instance)
- ...
- loki-02/ (instance)
- Application.cfc (2) - Account settings
- pipi_account.cfm
- pip/
- Application.cfc (3) - Version settings
- pipi_version.cfm
- i18n/
- log/
- pipi_<pipi version>.txt
- sys/
- Application.cfc (4) - System settings
- pipi_system.cfm
- temp/
- template/
- _include/
- _layout/
- _log/
- www/
- mission-control/
- Application.cfc (4) - Website settings
- work/
- pipi_work.cfm
- backup/
- install/
- project/
Pipi Enterprise example (Windows)
/9ae/ (Pipi Nest)
- pipi_nest_probe.cfm
- data/
- pipi_data.cfm
- couchbase/
- db2/
- derby/
- h2/
- hsqldb/
- informix/
- mariadb/
- msaccess/
- 32/
- 64/
- mssql/
- mysql/
- oracle/
- pg/
- 18/
- sqllite/
- sybase/
- virtuoso/
- pipi/
- Application.cfc (1) - Nest settings
- pipi_nest.cfm
- ajabbi/ (Account Name)
- Application.cfc (2) - Account settings
- pipi_account.cfm
- com/
- dat/
- lib/
- log/
- plu/
- tmp/
- www/
- learn.ajabbi.com/
- Application.cfc (4) - Website settings
- wiki.ajabbi.com/
- Application.cfc (4) - Website settings
- dis-01/ (Instance)
- ...
- dis-04/ (Instance)
- Application.cfc (2) - Account settings
- pipi_account.cfm
- pip/
- Application.cfc (3) - Version settings
- pipi_version.,cfm
- i18n/
- log/
- pipi_<pipi version>.txt
- sys/
- Application.cfc (4) - System settings
- pipi_system.,cfm
- temp/
- template/
- _include/
- _layout/
- _log/
- www/
- mission-control/
- Application.cfc (4) - Website settings
- work/
- pipi_work.cfm
- backup/
- pipi_9ae_ajabbi_pip_www_learn.ajabbi.com_20260411.zip
- install/
- project/
Automated installs
- Adobe ColdFusion Server 11+: Many XML files store the server configuration. Any pipi instance doing Pipi Nest installs could rewrite these XML files.
- Lucee: Yet to discover
- BoxLang: Yet to discover
Production obfuscation
Pipi will obfuscate these names using UUIDs and other dastardly methods on public-facing production websites. But the names are very useful for UI labels and visualisation.
DevOps log (edit)
A record of work done.
| NZ DateTime | Action | Object | Status |
|---|---|---|---|
| 2026-04-15 14:15 | Edit | server.xml Mappings | Success |
| 2026-04-15 14:20 | Create | Mapping Docs | Complete |
| 2026-04-15 14:26 | Rename | Named instances | Success |
| 2026-04-15 14:48 | Create | Mission Control | Success |
| 2026-04-15 17:24 | Test | Application.cfc (1) - Pipi Nest settings | Success |
| 2026-04-15 17:40 | Test | pipi_nest.cfm | Success |
| 2026-04-16 13:22 | Test | pipi_account.cfm | Success |
| 2026-04-16 13:54 | Test |
Application.cfc (2) - Pipi Account settings |
Success |
| 2026-04-16 15:09 | Test | Application.cfc (3) - Version settings | Success |
| 2026-04-16 15:40 | Test | pipi_version.cfm | Success |
| 2026-04-16 16:02 | Test | Application.cfc (4) - Pipi Website settings | Success |
| 2026-04-16 16:03 | Test | pipi_website.cfm | Success |
| 2026-04-16 19:09 | Create | Named instance website | Success |
| 2026-04-16 19:44 | Test | pipi_nest_probe.cfm | Success |
| 2026-04-16 20:28 | Test | java.lang.System class - get properties | Success |
| 2026-04-17 11:23 | Test | Add a 32-bit datasource using the CFML Engine CFIDE | Success |
| 2026-04-17 11:56 | Test | Add a 64-bit datasource using the CFML Engine CFIDE | Success |
| 2026-04-17 13:33 | Test |
Add a datasource using Coldfusion Administrator API
|
Success |
| 2026-04-19 18:00 | Demo | 9cc/ live demo to Open Research Group | Success |
No comments:
Post a Comment