Сервисы для Point.im https://point.skobk.in/
Go to file
Alexey Skobkin 845097f7ea crontab added for future deployment integration. 2017-01-18 04:34:24 +03:00
app crontab added for future deployment integration. 2017-01-18 04:34:24 +03:00
src RestoreRemovedUsersCommand added. 2017-01-18 04:06:55 +03:00
tests/Skobkin/PointToolsBundle Revert: Revert: User removal support. 2017-01-18 00:58:53 +03:00
web public resources from SkobkinPointToolsBundle moved to web directory. 2017-01-10 03:11:53 +03:00
.gitignore Ignore .idea directory 2015-03-29 17:35:44 +03:00
LICENSE Add LICENSE 2015-03-27 23:13:42 +03:00
README.md crontab added for future deployment integration. 2017-01-18 04:34:24 +03:00
composer.json composer require unreal4u/monolog-telegram. Telegram Monolog handler added. 2017-01-14 01:47:46 +03:00
composer.lock composer require unreal4u/monolog-telegram. Telegram Monolog handler added. 2017-01-14 01:47:46 +03:00
phpunit.xml.dist DataFixtures excluded from tests. 2017-01-09 23:14:34 +03:00

README.md

Codeship Status for skobkin/point-tools Scrutinizer Code Quality codecov Total Downloads License

Point Tools

Point Tools is a service which provides additional features for Point.im microblog users.

Installation

Application setup is quite simple:

Getting the source code

Via Git

git clone https://skobkin@bitbucket.org/skobkin/point-tools.git
cd point-tools

Via Composer

composer create-project skobkin/point-tools -s dev
cd point-tools

Setting file access privileges

Set up appropriate write privileges for app/cache and app/logs.

Installing dependencies (not needed after installation via Composer)

# In developer environment:
composer install
# In production environment
composer install --no-dev --optimize-autoloader

After dependencies installation you will be asked for database credentials of PostgreSQL database and some other application parameters.

Database initialization

php app/console doctrine:migrations:migrate

Web assets installation

php app/console assets:install web --symlink

Adding CRON jobs

crontab -e

You can use following jobs as an example:

# point.skobk.in
*/10 * * * * /usr/bin/php /path/to/point-tools/app/console point:update:subscriptions --env=prod
0 0 * * * /usr/bin/php /path/to/point-tools/app/console point:update:subscriptions --all-users --env=prod

See app/crontab for more advanced usage.

Setting Telegram webhook (to enable bot)

php app/console telegram:webhook set

Removing Telegram webhook

php app/console telegram:webhook delete

Running tests

Configure environment variables

export SYMFONY__TEST_DATABASE_USER=some_database_user
export SYMFONY__TEST_DATABASE_PASSWORD=some_database_password
export SYMFONY__TEST_DATABASE_NAME=some_database_name
export SYMFONY__TEST_DATABASE_PORT=postgresql_port
export SYMFONY_ENV=test

Load fixtures (if needed)

php app/console doctrine:fixtures:load --no-interaction

Run tests

phpunit -c app/