From 61a021a728e3dfa7b452b1884188780e6dcae01e Mon Sep 17 00:00:00 2001 From: Victor Häggqvist Date: Sun, 22 Jun 2014 13:40:55 +0200 Subject: init --- _build/build.config.php | 18 +++++++ _build/build.transport.php | 106 +++++++++++++++++++++++++++++++++++++ _build/data/transport.snippets.php | 23 ++++++++ 3 files changed, 147 insertions(+) create mode 100644 _build/build.config.php create mode 100644 _build/build.transport.php create mode 100644 _build/data/transport.snippets.php (limited to '_build') diff --git a/_build/build.config.php b/_build/build.config.php new file mode 100644 index 0000000..45b3cef --- /dev/null +++ b/_build/build.config.php @@ -0,0 +1,18 @@ + + * @copyright Copyright 2014, Victor Häggqvist + * @package parsedown + * @subpackage build + */ +$tstart = explode(' ', microtime()); +$tstart = $tstart[1] + $tstart[0]; +set_time_limit(0); + +/* define package names */ +define('PKG_NAME','Parsedown'); +define('PKG_NAME_LOWER','parsedown'); +define('PKG_VERSION','0.1.0'); +define('PKG_RELEASE','beta'); + +/* define build paths */ +$root = dirname(dirname(__FILE__)).'/'; +$sources = array( + 'root' => $root, + 'build' => $root . '_build/', + 'data' => $root . '_build/data/', + //'resolvers' => $root . '_build/resolvers/', + 'elements' => $root.'core/components/'.PKG_NAME_LOWER.'/elements/', + + 'source_core' => $root.'core/components/'.PKG_NAME_LOWER, + 'docs' => $root.'core/components/'.PKG_NAME_LOWER.'/docs/', + // 'lexicon' => $root . 'core/components/'.PKG_NAME_LOWER.'/lexicon/', +); +unset($root); + +/* override with your own defines here (see build.config.sample.php) */ +require_once $sources['build'] . 'build.config.php'; +require_once MODX_CORE_PATH . 'model/modx/modx.class.php'; + +$modx= new modX(); +$modx->initialize('mgr'); +$modx->setLogLevel(modX::LOG_LEVEL_INFO); +$modx->setLogTarget('ECHO'); + +$modx->loadClass('transport.modPackageBuilder','',false, true); +$builder = new modPackageBuilder($modx); +$builder->createPackage(PKG_NAME_LOWER,PKG_VERSION,PKG_RELEASE); +$builder->registerNamespace(PKG_NAME_LOWER,false,true,'{core_path}components/'.PKG_NAME_LOWER.'/'); + +/* create category */ +$category= $modx->newObject('modCategory'); +$category->set('id',1); +$category->set('category',PKG_NAME); + +/* add snippets */ +$modx->log(modX::LOG_LEVEL_INFO,'Packaging in snippets...'); +$snippets = include $sources['data'].'transport.snippets.php'; +if (empty($snippets)) $modx->log(modX::LOG_LEVEL_ERROR,'Could not package in snippets.'); +$category->addMany($snippets); + + +/* create category vehicle */ +$attr = array( + xPDOTransport::UNIQUE_KEY => 'category', + xPDOTransport::PRESERVE_KEYS => false, + xPDOTransport::UPDATE_OBJECT => true, + xPDOTransport::RELATED_OBJECTS => true, + xPDOTransport::RELATED_OBJECT_ATTRIBUTES => array ( + 'Snippets' => array( + xPDOTransport::PRESERVE_KEYS => false, + xPDOTransport::UPDATE_OBJECT => true, + xPDOTransport::UNIQUE_KEY => 'name', + ), + ), +); +$vehicle = $builder->createVehicle($category,$attr); + +$modx->log(modX::LOG_LEVEL_INFO,'Adding file resolvers to category...'); + +$vehicle->resolve('file',array( + 'source' => $sources['source_core'], + 'target' => "return MODX_CORE_PATH . 'components/';", +)); +$builder->putVehicle($vehicle); + + + +/* now pack in the license file, readme and setup options */ +$modx->log(modX::LOG_LEVEL_INFO,'Adding package attributes and setup options...'); +$builder->setPackageAttributes(array( + 'license' => file_get_contents($sources['docs'] . 'license.txt'), + 'readme' => file_get_contents($sources['docs'] . 'readme.txt'), + 'changelog' => file_get_contents($sources['docs'] . 'changelog.txt'), + /*'setup-options' => array( + 'source' => $sources['build'].'setup.options.php', + ),*/ +)); + +/* zip up package */ +$modx->log(modX::LOG_LEVEL_INFO,'Packing up transport package zip...'); +$builder->pack(); + +$tend= explode(" ", microtime()); +$tend= $tend[1] + $tend[0]; +$totalTime= sprintf("%2.4f s",($tend - $tstart)); +$modx->log(modX::LOG_LEVEL_INFO,"\nPackage Built.\nExecution time: {$totalTime}\n"); +exit (); diff --git a/_build/data/transport.snippets.php b/_build/data/transport.snippets.php new file mode 100644 index 0000000..b9548d6 --- /dev/null +++ b/_build/data/transport.snippets.php @@ -0,0 +1,23 @@ +'),'',$o)); + return $o; +} + +$snippets = array(); + +$snippets[1] = $modx->newObject('modSnippet'); +$snippets[1]->fromArray(array( + 'id' => 1, + 'name' => 'Parsedown', + 'description' => 'A markdown parser with GFM support', + 'snippet' => getSnippetContent($sources['elements'].'snippets/snippet.parsedown.php'), +),'',true,true); + +return $snippets; + -- cgit v1.2.3