angus-dv/pars-news

This project provides a restful API for managing articles on a news site. It allows users to create, read, update, and delete articles efficiently.

1.1.8 2024-11-22 15:27 UTC

This package is auto-updated.

Last update: 2025-02-22 16:01:02 UTC


README

Installation

Step 1: Install via Composer

Run the following command to install the package from Packagist:

composer require angus-dv/pars-news

Docker Setup

Step 2: Add Docker File

Run the installation command for Docker:

php artisan pars-news:install-docker

Step 3: Start Docker Compose

Use the following command to start the Docker containers:

docker compose up -d

Publish Vendor Assets

To publish the vendor assets, execute:

docker exec -it pars_php  php artisan vendor:publish

Migrations and Seeders

To run migrations, seeders, and install Sanctum, use:

docker exec -it pars_php  php artisan robot:install

Queue Management

Step 4: Install Supervisor

To manage queues, install Supervisor with:

sudo apt-get install supervisor

Step 5: Configure Supervisor

Create a Supervisor configuration file at /etc/supervisor/conf.d/laravel-worker.conf with the following content:

[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command= docker exec  pars_php  php  artisan queue:work
autostart=true
autorestart=true
stopasgroup=true
killasgroup=true
user=root
numprocs=4
redirect_stderr=true
stdout_logfile=/var/log/laravel-worker.log
stopwaitsecs=3600

Step 6: Start Supervisor

Run the following commands to update and start Supervisor:

sudo supervisorctl reread
sudo supervisorctl update
sudo supervisorctl start all

Testing

To run tests for the Pars News package, execute:

sudo docker exec -it pars_php  php  artisan test vendor/angus-dv/pars-news/src/Test/Feature

Postman Collection

A Postman collection for testing the API is available here. [ parse-news.postman_collection.json ]