see: https://share.getcloudapp.com/E0urqBJX for the problem
Test Plan:
- QA/CR
closes N/A
flag=import_groups_by_csv
Change-Id: Ib88d85a92ec0ae9ca5800f23762b73c8f141ec0d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/249534
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Matthew Lemon <mlemon@instructure.com>
QA-Review: Matthew Lemon <mlemon@instructure.com>
Product-Review: Matthew Lemon <mlemon@instructure.com>
fixes VICE-814
flag=none
TEST PLAN
- make sure your jobs are running
script/delayed_job run (run this in your canvas-lms repo)
- Create a csv as per the specifications in
doc/api/group_category_csv.md
- As a teacher in a course navigate to the groups page and create a new
group set
- In the group set use the import option to upload the csv
- Behold the wonder that is creating groups through csv upload
- Optionally you can also just use the API to create the groups by doing
something like the following:
curl -F attachment=@<filename> -H "Authorization: Bearer <token>" \
'https://<canvas>/api/v1/group_categories/<category_id>/import'
Change-Id: I47a364c1f0132aef59dd61a815142f94d9cce4f6
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/248580
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Rob Orton <rob@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
Product-Review: Matthew Lemon <mlemon@instructure.com>
SIS is considered source of truth, and sis may change pronouns and don't
want to manage a second list of accepted pronouns
test plan
- run sis import with pronoun
- it should add it even when not in account list
fixes VICE-838
flag = none
Change-Id: I51804ac73c8a1934d5c135c736de0a3dfa6131b2
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/248782
Reviewed-by: Caleb Guanzon <cguanzon@instructure.com>
QA-Review: Caleb Guanzon <cguanzon@instructure.com>
Product-Review: Caleb Guanzon <cguanzon@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Then we don't all keep getting tools_variable_substitutions.md
shown as checked out all the time.
CLOSES: DOC-1235
flag=none
Test plan:
- jenkins passes
Change-Id: If5a093ed006a534262ba48138013acc4e769491b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/245638
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Alex Anderson <raanderson@instructure.com>
QA-Review: James Williams <jamesw@instructure.com>
Product-Review: James Williams <jamesw@instructure.com>
In response to a partner request, added a custom variable substitution
that returns an array of section names for the current user, in the
context of the current course for LTI tool launches.
Note that because of the way enrollment information is stored, if a
user launches a tool and is enrolled in
multiple sections in a course (which is common for teachers), then there is
no way to determine which specific section the launch occurred in.
test-plan:
* Have an LTI tool installed in your local Canvas at a course
level that uses the new custom variable.
* Ensure that your current user is enrolled in at least section
in the course the tool is installed in.
* Launch the tool and ensure that under the custom claims you see
the sectionNames variable expanded to an array that matches the
section(s) your current user is enrolled in in the current course.
* Ideally, you should test with a user in one section and in multiple
sections in the current course.
closes INTEROP-4701
flag=none
Change-Id: I58793a3e21d046f965af3983e5361b5a303416c1
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/244645
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Tucker Mcknight <tmcknight@instructure.com>
Product-Review: Karl Lloyd <karl@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
Reviewed-by: Mysti Lilla <mysti@instructure.com>
closes INTEROP-5800
flag=none
Test plan
- Compile the docs and make sure they
don't reference the feature flag
and that they make sense and work
Change-Id: Idb4bc32f01d2cc2a0180f730a13cec58e60473cf
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/244917
Product-Review: Erin Hallmark <erin@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Evan Battaglia <ebattaglia@instructure.com>
QA-Review: Ryan Hawkins <ryan.hawkins@instructure.com>
refs SAS-1540
* adds an audience setting to developer keys, so a key can be set to
target external audiences with its credentials grants
* when a key with an external audience grants credentials, the token is
signed with an asymmetric key instead of the internal symmetric key
* external audiences can retrieve the corresponding public keys from
/login/oauth2/jwks
* credentials issued by developer keys with an account id include the
account's guid in a custom claim
includes a refactor of key storage and rotation in consul, which had
already been done for LTI. but it wasn't really a feature of lti, just
something used by LTI, and we needed the same for key management for
this. moved it to be part of Canvas::Security
Change-Id: Ie5c0fcee6fc21687f31c109389a3bcc1ed349c5d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/243606
QA-Review: Jonathan Featherstone <jfeatherstone@instructure.com>
Reviewed-by: Jonathan Featherstone <jfeatherstone@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Product-Review: Jacob Fugal <jacob@instructure.com>
The Canvas Community moved to a new platform and links were affected.
Updated links in the UI to reflect new URLs so customers have them
instead of having to rely on redirects.
CLOSES: FOO-852
flag=none
Test plan:
- jenkins passes
- links work
Change-Id: I4bad04dbd550d24c48a4aac54fb3c5a547947e7d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/244878
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
Product-Review: Erin Hallmark <erin@instructure.com>
Previously, when any LTI tool, regardless of version, used the
custom field `com.instructure.User.observees`, a comma separated
list that contained the LTI 1.1 lti_user_id of all the students
the current user was observing in the current context was returned.
Now, if the tool being launched uses LTI 1.3, that list now
uses the lti_id of the students the current user is observing
in the current context instead.
fixes INTEROP-5991
flag = none
test-plan:
* Have an LTI 1.3 and 1.1 tool installed, both of which use the
`com.instructure.User.observees` custom field.
* Have a user with an observer in the current context (typically
a course)
* As the observer, launch both tools.
* For the LTI 1.3 tool, verify that the list of students the
observer is observing matches the students' lti_id's.
* For the LTI 1.1 tool, verify that the list of students the
observer is observing matches the students' lti_user_ids.
This can be verified (and is calculated) using
Lti::Asset.opaque_identifier_for(<your_user>)
Change-Id: I59117f567d1c0548f9e38eaba9cc2f097d59adb7
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/243314
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
related to ac18b746bc
Change-Id: Id8f31031a3086dae13fa3c8fff9aaec037e686ca
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/242772
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Han Yan <hyan@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
This change allows us to trigger course enrollment notifications
via the SIS enrollment batch importer. The default will be to not
broadcast the notifications unless the optional param is included
and set to *true*. We only send out one notification as to avoid
spam or duplicates in case of re-upload or a failed import.
closes FOO-652
flag = none
test plan:
* create a new course and have an existing user to work with
* ensure the communication channel for that user is verified
* create an enrollments.csv with the required fields and omit
the optional field `notify`
* navigate to `/accounts/self/sis_import`
* import the .csv from above
* verify no notification is sent via MailCatcher or
`/users/:id/messages` for the SIS user
* add the `notify` header field to the same .csv with a value
of `true` for the particular user enrollment
* import the .csv and verify an email *was* sent
* delete the newly added course enrollment for that user
* import the same .csv and verify we don't send another enrollment
notification for that user
* ensure no documentation errors found for /doc/api/file.sis_csv.html
with the newly added optional field name _notify_
Change-Id: Ibddb11bce765b3830370bc07219e34e5ec982f5d
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/241370
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Ahmad Amireh <ahmad@instructure.com>
Product-Review: Ahmad Amireh <ahmad@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
refs UIDEV-313
flag=none
Test plan:
Confirm the console errors currently visible on production
when you open /styleguide are gone.
The /styleguide page should now only feature the
the following basic HTML/CSS components:
- Borders
- Buttons
- Forms
- Grid
- Icons
- Spacing
- Tables
- Typography
In the header, there should be a clearer explanation that the CSS is
usable in the RCE, but not actively maintained. LTI app builders are
pointed to Instructure UI instead.
Change-Id: I86deee3dbf71c97bd150b71ab01e8af8de553ae5
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/236943
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Pam Hiett <phiett@instructure.com>
Product-Review: Pam Hiett <phiett@instructure.com>
QA-Review: Daniel Sasaki <dsasaki@instructure.com>
Closes PLAT-5744
flag=none
Test Plan
- Install an LTI tool (LTI version does not matter)
The new tool should have the following custom
variable in it's course_navigation config:
`$com.instructure.User.observees`
- Navigate to a course that contains several students
and an observer who is linked to more than one
student
- Act as the observer and launch the tool
- Verify the new variable is expanded to a comma-
separated list of LTI IDs that identify the
users the observer can observe
Change-Id: I14d4db655f0732b40da2508af7d149124e4f5bea
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/237058
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Evan Battaglia <ebattaglia@instructure.com>
QA-Review: Evan Battaglia <ebattaglia@instructure.com>
Product-Review: Karl Lloyd <karl@instructure.com>
* a ContextExternalTool can provide in its settings two urls for
content_migration
* POST requests get sent to these urls as detailed in
`doc/api/tools_xml.md#Content Migrations support`
* previously the bodies of these requests were in query string format
* now, if the CET settings provide `export_format: json` or
`import_format: json`, the bodies of these requests will be a JSON
string instead
* make sure that these new properties are copied in content migration
* make sure that the content type of each POST request is correct
closes PLAT-5676
flag=none
test plan:
* specs
* if you are brave enough, follow the docs and create a small web
server that responds to all the right urls, and add the XML config to
the XML needed to create a ContextExternalTool in a course
* ask me for detailed instructions if you _really_ want to do this
* but I did it and it works
Change-Id: I1396ff600bf70a1c048fb48ee27a9a97c8c6ebb9
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/236641
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Karl Lloyd <karl@instructure.com>
test plan
- course imports should work
- should allow setting a course to published
closes SOS-1437
Change-Id: I221c75be775b1f1276bd4b8cda163298f1f0fc06
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/234913
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Eka Tjung <etjung@instructure.com>
Reviewed-by: Kevin Qiu <kqiu@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
closes APM-7, APM-8
flag = none
hardcode set to a very low % of client sampling by default
to keep performance impact low.
test plan:
* make sure telemetry is arriving in datadog APM
* ensure trace traffic level is low, only from one cluster
(proves settings are working)
* canvas should not show degradation in response times post deployment
Change-Id: Ifca8d3f6239d6c4e70098dd2b68b9c2a1950e121
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/230064
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Simon Williams <simon@instructure.com>
QA-Review: Michael Hargiss <mhargiss@instructure.com>
Product-Review: Ethan Vizitei <evizitei@instructure.com>
This commit removes the Breaking Changes and API
Change Log Archive pages. I also updated the H1
formatting for the changelog and graphql pages.
Closes: DOC-1148
flag=none
Test plan:
- run bundle exec rake doc:api
- the sidebar should not include the breaking changes page
- the API change log page should have a link to the new
page in the canvas community
Change-Id: I00b7465d0ef05a64d97a50c21e24db90bf54a438
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/228796
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Erin Hallmark <erin@instructure.com>
Product-Review: Erin Hallmark <erin@instructure.com>
Reviewed-by: Rob Orton <rob@instructure.com>
looks like the last commit added some info to the file manually and so
when the script is run it will show that file has changed. Updated the
date to be something more real for documentation when related to start
date
Change-Id: I3dc7af0f80ba4daa7f09ffdcd6fcaaa67d91af09
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/225697
Reviewed-by: Evan Battaglia <ebattaglia@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Rob Orton <rob@instructure.com>
Product-Review: Rob Orton <rob@instructure.com>
Next step will be to integrate a secrets API a-la-dynamic settings
test plan:
- Specs pass
Change-Id: Ic2fdd2be3c7f665804627f3ef3ffb5bc408d135b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/224281
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Cody Cutrer <cody@instructure.com>
QA-Review: Cody Cutrer <cody@instructure.com>
Product-Review: Cody Cutrer <cody@instructure.com>
fixes#1567
test plan: The "OAuth2 Endpoints" documentation in the api docs should
specify the correct scope, with the beginning forward slash
Change-Id: I654e2ad21b1ed8028c4552cfce3188b4f32e6715
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/225004
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Bryan Petty <bpetty@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
closes PLAT-5314
flag=none
Test plan:
* look in markdown file in gitiles to see that link is fixed
Change-Id: Ic13c6a9f35989a92dc70cc1f532fcf6339222d5e
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/224204
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Evan Battaglia <ebattaglia@instructure.com>
closes PLAT-5288
flag=none
Test plan:
* create a course with an end_at date
* set up a tool with the "$Canvas.course.endAt" LTI variable
substitution
* launch the tool and look at the LTI parameters in dev tools
and see that the variable is set correctly
* remove the end_at date, relaunch the tool, check that the variable
is now an emptry string
Change-Id: Ifba70ebd6cb9fe8d39da1d24fb6ae69e97902828
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/223702
Reviewed-by: Marc Phillips <mphillips@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Marc Phillips <mphillips@instructure.com>
Product-Review: Evan Battaglia <ebattaglia@instructure.com>
Live Events documentation now accessible from within the live-events-lti
tool, so it doesn't have to be on the API documentation website.
closes PLAT-5248
flag=none
Test plan:
- Look at updated plagiarism_platform.md and check that links work
Change-Id: If13c409cc2411a37d3d585dcea67aaef010ca7b7
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/221973
Reviewed-by: Xander Moffatt <xmoffatt@instructure.com>
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
QA-Review: Evan Battaglia <ebattaglia@instructure.com>
Product-Review: Evan Battaglia <ebattaglia@instructure.com>
Removed the customization workflow for dev keys and
also removed redux from lti key creation, simplifying
the codebase and cleaning up unused code.
refs PLAT-5107
Test Plan:
- Create a new lti key, note that it still works as before
- Create a new api key, note that it still works as before
- Be sure to try all different types of key creation
Change-Id: I9af89123f94896f42e5c5b736757919effd15b7b
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/219146
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Tested-by: Jenkins
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Marc Phillips <mphillips@instructure.com>
Product-Review: Marc Phillips <mphillips@instructure.com>
Closes PLAT-4599
Test plan:
- Look at markdown files and check the note about all tools having the
placement
- I guess the HTML files are automatically generated
Change-Id: I335a5ca79adc5f2b5f2d9db0bf1cb4d10779dde6
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/218056
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Tested-by: Jenkins
Product-Review: Jesse Poulos <jpoulos@instructure.com>
Reviewed-by: Marc Phillips <mphillips@instructure.com>
QA-Review: Marc Phillips <mphillips@instructure.com>
Closes PLAT-5143
Test Plan:
- Install an LTI tool that uses the new
$com.instructure.Person.pronouns variable
expansion
- Do an LTI launch and verify the post parameter
contains the current user's pronouns
Change-Id: I03ae80e0c6a3fe6a7ada5ce87da8cf8a97299964
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/217430
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Tested-by: Jenkins
Product-Review: Weston Dransfield <wdransfield@instructure.com>
Reviewed-by: Ryan Shaw <ryan@instructure.com>
Reviewed-by: Evan Battaglia <ebattaglia@instructure.com>
Reviewed-by: Steven Burnett <sburnett@instructure.com>
QA-Review: Evan Battaglia <ebattaglia@instructure.com>
test plan:
- create assignment, quiz, discussion, page that
include a file in rich text
- use "send to" and "copy to" with this, pointing at
a destination module
- ensure only the selected item, not the file (or in the case
of the quiz, the linked assignment) is added to the module
- render API docs and make sure the parameter
insert_into_module_type is documented properly
(the above steps will exercise it)
fixes LA-173
Change-Id: I3da033e6abda60c59c208d5fcc340c1a063f8348
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/216952
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Tested-by: Jenkins
Reviewed-by: James Williams <jamesw@instructure.com>
QA-Review: Anju Reddy <areddy@instructure.com>
Product-Review: Jeremy Stanley <jeremy@instructure.com>
Closes PLAT-5144
Test Plan:
Verify the Editor Button documentation page
now includes notes on the "visibility"
property.
Change-Id: I136a3171009716bf9db2ec39a67d7d00bbd9ee2c
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/217475
Tested-by: Jenkins
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Reviewed-by: Evan Battaglia <ebattaglia@instructure.com>
Reviewed-by: Marc Phillips <mphillips@instructure.com>
QA-Review: Evan Battaglia <ebattaglia@instructure.com>
Product-Review: Weston Dransfield <wdransfield@instructure.com>
This is in an attempt to
1. Prevent unpredictable behavior when
running docker-compose without specifying
docker-compose files (intentionally or
unintentionally *This is exactly a problem
I found that caused issues, running the defaults on accident)
2. Follow more closely what other projects
are doing, they don’t have the override committed
3. Follow typical industry standard,
from what I’ve seen, such as
https://blog.sentry.io/2019/02/28/exception-perceptions-docker
test plan:
Running ./script/docker_dev_setup.sh with no
docker-compose.override.yml
in the root directory will print the message
"Copying default configuration from
docker-compose.override.yml.example to
docker-compose.override.yml" and copy the file in.
Running ./script/docker_dev_setup.sh with an existing
docker-compose.override.yml will simply print
"docker-compose.override.yml exists, skipping
copy of default configuration"
Also check that the documentation changes
sufficiently explain the new
process and what to expect.
The file shouldn't be in the root of the
directory in the repo anymore,
in order to prevent unwanted default behavior
(requires explicit naming
of docker-compose files)
There should be a
docker-compose.override.yml.example in the config
folder for reference.
• Add `docker-compose.override.yml` to `.gitignore`
• Leave a copy of the current
`docker-compose.override.yml` in
`config/docker-compose.override.yml.example`
• Delete `docker-compose.override.yml`
from the root directory
fixes CORE-3409
Change-Id: I9cffeb52f2cc233061f78de10fcb240c09743542
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/214116
Tested-by: Service Cloud Jenkins <svc.cloudjenkins@instructure.com>
Tested-by: Jenkins
Reviewed-by: Robert Lamb <rlamb@instructure.com>
QA-Review: S. Jacob Powell <spowell@instructure.com>
Product-Review: S. Jacob Powell <spowell@instructure.com>
closes PLAT-4968
test plan:
* give a student a grade for an assignment
* configure the live events plugin using `doc/live_events.md`
* tail the kinesis stream following the directions in `doc/live_events.md`
* change the grade for the student
* assert that the assigment_name is present in the event body
Change-Id: Ibcabdada2a1c4ba7cd9b29bc6bacdbb387ec41f1
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/215983
Reviewed-by: Evan Battaglia <ebattaglia@instructure.com>
QA-Review: Evan Battaglia <ebattaglia@instructure.com>
Product-Review: Xander Moffatt <xmoffatt@instructure.com>
Tested-by: Jenkins
Updates External Tools API docs so that LTI Advantage is incorportated
and old deprecated methods are hidden from navigation. Those old docs
should still work if direct navigated to.
closes PLAT-4920
test plan:
- run docker-compose run web bundle exec rake doc:api
- get coffee
- make sure each file renders
- kick feet up and read through docs and make sure they make sense and
have superb grammatical syntactical constitution
Change-Id: I29195b0c471a42633716a1d4072083b9fcf04e64
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/209796
Tested-by: Jenkins
Reviewed-by: Weston Dransfield <wdransfield@instructure.com>
QA-Review: Jesse Poulos <jpoulos@instructure.com>
Product-Review: Jesse Poulos <jpoulos@instructure.com>
closes ADMIN-2891
flag=none
test plan:
- Set up new LTI Tool to accept the 4 custom parameters
- On Pages index, trigger LTI from kabob menu
- See the 4 new parameters are correctly sent to LTI
Change-Id: Ib3a17d2d9a5d6c5117671061a00365ca86a57d4f
Reviewed-on: https://gerrit.instructure.com/c/canvas-lms/+/213879
Tested-by: Jenkins
Reviewed-by: Jeremy Stanley <jeremy@instructure.com>
Reviewed-by: Marc Phillips <mphillips@instructure.com>
QA-Review: Anju Reddy <areddy@instructure.com>
Product-Review: Carl Kibler <ckibler@instructure.com>
https://github.com/lsegal/yard/blob/master/CHANGELOG.md
yard 0.9.6 added functionality which parses code blocks and tries to
auto link constants to their respective yard documentation. this means
that code blocks with invalid constants cause issues, which is why we
need to properly quote strings in our code blocks.
Change-Id: I0814ebb2658935f8bd3d528515acfdb5041d1e0f
Reviewed-on: https://gerrit.instructure.com/212925
Tested-by: Jenkins
Reviewed-by: Cameron Matheson <cameron@instructure.com>
QA-Review: Simon Williams <simon@instructure.com>
Product-Review: Simon Williams <simon@instructure.com>
* specifically to user_created and user_updated
closes PLAT-4829
test plan:
* enable live events (see doc/live_events.md) on your local machine
* create a user with a sis id
* the live event generated should contain these 2 new fields
* update that user
* the live event generated should contain these 2 new fields
Change-Id: Ic199173ba9cd54723dba73dcc381be7b6de644aa
Reviewed-on: https://gerrit.instructure.com/209171
Reviewed-by: Marc Phillips <mphillips@instructure.com>
Tested-by: Jenkins
QA-Review: Weston Dransfield <wdransfield@instructure.com>
Product-Review: Xander Moffatt <xmoffatt@instructure.com>
* include details about subscription service
and new LTI tool
Change-Id: Ic2ca13ded52a9e74b98049b65b68eddfa9d4fdcb
Reviewed-on: https://gerrit.instructure.com/207371
Reviewed-by: Marc Phillips <mphillips@instructure.com>
QA-Review: Xander Moffatt <xmoffatt@instructure.com>
Product-Review: Xander Moffatt <xmoffatt@instructure.com>
Tested-by: Jenkins