Skip to main content
Deploying to GitHub

Deploying your assignment

Publish the validated assignment to a private GitHub template in a personal account or organization. Learn answer-key options, post-push checks, student repositories, and safe failure recovery.

Written By Alan Gandy

Last updated About 2 hours ago

After Review & Edit validation passes, choose Continue to Deploy. CodeTeach builds the GitHub Actions grading bundle, checks it against the working solution, and then publishes instructor-owned repositories to your selected GitHub account or organization.

Before you deploy

  • Install the CodeTeach GitHub App on the personal account or organization that will own the private template.

  • Review and approve the current assignment package. The assignment must pass quality validation before Deploy unlocks.

Choose the destination

Select the GitHub account or organization with the App installed, then enter a unique repository name. A personal account is supported. Keep the template private and instructor-only. CodeTeach shows the intended account/repository path before publication.

Choose how to keep the answer key: a separate private solution repository (recommended), or a solution branch in the private template. If you use a solution branch, leave Include all branches unchecked when creating student repositories. Never add students to the instructor template.

What Deploy does

  1. Builds the workflow and grading metadata from the approved package.

  2. Runs the solution against the internal GitHub-style autograder and requires a passing result.

  3. Creates the private starter template in your GitHub account or organization and publishes the starter, tests, instructions, and workflow.

  4. Delivers the answer key through your selected instructor-only option and records the repository links.

Deployment can take several minutes. Keep the wizard open or check the assignment on your dashboard if the status connection drops. After publication, wait for the real GitHub post-push validation run. A successful internal check alone does not mean the post-push run passed.

If publication fails

Read the error card. If the App is missing, install it on the chosen account. If the repository name already exists, choose another. If the browser loses the progress connection, refresh or check the dashboard before retrying: a deployment may still be active. A ZIP fallback is available only when the internal grading bundle passed and GitHub publication failed afterward.

Give students their own repositories

Create a separate private student repository from the instructor template for each student, or use GitHub Classroom if your course uses it. Keep the answer key out of student repositories. Follow the student repository guide and read the post-push validation banner.