Changes to the Pipi System (sys) data model

Mike's Notes

Today's job is to write the configuration files for each Pipi Nest.

A big thanks is owed to Ben Nadel for the sample code shared on his CFML blog that explained ways to do this.

Resources

References

  • Reference

Repository

  • Home > Ajabbi Research > Library >
  • Home > Handbook > 

Last Updated

12/04/2026

Changes to the Pipi System (sys) data model

By: Mike Peters
On a Sandy Beach: 12/04/2026

Mike is the inventor and architect of Pipi and the founder of Ajabbi.

Changes this week to how Pipi is organised in the data centre, with more to come as this progresses. This should only need to be done once. Because the code tests were successful, most of the time will be spent documenting everything.

Pipi Nest

The fundamental organising principle is to use a uniquely named directory, now named as a "Pipi Nest", to host Pipi.

Every nest has these properties;

  • One Pipi major version
  • One Pipi Edition
  • One account type
  • Can host
    • One or more accounts
    • OR
    • One codebase.
      • with one or more pipi instances.

Account

Every customer or user has an account, which is opened when they sign up.

A customer account has these properties;

  • One account type.
  • Contains one or more deployments.

Pipi Instance

Each Pipi instance has these properties;
  • One account name, e.g., "pipiupdate123".
  • Shares a codebase, e.g., "loki".

Deployment

A deployment has these properties;

  • One deployment tenancy type.
  • One language.
  • Contains one or more deployment objects.
  • Can contain other deployments to create global settings for an account (Enterprise or DevOps).

Revised Hierarchy

  • Pipi Nest > Account > Deployment > Deployment Object > Publication > Website > Workspace.
  • Pipi Nest > Codebase > Pipi Instance.

Configuration files

Pipi uses a hierarchy of CFML configuration files to set system properties.

<pipi nest>/
  • pipi/
    • Application.cfc [1]
    • <name>/
      • Application.cfc [2]
      • pip/
        • Application.cfc [3]

Configuration notes

  1. Pipi Nest: Defines
    • OS
    • Java environment
    • Physical location
  2. Name: Defines
    • Account
    • Deployments
    • Pipi Instances
  3. Pip: Defines
    • Codebase

No comments:

Post a Comment