Conversation
There was a problem hiding this comment.
Pull request overview
This PR updates the GitHub Action packaging for the autograder by moving the Dockerfile to the repository root, simplifying the Docker build, and renaming Action inputs to kebab-case.
Changes:
- Refactored
action.ymlinputs (snake_case → kebab-case) and updated env mappings accordingly. - Simplified
Dockerfile.actionsby installing requirements after copying the repository and pointing ENTRYPOINT directly to the repo script. - Cleaned up
github_action/entrypoint.shby removing a duplicate OPENAI_KEY check (but introduced a misleading log message).
Reviewed changes
Copilot reviewed 3 out of 3 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
github_action/entrypoint.sh |
Tweaks env var validation/logging and removes duplicate OPENAI_KEY check. |
Dockerfile.actions |
Moves Dockerfile to root usage, changes install layering, and updates ENTRYPOINT to repo script. |
action.yml |
Renames inputs to kebab-case and updates docker image path/env wiring. |
Comments suppressed due to low confidence (2)
Dockerfile.actions:21
- Installing Python dependencies after
COPY . .prevents Docker layer caching for dependencies (any source change forces a fullpip install). Consider restoring the pattern of copying only requirements first, installing, then copying the rest of the repo.
Dockerfile.actions:26 - ENTRYPOINT uses a relative path ("github_action/entrypoint.sh"), which depends on WORKDIR being /app. Using an absolute path (e.g., /app/github_action/entrypoint.sh) is more robust if WORKDIR changes in the future.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
…network/autograder into bufix/241-GitHub_Module
ArthurCRodrigues
left a comment
There was a problem hiding this comment.
Hey, @Sl3nc ! After testing it here in this repo it still did not work because of this:
docker: Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: exec: "github_action/entrypoint.sh": stat github_action/entrypoint.sh: no such file or directory
Also, you should be testing things by actually calling the autograder action, like this:
name: Autograder
on:
push:
branches:
- main
pull_request:
branches:
- main
workflow_dispatch:
jobs:
grading:
permissions: write-all
runs-on: ubuntu-latest
if: github.actor != 'github-classroom[bot]'
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
path: submission
- name: Run Autograder
uses: webtech-network/autograder@bufix/241-GitHub_Module
with:
template_preset : "webdev"
feedback-type: "default"
openai_key: ${{ secrets.ENGINE }}
redis_url: ${{ secrets.REDIS_URL }}
redis_token: ${{ secrets.REDIS_NAME }}- Make sure Dockerfile.action is at project root (look at fix-build-context branch)
Hi! Thanks for your reply, that's behavior is strange because when I test this Classroom action in my testing repo, everything works fine (BTW without submission file). Please, invite me for yours test-diw-3 (it's private), because it should present something different from what I expected. Warning In Action.yml I have changed the snake_case (used in arguments names) to kebab-case, soo is needed to update this "with" fields: e.g.: use "template-preset" instead "template_preset" |
|
@Sl3nc done. You should be able to see it now. |
…e test values for export results
…ath method to allow optional content retrieval
… grading criteria retrieval in autograder_pipeline
… GitHub Action adapter
|
The new wave of tests has executed in this repo @ArthurCRodrigues There's a problem in "criteria.json" content, but it's not about the GitHub Module itself |
ArthurCRodrigues
left a comment
There was a problem hiding this comment.
Thanks! I'll look at this problem later today
Dockerfile.actions
Simplified steps and changing the file location to the project's root folder.
Action.yml
Refactor in inputs names