2amigos / yiinitializr

Library that will help boost your application installation with ease and also to run Yii applications from its bootstrap files on a much cleaner way that the framework currently proposes.
Other
44 stars 17 forks source link

Yiinitializr 2.0 #15

Open tonydspaniard opened 11 years ago

tonydspaniard commented 11 years ago

Due to the success of Yiinitializr in the community, we are planning to make some changes on the Yiinitialzr site:

Please, use this section to shoot ideas, improvements... any help would be highly appreciated!

rvbhute commented 11 years ago
  1. A non-template composer.json that downloads just the Yii framework and requested packages and sets up the autoloader and yiic for generating web-apps as per our custom needs?
  2. Composer driven autoloader for using packages with a default Yii 1.1 generated web-app.
tonydspaniard commented 11 years ago

@rvbhute

  1. For that I guess we will have to create something like YiiBoilerplate? Do you think is a good idea not to work with composer.json as Yii2 is about to work heavily with it?
rvbhute commented 11 years ago

No, definitely composer is the correct way! But I am very confused. I did not expect a tightly coupled framework-application directory structure. I expected more of a "composer dropping packages into app/vendor and adding an auto-loader" sort of thing.

I am confused between composer managing dependencies per app and composer managing everything from framework down to the app. Plus YiiInitializr does a lot of magic! I think I will experiment with composer more first before diving into YiiInitializr.

Regards.

luislobo commented 11 years ago

Just a couple of ideas:

#!/bin/bash
oIFS=$IFS
IFS=$'\n'
WEBUSER=$USER
WEBSERVERGROUP=www-data
echo Assigning owner to User: $WEBUSER - Group: $WEBSERVERGROUP
sudo chown -R $WEBUSER:$WEBSERVERGROUP .;
echo Changing directory permissions...;
sudo find ./ -type d -exec chmod 770 {} \;
echo Changing file permissions...;
sudo find ./ -type f -exec chmod 640 {} \;
echo Changing executable permissions...;
sudo find ./ -iname "*.sh" -type f -exec chmod u+x {} \;
sudo find ./ -iname "yiic" -type f -exec chmod u+x {} \;
sudo find ./ -iname "build" -type f -exec chmod u+x {} \;
echo Adding permissions to Runtime and Assets folders
sudo find . -iname "assets" -type d -exec chmod 770 {} \;
sudo find . -iname "runtime" -type d -exec chmod 770 {} \;
echo Adding permissions to Runtime, Assets and Usermedia files
sudo find ./backend/www ./frontend/www -iname 'assets' -type d | while read -r i; do
        find "$i" -type f -exec chmod 770 {} \;
done
sudo find ./backend ./frontend -iname 'runtime' -type d | while read -r i; do
        find "$i" -type f -exec chmod 770 {} \;
done
echo Adding permission to .htaccess
sudo find . -iname '.htaccess' -type f -exec chmod 640 {} \;
IFS=$oIFS
circulon commented 10 years ago

non interactive deployment ie using Capistrano 3.x Currently I have modified the Yiinitializr callback to check for an ENV var set by capistrano and so interaction is not required and multiple deployment scenarios work perfectly.

Keep up the good work! Yiinitializr and Yii in general are now my first stop for building apps.