Presents links to useful Canvas reports
TLS is enabled by the mkcert vite plugin which can be disabled through vite.config.js
The tool does not have a back-end, it is a JavaScript Vite application. The easiest way to host is to use Cloudflare Pages & link to Github repository on the Cloudflare Pages 'Settings' pages. The following build options also need setting
- Build command:
npm run build - Build output:
build - Root directory:
- Build comments:
Enabled
The application reads ONLY VITE_ prefixed variables for enrolment report configuration. VITE_APP_ or unprefixed variables are not supported and will not be available in production builds.
The .env (environment) file must specify
- the ID of the root account (
VITE_ROOT_ACCOUNT_ID) which is often1 - an array containing a list of IDs whose corresponding role is considered to be a sub-account administrator (
VITE_SUBACCOUNT_ADMIN_ROLES)
To allow for the generation of role reports, the following variables are needed:
VITE_NUMBER_ENROL_REPORTS- The number of enrolment reports to configure (integer). If zero or absent, no enrolment report buttons will be created.
VITE_ENROL_REPORT_NAME_{i},VITE_ENROL_REPORT_ID_{i}- Provide one pair per report where
{i}is 1..VITE_NUMBER_ENROL_REPORTS. VITE_ENROL_REPORT_NAME_{i}is the display name of the report.VITE_ENROL_REPORT_ID_{i}is the numeric role id the report should match (the job will search for this role id in the provisioning CSV).
- Provide one pair per report where
Example .env entries (recommended with VITE_ prefix):
VITE_NUMBER_ENROL_REPORTS=2
VITE_ENROL_REPORT_NAME_1="Suspended Students"
VITE_ENROL_REPORT_ID_1=129
VITE_ENROL_REPORT_NAME_2="Captioners"
VITE_ENROL_REPORT_ID_2=255Notes
- The configured
VITE_ENROL_REPORT_IDis passed into the job and must be a valid numeric role id.
Configuring the tool can be done with @oxctl/lti-auto-configuration.
First set the required values.
npx @oxctl/lti-auto-configuration setupnpx @oxctl/lti-auto-configuration createThe deploy to development is done automatically when a new commit is made to master.
There is a simple deployment test that is run when the tool is deployed to Beta or Production - we check that the page loads and has the expected title. This test relies on the repository having access to the organisational
Github Actions Secret DEPLOYMENT_TESTS_OAUTH_TOKEN. Access must be granted on a repository by repository basis.
To release the latest code merge the master branch into the release branch Cloudflare will then deploy this to production.
The best way to do this is to create a PR from master to release, this allows you to check what's going to be released.
There is a GitHub action that can be manually run to do this.
Alternatively to do this locally run checkout the release branch, fetch the latest code from the origin and run:
git merge origin/masterTo see what is about to go into a release you can preview the changes between master and release, then to double check a PR can be created to merge the changes, reviewed and merged (at which point the release branch is built and deployed).
Application errors are reported using https://sentry.io for this application. There is DSN to be used for development and production and should be set up by hand as a Cloudflare (or equivalent) environment Secret 'VITE_SENTRY_DSN'.
There's no DSN for local development.
Sentry is setup as early as possible in the application to capture as many errors as possible.