point-tools/old
Alexey Skobkin 9747eefe47
Replacing jms/serializer with symfony/serializer and doing some DTO refactoring.
2023-08-19 03:32:43 +03:00
..
app Ported templates and routes. Saved external JS/CSS into the public dir. 2023-04-10 00:35:58 +03:00
src/PointToolsBundle/Service/Markdown Replacing jms/serializer with symfony/serializer and doing some DTO refactoring. 2023-08-19 03:32:43 +03:00
tests/Skobkin/PointToolsBundle Replacing jms/serializer with symfony/serializer and doing some DTO refactoring. 2023-08-19 03:32:43 +03:00
README.md Preliminary changes in README.md: Codeship, CodeCov, Total Downloads badges removed. 2023-03-28 23:52:49 +03:00
phpunit.xml.dist Moving important old files to backup directory. Creating new project from scratch. 2023-03-11 19:28:46 +03:00

README.md

Build Status Scrutinizer Code Quality 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/