FORGEBOX Enterprise 🚀 - Take your ColdFusion (CFML) Development to Modern Times! Learn More...

AutoDeploy

v1.6.0+41 Modules

Build Status

WELCOME TO THE AUTODEPLOY MODULE

This module checks a tag file for timestamp modifications and if detected it will then continue to stop the ColdFusion application via applicationStop(). It can also be optionally configured to execute a deploy command object when the timestamp check is detected.

LICENSE

Apache License, Version 2.0.

SYSTEM REQUIREMENTS

  • Lucee 4.5+
  • ColdBox 4+

INSTRUCTIONS

Just drop into your modules folder or use CommandBox to install

box install autodeploy

Settings

You can add configuration settings to your ColdBox.cfc under a structure called autodeploy:

autodeploy = {
    // The tag file location, realtive or absolute from the root of your application.
    "tagFile" : "config/_deploy.tag",
    // The model to use for running deployment commands. Must be a valid WireBox mapping
    "deployCommandObject" :  "",
    // A URL to redirect to when a deploy is detected. Default is none, in which case no redirect will occur (request will complete normally and app will reinit on next request).
    "relocateOnDeploy" :  ""
};

Deploy Tag

The deploy tag: _deploy.tag must be in the root's config folder of your application. The module ships with a config folder. You must copy the contents to your application's root config folder.

Update Deploy Tag

CommandBox

We include a recipe for you to update the deploy tag: config/deploy.boxr. Just run the recipe using CommandBox: box recipe deploy.boxr

ANT

To update the timestamp in the deploy tag, run the config/deploy.xml file in Ant within the module or touch the file with a new timestamp.

Manually (Other)

Just change the contents of the file or touch its timestamp.

Deploy Command Object

You can optionally create and register a deploy command object via WireBox. This command object must implement one method:

function execute(){}

Which will be executed upon a new timestamp change for you before stopping the application and restarting it.


Copyright Since 2005 ColdBox Framework by Luis Majano and Ortus Solutions, Corp www.ortussolutions.com


HONOR GOES TO GOD ABOVE ALL

Because of His grace, this project exists. If you don't like this, then don't read it, its not for you.

"Therefore being justified by faith, we have peace with God through our Lord Jesus Christ: By whom also we have access by faith into this grace wherein we stand, and rejoice in hope of the glory of God. And not only so, but we glory in tribulations also: knowing that tribulation worketh patience; And patience, experience; and experience, hope: And hope maketh not ashamed; because the love of God is shed abroad in our hearts by the Holy Ghost which is given unto us. ." Romans 5:5

THE DAILY BREAD

"I am the way, and the truth, and the life; no one comes to the Father, but by me (JESUS)" Jn 14:1-12

CHANGELOG

v1.6.0

  • Migration to new module template
  • ACF2018 support
  • Only return true when new deploy is detected to stop execution chain

v1.5.0

  • Updated to use consistent Ortus Module Structure
  • More checks on defaults for configuration
  • Updated to use getFileInfo instead of java core

v1.4.0

  • Relocation fix due to chrome caching.
  • New setting relocateOnDeploy that can relocate the user once the application stop has fired

v1.3.0

  • Travis updates
  • Recipe updated with git commits if enabled.
  • creation of tag automatically if not existent.

v1.2.0

  • Travis Updates
  • Stop interceptor chain to avoid stop application exceptions on not found interceptors

v1.1.0

  • Updated instructions
  • Updated location of deploy and sample deploy tag
  • Added a CommandBox recipe for tagging the deploy tag: box recipe deploy.boxr
  • Added tests and travis integration

v1.0.0

  • Create first module version

$ box install autodeploy

No collaborators yet.
   
  • {{ getFullDate("2015-01-16T20:34:04Z") }}
  • {{ getFullDate("2018-09-10T15:52:49Z") }}
  • 4,855
  • 19,252