Сервисы для Point.im https://point.skobk.in/
Find a file
2019-02-28 03:46:32 +03:00
app Comment DB unique constraint (post_id, number). New migration. 2019-02-28 02:44:51 +03:00
src DTO\Api\Post phpDoc cleaning. 2019-02-28 03:46:32 +03:00
tests/Skobkin/PointToolsBundle UserFactoryTest added 2019-02-15 23:42:31 +03:00
web app/console, web{app,app_dev}.php updated according to new symfony-standard distribution. 2019-01-19 02:34:51 +03:00
.gitignore Ignore .idea directory 2015-03-29 17:35:44 +03:00
composer.json #44 composer require leezy/pheanstalk-bundle (bundle configuration as well). 2019-02-23 20:49:48 +03:00
composer.lock #44 composer require leezy/pheanstalk-bundle (bundle configuration as well). 2019-02-23 20:49:48 +03:00
LICENSE Add LICENSE 2015-03-27 23:13:42 +03:00
phpunit.xml.dist Disabling debug class loader in test environment to hide deprecation warnings. 2019-02-16 00:55:43 +03:00
README.md crontab added for future deployment integration. 2017-01-18 04:34:24 +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

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/