The "Tiki Remote Instance Manager (TRIM)" will go into maintenance mode, and the code will be forked and revamped to become its replacement, now known as the "Tiki Manager".
1. TRIM use cases
Documentation on how to use each TRIM command resides on the TRIM page. This page is to list current and future scenarios with general steps and some tips, and example use cases.
Can be automated. If you are in a branch, to the tip of that branch. If you are in trunk, you get the latest trunk.
Upgrade
from x.x to z.z
Doesn't make sense to automate because after the 1st run, you are already at the target version.
For all updates and upgrades, a maintenance page should be shown (because weird errors can occur when part of the code has been updated)
1.4.1. Update
make backup (to be safe)
make update
1.4.2. Upgrade
make backup (to be safe)
make upgrade
1.4.3. Automated updates
like make update but with email alert of failure
Tip
Makes sense to also set up automated backups
1.5. Cloning
Tip
The difference with a backup: A backup provides you with an archive (.tar.bz2) of your whole instance, whereas a clone is a live usable instance.
1.5.1. Manual cloning
make blank to create an instance to be cloned to
make clone and select from and to
Use cases
Debugging
Moving Tiki to a new server
Keep a working copy before a major upgrade. Why? After the upgrade, it may happen that a user reports an issue, and indicates that current behavior is different than previous behavior. Has their been a regression in the code? A change of configuration? Is the user mistaken? This site will help the process. This site should restricted (ex.: by IP or Basic authentication) because it will not have all the latest security fixes. You can give a subdomain such as 12x.example.org And when it hasn't been used in a long time, delete it.
A fail-over instance that has data which is maximum one day old
If main site crashes and won't come back, then switch the DNS and the fail-over becomes the new production site. Then use other ways to restore the up-to-24 hours of lost data. Ex. from email alerts.
A local copy in the office: Staff can continue to work if server or Internet connection is down. (keeping in mind that any changes will need to be redone on real site later
A demo site: cloned each week from a template (reference) Tiki to show off some features.
If this is a site with well-known passwords, you should add extra protection to this template site (like Apache Basic authentication) so only trusted editors modify it.
1.6. Test update or upgrade
1.6.1. Manual
make blank instance to create an instance for the test upgrade
make clone and select from and to
select the version to update or upgrade to
Use cases
Quality Assurance (QA): Test an update or upgrade in the context of realistic data and configurations so issues can be reported early and handled before the official release of Tiki.
Detect regression bugs
Detect undesired changes
Detect performance issues
Run a manual test plan or an automated test suite
Test new features and thus, become familiar with them, and suggest improvements
Check if a bug has been fixed
If it's important, this indicates to the developers that a backport may be possible
If it can wait until the next upgrade, their is nothing more to do.
Same daily operation as "Automated cloning" but with a lag (ex: one day, one week and one month). Suggested domain names include yesterday.example.org, aweekago.example.org and amonthago.example.org
Use cases:
A user reports an issue, and indicates that current behavior is different than previous behavior. Has their been a regression in the code? A change of configuration? Is the user mistaken?
Someone accidentally deletes a file or a tracker item, or some other operation for which their is no history (the logs indicate the action, but data is gone, so un-revertable): With aweekago.example.org, the user can find the info, and restore him/herself.
Tip: This site should restricted (ex.: by IP or Basic authentication) because it will not have all the latest security fixes.
2.5. Compare Tiki instances
make compare should show a diff of all files in and outside the web directory, and a diff of database