Skip to content

bugshot-bug-tracking/BugShot-API

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Have you ever used BugHerd, Jam.dev or another bug tracker? We have built just such a tool with BugShot. At first we wanted to market it, but completely underestimated the marketing and sales effort involved. Now we had two options: to sell the software or to make the project open source. As we have already benefited so much from open source, this was our opportunity to give a lot back. Voila, here is a tool that was created in many thousands of hours of programming. There is also a Windows tool and an iOS app as well as a Zappier interface. The Jira interface is already integrated in the API code. The API documentation will follow shortly. We would be very pleased to have collaborators on the project ... perhaps the largest open source bug tracking tool will be created here. Our role model was BugHerd and I think we've already done a pretty good job. Especially since, as far as I know, we are the only tool that offers a browser extension for almost all browsers .... Have fun with it.

BugShot API

How to install

0. Prerequisites

  1. PHP 8+ and extensions for it

     sudo apt install php libapache2-mod-php php-mbstring php-xmlrpc php-soap php-gd php-xml php-cli php-zip php-bcmath php-tokenizer php-json php-pear php-mysql php-curl
    
  2. Composer

    Good install instructions for Ubuntu: link.

1. Config .env

  • Make a copy in the same place of .env.example with the name .env
  • Run "php artisan generate:key" in the CLI, this will generate a key for the app in the .env file
  • Modify the APP_(*_)URL with the correct links so that the frontend and other services can connect to the app
  • Set up the database and other services credentials

2. Install composer pacakges

  • Run "composer install" if composer is installed globaly

3. Database

  • Do a "php artisan migrations".

    If the command does not work and says something on the lines of "could not find driver..." make sure there is a php driver installed on the machine like php_mysql for a mysql database of the equivalent for waht database is necessary.

      install command example:
      sudo apt install php-mysql
    
  • Run the seeders "php artisan db:seed"

  • Run "php artisan usersettings:fresh" to make sure all the user settings that need to be set are set at the start (some users have been added using seeders, if there are no users added this way you can skip this step).

4. Misc

  • "php artisan storage:link" to make the apropriate links for storage

How to restart BugShot worker in case it crashes

The BugShot workers are managed by Supervisor and their lifespan are set to 1 hour, after that they stop and will be automatically started again by Supervisor. The config is found in the root api directory on the XX Server in supervisor.conf; the config for a specific worker can be found under [program:*worker name*].

1. Connect to the server using ssh

Hostname, Username and Password found in the BugShot KeePass -> Aplikation -> SSH

2. Navigate to the api directory

cd api

Normally you only need to provide the relative path and you should arrive at /www/htdocs/xx/api or something very similar.

3. Check Supervisor

  • first check that supervisor.conf is present in the current directory (ls -l)
  • run supervisorctl status to get the status of workers. Example output:
ssh-xx@dd52600:/www/htdocs/xx/api$ supervisorctl status
api-dev-worker:api-dev-worker_00           RUNNING   pid 3325937, uptime 0:03:20
api-live-worker:api-live-worker_00         RUNNING   pid 3227694, uptime 0:21:23
api-live-worker:api-live-worker_01         RUNNING   pid 3227830, uptime 0:21:22
api-staging-worker:api-staging-worker_00   RUNNING   pid 3227695, uptime 0:21:23
ssh-xx@dd52600:/www/htdocs/xx/api$
  • in case the output is something like this:
ssh-xx@dd52600:/www/htdocs/xx/api$ supervisorctl status
unix:///tmp/supervisor.sock no such file
ssh-xx@dd52600:/www/htdocs/xx/api$

you need to run supervisord and after run the supervisorctl status to check if the service service and workers started

  • if the output of the supervisorctl status is empty try to run supervisorctl restart

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages