-
Notifications
You must be signed in to change notification settings - Fork 0
feat: add support for private requirements #13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
magajh
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for this, @andrey-canon! Just a couple of comments
| openedx_imports_test_file_path: | ||
| description: 'Path to the file that contains the test function for validating Open edX imports. This should be a Python file within your project.' | ||
| required: false | ||
| ssh_private_key: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's please make this a secret instead of a regular input
| shell: bash | ||
|
|
||
| - name: Setup SSH agent for private repositories cloning | ||
| if: ${{ inputs.ssh_private_key }} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this should be a secret
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
| tutor local start -d lms cms | ||
| shell: bash | ||
|
|
||
| - name: Pip install private requirements inside LMS and CMS |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we please move this step to before or after the step where we install the extra requirements
integration-test-in-tutor/action.yml
Line 227 in a5cb1cc
| - name: Install extra requirements |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why? anyway, that will make that some implementations fail, there are two options
- you need a private requirement that is not an app requirement, this will work with your suggestion
- you need a private requirement that is an app requirement, when the app(plugin) is installed in the next step the installation will fail since that won't be able to install the private dependency
|
|
||
| **Optional** | ||
| A private SSH key (usually stored as a GitHub Secret) that allows cloning of private repositories containing additional Open edX requirements. | ||
| * *Example*: `${{ secrets.SERVICE_USER_SSH_KEY }}` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Please remember to update this with the correct secret name
Description
This PR extends the Open edX Plugin Integration Tests with Tutor GitHub Action to support installing private requirements from SSH-based Git repositories inside the Tutor LMS and CMS environments.
Key Changes
New Inputs
New Steps
Purpose
These additions allow the action to handle private Python package dependencies that are not available on PyPI, ensuring that plugins depending on private repositories can be fully tested within the Tutor environment.