Сервисы для Point.im https://point.skobk.in/
Find a file
2017-01-13 02:18:57 +03:00
app Monolog log rotation for dev environment reconfigured. 2017-01-11 21:42:29 +03:00
src New PHP 7.1 type hints for service exceptions. 2017-01-13 02:18:57 +03:00
tests/Skobkin/PointToolsBundle Tests for nullable User#getName(). 2017-01-12 21:49:38 +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
composer.json Tests moved to new directory (/tests). 2017-01-09 22:08:01 +03:00
composer.lock composer update. twig/twig, symfony/symfony, doctrine/common, symfony/monolog-bundle, sensio/distribution-bundle, sensio/framework-extra-bundle, doctrine/dbal, ocramius/proxy-manager updated. 2017-01-13 01:07:17 +03:00
LICENSE Add LICENSE 2015-03-27 23:13:42 +03:00
phpunit.xml.dist DataFixtures excluded from tests. 2017-01-09 23:14:34 +03:00
README.md Two more badges to the God of Badges. 2017-01-11 05:22:34 +03:00

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

Setting Telegram webhook (to enable bot)

php app/console telegram:webhook set your-domain.tld

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

Load fixtures (if needed)

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

Run tests

phpunit -c app/