Files
streamline-emr/docker/_streamline-src/README.md
T

48 lines
2.4 KiB
Markdown
Executable File

# Stre@mline #
This is the official repository for [Stre@mline](http://streamlinehealth.org/).
### How do I get set up? ###
* **Summary of set up**
* This [laravel](https://laravel.com/) application requires PHP 8+ and Composer for dependency management.
* Visit [laravel documentation](https://laravel.com/docs/5.5) for updated laravel docs.
* Install [Composer](https://getcomposer.org/download/).
* Install the LAMP stack.
* **Configuration**
* Run `git clone <this repository>` and `cd` into its root directory.
* **Dependencies**
* Run `composer install` to update the dependencies.
* **Database configuration**
* Create the '.env' file (which is a copy of '.env.example') i.e. `cp .env.example .env`
* Set the database details (database, username, password)
* Run `php artisan key:generate` to generate a unique key for the application.
* Be sure to create the database; the tables and initial data will be auto-created by the next command.
* Run `php artisan migrate --seed`
* Run `php artisan serve` to use the application on a local server. You will see a url in the command results.
* You can preferably run the application as you would a website on your operating system of choice.
* **How to run tests**
* Locally, you can set up a .env.testing for doing tests if you want.
* Run `phpunit` to run all tests in the application.
* Run `phpunit tests/feature/ExampleTest.php` To test the file 'ExampleTest.php'.
* Remotely, visit [pipelines]() to run all tests in the application.
### Managing Submodules ###
* After pulling:
* Run `git config user.name` and `git config user.password` to set credentials and avoid being bothered with password requests
* Then run `git submodule update --init --recursive` to initialize the modules
* Then run `git submodule foreach --recursive git checkout main` to reset each submodule to main
* And finally `git submodule foreach --recursive git pull` to update the branch. You can use the two commands whenever you checkout to another branch
* If you make any changes within the Modules folder, commit to each repo affected and then commit to the container repo
* For more references, use the links below
* [Initial Commit](https://initialcommit.com/blog/git-submodule)
* [Github](https://gist.github.com/gitaarik/8735255)
* [Bitbucket](https://www.atlassian.com/git/tutorials/git-submodule)