Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 

Repository files navigation

lti-auto-configuration-action

Reusable GitHub Action wrapper for @oxctl/lti-auto-configuration.

Inputs

Name Description Default
mode Command to run with @oxctl/lti-auto-configuration: deploy, create, update, validate, export, delete, list, or init. deploy
working-directory Directory containing tool-config/default.json .
canvas-url Canvas host URL (required) n/a
tool-support-url Tool Support URL (required) n/a
canvas-token Canvas token (required) n/a
tool-support-username Tool Support username (required) n/a
tool-support-password Tool Support password (required) n/a
node-config Optional NODE_CONFIG JSON override ""
node-extra-ca-certs Optional NODE_EXTRA_CA_CERTS path ""

Outputs

Name Description
client-id LTI client ID from JSON summary (deploy, create, update) or export
external-tool-id External tool ID from JSON command summary for deploy, create, or update
export-json JSON summary (deploy, create, update) or full JSON from export

Usage

name: Update tool configuration
on:
  workflow_dispatch:

jobs:
  update:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v6

      - name: Render tool-config/default.json
        run: |
          mkdir -p tool-config
          cp tool-config/template.json tool-config/default.json

      - name: Deploy LTI configuration
        id: lti
        uses: ./
        with:
          mode: deploy
          canvas-url: ${{ secrets.CANVAS_HOST }}
          tool-support-url: ${{ secrets.TOOL_SUPPORT_URL }}
          canvas-token: ${{ secrets.CANVAS_TOKEN }}
          tool-support-username: ${{ secrets.TOOL_SUPPORT_USERNAME }}
          tool-support-password: ${{ secrets.TOOL_SUPPORT_PASSWORD }}

      - name: Use generated client ID
        run: |
          echo "Client ID: ${{ steps.lti.outputs.client-id }}"
          echo "External Tool ID: ${{ steps.lti.outputs.external-tool-id }}"

Notes

  • All modes are passed directly through to the CLI.
  • deploy, create, and update use --json summary output and always publish client-id, external-tool-id, and export-json.
  • The action always writes ~/.tool-config/default.json from its inputs before running the CLI.
  • The action installs a pinned @oxctl/lti-auto-configuration@2.7.0.
  • validate currently does not generate outputs.
  • export publishes client-id and export-json.
  • delete, list, and init do not generate outputs.
  • The action currently manages its own Node runtime and uses Node 24 LTS internally.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors