User Tools

Site Tools


usimpleup

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
usimpleup [2011/02/04 09:50]
unirgy
usimpleup [2011/02/04 17:29] (current)
unirgy
Line 1: Line 1:
 +====== uSimpleUp ======
 +
 +===== What is it? =====
 +
 +uSimpleUp is made to help Magento store owners stay updated with latest versions of free and commercial extensions.
 +
 +It works with extensions distributed as a straight ZIP file, with a permanent download URL.
 +
 +Originally it was created to facilitate upgrades of Unirgy extensions, but I didn't see reasons not to share it with community, if anyone else wants to use it.
 +
 +===== Why another extensions manager? ======
 +
 +As a commercial extensions developer, I had to come up with my own method of licensing, distributing and upgrading extensions, because MagentoConnect did not provide these facilities at the time.
 +
 +The easiest way proved to be creating permanent download links in this format:
 +
 +http://download.unirgy.com/gn2684yrn46bnwuy26dsdn19s/Unirgy_Dropship.zip (Sample link is not active)
 +
 +And instructing clients to download the archive and unpack it in Magento root folder, whether for initial installation or future upgrades.
 +
 +Because MagentoConnect did not have infrastructure for commercial extensions distribution, and help with manual upgrades started to eat up too much of my time, I've decided to automate the process as much as possible.
 +
 +Even though the main purpose for the creation of uSimpleUp was handling commercial extensions, it works just as well for free extensions.
 +
 +Also, until Magento 1.5, MagentoConnect Manager did not have option to update files via local FTP, which created serious permission problems.
 +
 +===== How do I get it? =====
 +
 +Download the archive from this link and unpack into Magento root folder:
 +http://download.unirgy.com/Unirgy_SimpleUp-latest.zip
 +
 +Disable or refresh cache as needed, and re-login to admin to refresh permissions.
 +The menu entry is under **System > Tools > Simple Upgrades**
 +
 +uSimpleUp will handle its own upgrades from now on.
 +
 +==== Requirements ====
 +
 +You need to have PHP compiled with or have these extensions installed:
 +
 +  * http://us.php.net/manual/en/book.ftp.php
 +  * http://us.php.net/manual/en/book.zip.php
 +
 +===== How does it work? =====
 +
 +==== Configuration ====
 +{{:usimpleup:usimpleup-config.png|Configuration}}
 +
 +First you need to choose whether you'd like to use FTP to update your Magento files, or just use regular local file updates.
 +
 +The usual issue with local file updates is that standard linux file permissions do not allow Magento files to be writable for both the user (through ftp) and webservice (apache). To make it work, you'd need to create a linux group that includes both user and apache, or make the files world writable. Both solutions are usually not considered acceptable.
 +
 +If you use FTP, the permissions issue just goes away, because you use the same user as usual to update the files.
 +
 +==== Security considerations ====
 +
 +**Magento is extremely flexible framework, which means ANY FUNCTIONALITY CAN BE REPLACED OR OVERRIDDEN.**
 +**Which means if you have a rogue extension, it can replace download links, fetch any login or password information stored in Magento DB, etc.**
 +**I can not stress enough the need to be in constant vigilance when installing any extension**
 +
 +==== Installation of new extensions ====
 +
 +{{:usimpleup:usimpleup.png|Managing}}
 +
 +To register new extensions with uSimpleUp, you'll need to paste the extension download URL, or up to 6 URLs to be installed at the same time,
 +enter FTP password if required, and click "Download and Install" button.
 +
 +Even if you have the extensions already installed in Magento, they will not be recognized until downloaded using uSimpleUp.
 +
 +==== Upgrading installed extensions ====
 +
 +After installation, the extensions will appear in the grid, with some information about their current and last checked versions.
 +
 +To refresh current version information, click "Check for version updates" button on top of the page. The current versions will appear in different colors depending on their status relatively to latest available versions.
 +
 +**It is extremely important to check the download links in the grid every time before upgrade, as it is very easy to change them through another extension, and virtually impossible to prevent this issue.**
 +
 +You can check the changelog for the latest version of the extension to help you decide whether the upgrade worth it.
 +
 +Select extensions you'd like to upgrade or reinstall, enter FTP password if required, choose "Upgrade" in mass-action dropdown and click "Submit".
 +
 +===== Roadmap ======
 +  * Automatic checking for new versions and notifications under navigation bar
 +  * Managing dependencies
 +  * Handling versions for different stabilities (alpha, beta, stable)
 +  * Support for uninstallations
 +
 +===== Can I use uSimpleUp for extensions that I distribute? =====
 +
 +Yes, if you can distribute extensions as straight ZIP file, with permanent download link for upgrades, you can direct your clients to download the manager and paste your download links in the Install section.
 +
 +uSimpleUp is not limited to Unirgy extensions.
 +
 +==== Preparing extensions for uSimpleUp ====
 +
 +In your extension's ''etc/config.xml'' add:
 +
 +<file xml etc/config.xml>
 +<?xml version="1.0"?>
 +<config>
 +  <modules>
 +    <Your_ExtensionName>
 +      <version>1.0.0</version>
 +<!-- ADD THIS (changelog is optional) -->
 +      <usimpleup remote="http://yourserver.com/version-updates.xml"
 +              changelog="http://yourserver.com/your-extension/changelog.txt"/>
 +<!-- UNTIL HERE -->
 +    </Your_ExtensionName>
 +  </modules>
 +...
 +</file>
 +
 +And on your server keep either static or programmatically generated .xml file containing latest version information in this format:
 +
 +<file xml version_updates.xml>
 +<?xml version="1.0"?>
 +<meta>
 +  <Your_ExtensionName>
 +    <version><latest>1.0.1</latest></version>
 +  </Your_ExtensionName>
 +  <Your_AnotherExtension>
 +    <version><latest>1.5.2</latest></version>
 +  </Your_AnotherExtension>
 +</meta>
 +</file>
 +
 +Notes:
 +  * The same remote versions file can serve multiple extensions
 +  * The same download URL can be used to install multiple extensions
 +
 +====== CHANGELOG ======
 +
 +===== 0.5.0 =====
 +  * Initial release
  
usimpleup.1296813002.txt.bz2 · by unirgy