Skip to content

Commit

Permalink
Merge branch 'dev/v3-3-1' into issue/492-empty-tables
Browse files Browse the repository at this point in the history
  • Loading branch information
dmols committed Dec 14, 2022
2 parents aa412c0 + 771a7db commit d0a7eff
Show file tree
Hide file tree
Showing 18 changed files with 929 additions and 865 deletions.
2 changes: 2 additions & 0 deletions .env
Original file line number Diff line number Diff line change
Expand Up @@ -154,6 +154,8 @@ DATE_FORMAT="Y-m-d"
###> base url ###
# Base URL for client callbacks
BASE_URL=""
# Webpack public path
WEBPACK_PUBLIC_PATH="/build"
###> base url ###

###> user name storage ###
Expand Down
2 changes: 2 additions & 0 deletions .env.local.example
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,8 @@ DATABASE_URL=mysql://root:root@db:3306/udoit3
###> base url ###
# Base URL for client callbacks
BASE_URL="http://127.0.0.1:8000/udoit3"
# Webpack public path
WEBPACK_PUBLIC_PATH="/udoit3/build"
###> base url ###

APP_LMS=canvas
8 changes: 4 additions & 4 deletions HEROKU.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
# Heroku Deploy
## Heroku Button
If you wish to install Heroku using the one-click deployment process, please click the purple "Deploy to Heroku" button in the [repository home page](https://github.com/ucfopen/UDOIT/tree/main#installing-udoit-on-heroku).

**Warning:** There is a known issue with hosting UDOIT on Heroku. Courses with large amounts of content can cause UDOIT to scan for longer than Heroku allows, resulting in a failed scan appears to never complete. We do not recommend using Heroku for hosting your production instance of UDOIT at this time. The instructions below are left here for reference.

## Installation Instructions
Installing UDOIT using the Heroku button is very easy, but still requires some setup.
Installing UDOIT on Heroku requires some technical knowledge. We recommend that you have an IT staff member perform the steps below.

### Step 1: Setting up Heroku
Click the Heroku button and follow the instructions below:
Expand Down Expand Up @@ -50,7 +50,7 @@ Install the app following the instructions described in INSTALL_\<LMS\>.md.
### (Optional) Step 4: Clone UDOIT and Push to Heroku
If you make changes to the source code of UDOIT, and you'd like to deploy those changes to your Heroku instance, follow these instructions.

1. Follow the instruction under the ['Source Code' section of INSTALL.md](https://github.com/ucfopen/UDOIT/blob/main/INSTALL.md#source-code).
1. Follow the instructions under the ['Source Code' section of INSTALL.md](https://github.com/ucfopen/UDOIT/blob/main/INSTALL.md#source-code).
2. Install and log in to the [Heroku CLI](https://devcenter.heroku.com/articles/heroku-cli).
3. Next, from within your UDOIT's root folder on your machine, connect your local repository to Heroku:
```
Expand Down
7 changes: 4 additions & 3 deletions INSTALL.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,11 +38,12 @@ cp .env.local.example .env.local
> If you are setting up a development environment, set this to `dev` and follow the steps in [Installing Composer Dependencies](#installing-composer-dependencies) without the `--no-dev` flag to obtain all of the development packages.
3. Add your database information to thie `DATABASE_URL` variable. (The default value of `mysql://root:root@db:3306/udoit3` is suitable for running it on your local computer using Docker.)
4. Modify the `BASE_URL` to match the URL of your instance of UDOIT. (The default value of `http://127.0.0.1:8000/udoit3` is suitable for running it on your local computer using Docker.)
5. Set `APP_LMS` to the name of your LMS.
5. Modify the `WEBPACK_PUBLIC_PATH` to match the `BASE_URL` you set. (The default value of `/udoit3/build` is suitable for running it on your local computer usind Docker. Example: If your `BASE_URL` is set to `http://127.0.0.1:8000`, your `WEBPACK_PUBLIC_PATH` should be `/build`.)
6. Set `APP_LMS` to the name of your LMS.
* `canvas` if you are using the Canvas LMS.
* `d2l` if you are using the D2l Brightspace LMS.
6. (Optional) You can change the default language for your entire UDOIT instance by adding the `DEFAULT_LANG` variable. Currently supported languages are English (`en`) and Spanish (`es`).
7. (Optional) If you are using UDOIT with a self-hosted instance of Canvas, you can add the `JWK_BASE_URL` variable and set it to the URL of your instance of Canvas. (Example: `JWK_BASE_URL="https://canvas.dev.myschool.edu"`)
7. (Optional) You can change the default language for your entire UDOIT instance by adding the `DEFAULT_LANG` variable. Currently supported languages are English (`en`) and Spanish (`es`).
8. (Optional) If you are using UDOIT with a self-hosted instance of Canvas, you can add the `JWK_BASE_URL` variable and set it to the URL of your instance of Canvas. (Example: `JWK_BASE_URL="https://canvas.dev.myschool.edu"`)

## Docker
We provide a fast and simple way of setting up a local UDOIT instance through the use of Docker containers.
Expand Down
15 changes: 6 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
[![Join UCF Open Slack Discussions](https://ucf-open-slackin.herokuapp.com/badge.svg)](https://ucf-open-slackin.herokuapp.com/)
[![Join UCF Open Slack Discussions](https://badgen.net/badge/icon/ucfopen?icon=slack&label=slack)](https://dl.ucf.edu/join-ucfopen)
![Build Status](https://github.com/ucfopen/UDOIT/actions/workflows/udoit.yml/badge.svg)

# Universal Design Online content Inspection Tool
Expand All @@ -15,26 +15,23 @@ UDOIT was originally developed by the University of Central Florida (UCF) in 201
- MYSQL v5.7 / MariaDB

## Skills Needed for Installation
To manually complete this installation you will need the following skills:
To complete this installation you will need the following skills:

* Web server configuration (Apache or Nginx)
* Command line familiarity
* MySQL familiarity
* LMS admin permissions

UDOIT is built using PHP, the Symfony framework, the React framework, the Instructure UI component library, and other open source libraries. However, knowledge of PHP or Javascript is _**NOT REQUIRED**_ for installation.

## Where to Start
1. Start the installation process by setting up UDOIT on your web server. Instructions are in [INSTALL.md](INSTALL.md).
**Tip:** Join the [UCF Open Slack community](https://dl.ucf.edu/join-ucfopen). They can help solve any issues you may encounter.

1. Start the installation process by setting up UDOIT. Instructions are in [INSTALL.md](INSTALL.md).

2. Once UDOIT is running on your web server you need to configure your LMS. Instructions for the different LMS's are in `INSTALL_<LMS_NAME>.md`.

## Installing UDOIT on Heroku
UDOIT can be installed on your own existing servers, but we've also configured an easy install to a free Heroku server.

To start the Heroku deployment process, you can click the button below, please note, that although this button eliminates much of the installation complexity, there are still some configuration steps that need to be followed, those steps are outlined in the [HEROKU.md Readme](HEROKU.md).

<a href="https://heroku.com/deploy?template=https://github.com/ucfopen/UDOIT/tree/main" title="Deploy to Heroku"><img src="https://www.herokucdn.com/deploy/button.svg" alt="Deploy to Heroku" title="Deploy to Heroku Button"></a>
UDOIT can be installed on your own existing servers, but we've also configured an easy install to a Heroku server. Check out the [HEROKU.md Readme](HEROKU.md) for more information.

## Contributing

Expand Down
2 changes: 1 addition & 1 deletion app.json
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@
}
},
"addons": [
"heroku-postgresql:hobby-dev"
"heroku-postgresql:hobby-basic"
],
"buildpacks": [
{
Expand Down
4 changes: 4 additions & 0 deletions build/nginx/Dockerfile.build
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ RUN docker-php-ext-install pdo_mysql gd pdo \
&& docker-php-ext-install intl \
&& apt-get remove libicu-dev icu-devtools -y

# Write opcache-specific PHP ini file
RUN { \
echo 'opcache.memory_consumption=128'; \
echo 'opcache.interned_strings_buffer=8'; \
Expand All @@ -22,7 +23,10 @@ RUN { \
echo 'opcache.enable_cli=1'; \
} > /usr/local/etc/php/conf.d/php-opocache-cfg.ini

# Copy custom PHP ini file that overrides defaults
COPY ./build/nginx/php-custom.ini /usr/local/etc/php/conf.d/php-custom.ini

# Copy custom Nginx configuration
COPY ./build/nginx/deploy.conf /etc/nginx/sites-enabled/default

COPY ./build/nginx/entrypoint.sh /etc/entrypoint.sh
Expand Down
1 change: 1 addition & 0 deletions build/nginx/deploy.conf
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ server {
fastcgi_param SCRIPT_FILENAME $symfonyRoot/$symfonyScript;
fastcgi_param SCRIPT_NAME /udoit3/$symfonyScript;
fastcgi_param REQUEST_URI /udoit3$uri?$args;
fastcgi_read_timeout 180;
}

# return 404 for all other php files not matching the front controller
Expand Down
1 change: 1 addition & 0 deletions build/nginx/local.conf
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,7 @@ server {
fastcgi_param SCRIPT_FILENAME $symfonyRoot/$symfonyScript;
fastcgi_param SCRIPT_NAME /udoit3/$symfonyScript;
fastcgi_param REQUEST_URI /udoit3$uri?$args;
fastcgi_read_timeout 180;
}

# return 404 for all other php files not matching the front controller
Expand Down
1 change: 1 addition & 0 deletions build/nginx/php-custom.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
max_execution_time = 180
2 changes: 1 addition & 1 deletion composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
"ext-ctype": "*",
"ext-iconv": "*",
"ext-sodium": "*",
"cidilabs/phpally": "~1.1.1",
"cidilabs/phpally": "~1.2.1",
"composer/package-versions-deprecated": "1.11.99.3",
"doctrine/annotations": "^1.0",
"doctrine/doctrine-bundle": "^2.4",
Expand Down
Loading

0 comments on commit d0a7eff

Please sign in to comment.