-
Notifications
You must be signed in to change notification settings - Fork 409
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
Comment-driven CI #2275
Comment-driven CI #2275
Conversation
Important Auto Review SkippedAuto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the To trigger a single review, invoke the WalkthroughThe update to the workflow configuration introduces a mechanism to trigger actions based on issue comments. It also adds a new job to check if the commenter is a team member, and modifies existing jobs to behave differently depending on the result of this membership check. Changes
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media? TipsChatThere are 3 ways to chat with CodeRabbit:
Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (invoked as PR comments)
Additionally, you can add CodeRabbit Configration File (
|
let's try this |
trying again |
@coderabbitai review |
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.
Review Status
Actionable comments generated: 1
Configuration used: .coderabbit.yaml
Files selected for processing (1)
- .github/workflows/ci-slow.yml (9 hunks)
Additional comments: 5
.github/workflows/ci-slow.yml (5)
17-29: The
check-membership
job correctly sets an output based on whether the commenter is a team member. However, this approach may be vulnerable to spoofing if a non-member changes their username to match a team member's username. It's recommended to use GitHub's API to check for organization membership, which provides a more secure verification method.31-35: The conditional statement for the
docstring-check
job is well-structured to ensure that the job only runs under the correct circumstances. However, the condition seems to be missing a check for the presence of the/fulltest
comment. This should be verified to ensure that the CI is only triggered by the specific comment.49-53: The conditional statements for the other jobs, such as
small-checks
,spellcheck
,update-templates-to-examples
,custom-ubuntu-unit-test
,windows-unit-test
,macos-unit-test
,windows-integration-test
,macos-integration-test
, andcustom-ubuntu-integration-test
, are consistent with thedocstring-check
job. Ensure that all these conditions are tested to confirm that they work as intended.Verification successful
The search results from the
.github/workflows/ci-slow.yml
file show that there are multipleif
conditions present, all of which include the check forneeds.check-membership.outputs.member_check == 'true'
andgithub.event.pull_request.draft
. However, the output does not show the full condition, specifically the part that checks for the presence of the/fulltest
string in the comment body.To ensure that the conditions are consistent and include the necessary checks as mentioned in the review comment, we need to see the full
if
conditions. Since the previous command truncated the results, we should adjust the search to display the full lines.
The search results confirm that the
if
conditional statements in the.github/workflows/ci-slow.yml
file are consistent across multiple jobs. Eachif
statement includes the following checks:
needs.check-membership.outputs.member_check == 'true'
- to verify if the commenter is a member of the core team.github.event.pull_request.draft == false
- to ensure the pull request is not a draft.github.event.issue.pull_request
- to check if the event is associated with a pull request.contains(github.event.comment.body, '/fulltest')
- to check if the comment contains the/fulltest
command.These conditions align with the review comment's requirement for consistency and the inclusion of the necessary checks. Therefore, the conditional statements for the jobs mentioned in the review comment have been verified to be consistent and include the required checks.
* 106-110: The `update-templates-to-examples` job includes a condition to check if the PR is from a forked repository. This is a good practice to prevent actions from running on untrusted code. Ensure that this logic is correctly implemented and tested.Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Verify that the conditions for all jobs are consistent and include the necessary checks. ast-grep --lang yaml --pattern $'if: $_ && contains($_, "/fulltest")' .github/workflows/ci-slow.ymlLength of output: 209
Script:
#!/bin/bash # Search for the conditional 'if' statements in the ci-slow.yml file that include the string "/fulltest" rg 'if: .+contains\(github.event.comment.body,\s*'/fulltest'\)' .github/workflows/ci-slow.ymlLength of output: 93
Script:
#!/bin/bash # Correcting the search pattern and attempting to search again for the conditional 'if' statements in the ci-slow.yml file rg "if: .+contains\(github.event.comment.body, '/fulltest'\)" .github/workflows/ci-slow.ymlLength of output: 99
Script:
#!/bin/bash # Simplifying the search pattern to ensure correct syntax and attempting to search again for the conditional 'if' statements in the ci-slow.yml file rg "if: .+ '/fulltest'" .github/workflows/ci-slow.ymlLength of output: 61
Script:
#!/bin/bash # Broadening the search to include any 'if' statements in the ci-slow.yml file rg "^ +if:" .github/workflows/ci-slow.ymlLength of output: 1013
Script:
#!/bin/bash # Search for the full 'if' conditional statements in the ci-slow.yml file to verify consistency rg "^ +if:.*" .github/workflows/ci-slow.yml -A 1Length of output: 1937
Verification successful
The output from the script shows the relevant lines from the
.github/workflows/ci-slow.yml
file, specifically lines 101 to 115. The condition mentioned in the review comment is present on lines 108 to 110. It checks several conditions, including whether the comment was made by a team member, the PR is not a draft, the comment contains/fulltest
, and importantly, whether the head repository of the pull request is the same as the base repository (github.event.pull_request.head.repo.full_name == github.repository
). This last condition effectively checks that the PR is not from a forked repository.The comment on line 111,
# this doesn't work on forked repositories (i.e. outside contributors)
, further clarifies that the job is disabled for PRs from forked repositories, which aligns with the best practice mentioned in the review comment.Based on the provided script output, the logic to prevent actions from running on untrusted code from forked repositories is correctly implemented in the
update-templates-to-examples
job within theci-slow.yml
workflow.* 202-207: For the `custom-ubuntu-integration-test` job, the strategy matrix and exclusion list are well-defined to optimize the test runs. However, ensure that the exclusion logic is working as expected and that it doesn't exclude necessary test runs.Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Verify that the condition to check for forked repositories is correctly implemented. ast-grep --lang yaml --pattern $'if: $_ && github.event.pull_request.head.repo.full_name == github.repository' .github/workflows/ci-slow.ymlLength of output: 250
Script:
#!/bin/bash # Search for the condition within the ci-slow.yml file using ripgrep rg 'if: .+ && github.event.pull_request.head.repo.full_name == github.repository' -A 3 .github/workflows/ci-slow.ymlLength of output: 118
Script:
#!/bin/bash # Display the contents of the ci-slow.yml file around lines 106-110 cat -n .github/workflows/ci-slow.yml | sed -n '101,115p'Length of output: 906
Verification successful
The output from the
rg
command indicates that there is anexclude
keyword present in the.github/workflows/ci-slow.yml
file. However, the output does not provide the context or content of the exclusion logic. To verify the review comment regarding the exclusion logic within the matrix strategy, we need to see the actual lines of code that define this logic.To gather the necessary information, I will generate a new script to extract the relevant section of the
ci-slow.yml
file that contains theexclude
keyword along with some lines of context around it.
The output from the
rg
command provides the context of theexclude
keyword within thestrategy
section of the.github/workflows/ci-slow.yml
file. The exclusion logic is set up to prevent certain combinations oftest_environment
andpython-version
from running together. Specifically, it excludes thedocker-server-docker-orchestrator-mysql
anddocker-server-docker-orchestrator-mariadb
test environments from running on Python versions 3.9, 3.10, and 3.11, indicating that these tests are only intended to run on Python version 3.8.Based on the provided output, the exclusion logic appears to be correctly implemented to optimize the test runs by running the time-consuming docker tests only on Python version 3.8 and not on the other versions.
Scripts Executed
The following scripts were executed for the analysis:
Script:
#!/bin/bash # Verify that the exclusion logic in the matrix strategy is correctly implemented. ast-grep --lang yaml --pattern $'exclude: $$$' .github/workflows/ci-slow.ymlLength of output: 186
Script:
#!/bin/bash # Search for the 'exclude' keyword within the 'ci-slow.yml' file to inspect the matrix strategy and exclusion list. rg 'exclude' .github/workflows/ci-slow.ymlLength of output: 59
Script:
#!/bin/bash # Extract the relevant section around the 'exclude' keyword to review the matrix strategy and exclusion logic. rg -C 10 'exclude' .github/workflows/ci-slow.ymlLength of output: 1004
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.
LGTM, one suggestion to verify
Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com>
* give darglint check its own job * fastCI * add slowCI * reenable fast CI * remove comment * add integration tests * fix spellcheck context * enable slow CI for testing * remove unit test dependency * fix dependency installations * yamlfixed * Comment-driven CI (#2275) * test comment-driven approach * delete unused test file * slow CI is comment-driven * restore CI * conditionally respond to comments depending on team status * add the whole team * Update .github/workflows/ci-slow.yml Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> * delete old CI --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com>
/fullci |
/fulltest |
* starter files for the new CI paradigm * disable fast/slow ci on base branch * disable core workflow * Fast/slow CI core scaffold (#2274) * give darglint check its own job * fastCI * add slowCI * reenable fast CI * remove comment * add integration tests * fix spellcheck context * enable slow CI for testing * remove unit test dependency * fix dependency installations * yamlfixed * Comment-driven CI (#2275) * test comment-driven approach * delete unused test file * slow CI is comment-driven * restore CI * conditionally respond to comments depending on team status * add the whole team * Update .github/workflows/ci-slow.yml Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> * delete old CI --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> * remove spellcheck from slow CI * update spellcheck run conditions * Sharded integration tests for Ubuntu (#2286) * add pytest-shard dev dependency * update script for sharded testing * add ubuntu sharding * fix naming * Use `pytest-split` to shard CI (#2296) * add split test to action * Update user authentication logic * Fix bug in login functionality * Refactor test coverage script * Update excluded directories in pyproject.toml * Update integration test script to include shard number * Update integration test script to use matrix.shard * Update caching key in setup_environment action.yml * Update durations path in test-coverage-xml.sh * Update cache key in setup_environment action.yml * Auto-update of Starter template * Fix formatting issue in setup_environment action.yml * Refactor code to improve performance and readability --------- Co-authored-by: GitHub Actions <actions@github.com> * Update pyproject.toml Co-authored-by: Alex Strick van Linschoten <strickvl@users.noreply.github.com> * add extra final line * make workflows use normal ubuntu) * fix durations path and update docstring --------- Co-authored-by: Safoine El Khabich <34200873+safoinme@users.noreply.github.com> Co-authored-by: GitHub Actions <actions@github.com> * Auto-update of Starter template * Auto-update of NLP template * Auto-update of E2E template * add docker testing back in * Auto-update of E2E template * temporarily trigger slow CI * revert to comment-driven CI * run full slow CI * CI as it should be * pyyaml fix * fix docker compose installation * test * test * update templates test * ubuntu-unit tests * restore unit tests back to normal * fix matrix for slow CI * uncomment the conditional checks * add input variable * remove mac and windows for testing * split out slow and fast integration testing * naming fix * confirm mac and windows ok" * improve conditional checks * remove workflow_call * add fastCI back in * add db migration testing to CI * add db migration testing to CI-fast * actually include it now --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> Co-authored-by: Safoine El Khabich <34200873+safoinme@users.noreply.github.com> Co-authored-by: GitHub Actions <actions@github.com>
* starter files for the new CI paradigm * disable fast/slow ci on base branch * disable core workflow * Fast/slow CI core scaffold (#2274) * give darglint check its own job * fastCI * add slowCI * reenable fast CI * remove comment * add integration tests * fix spellcheck context * enable slow CI for testing * remove unit test dependency * fix dependency installations * yamlfixed * Comment-driven CI (#2275) * test comment-driven approach * delete unused test file * slow CI is comment-driven * restore CI * conditionally respond to comments depending on team status * add the whole team * Update .github/workflows/ci-slow.yml Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> * delete old CI --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> * remove spellcheck from slow CI * update spellcheck run conditions * Sharded integration tests for Ubuntu (#2286) * add pytest-shard dev dependency * update script for sharded testing * add ubuntu sharding * fix naming * Use `pytest-split` to shard CI (#2296) * add split test to action * Update user authentication logic * Fix bug in login functionality * Refactor test coverage script * Update excluded directories in pyproject.toml * Update integration test script to include shard number * Update integration test script to use matrix.shard * Update caching key in setup_environment action.yml * Update durations path in test-coverage-xml.sh * Update cache key in setup_environment action.yml * Auto-update of Starter template * Fix formatting issue in setup_environment action.yml * Refactor code to improve performance and readability --------- Co-authored-by: GitHub Actions <actions@github.com> * Update pyproject.toml Co-authored-by: Alex Strick van Linschoten <strickvl@users.noreply.github.com> * add extra final line * make workflows use normal ubuntu) * fix durations path and update docstring --------- Co-authored-by: Safoine El Khabich <34200873+safoinme@users.noreply.github.com> Co-authored-by: GitHub Actions <actions@github.com> * Auto-update of Starter template * Auto-update of NLP template * Auto-update of E2E template * add docker testing back in * Auto-update of E2E template * temporarily trigger slow CI * revert to comment-driven CI * run full slow CI * CI as it should be * pyyaml fix * fix docker compose installation * test * test * update templates test * ubuntu-unit tests * restore unit tests back to normal * fix matrix for slow CI * uncomment the conditional checks * add input variable * remove mac and windows for testing * split out slow and fast integration testing * naming fix * confirm mac and windows ok" * improve conditional checks * remove workflow_call * add fastCI back in * add db migration testing to CI * add db migration testing to CI-fast * actually include it now --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> Co-authored-by: Safoine El Khabich <34200873+safoinme@users.noreply.github.com> Co-authored-by: GitHub Actions <actions@github.com>
* starter files for the new CI paradigm * disable fast/slow ci on base branch * disable core workflow * Fast/slow CI core scaffold (zenml-io#2274) * give darglint check its own job * fastCI * add slowCI * reenable fast CI * remove comment * add integration tests * fix spellcheck context * enable slow CI for testing * remove unit test dependency * fix dependency installations * yamlfixed * Comment-driven CI (zenml-io#2275) * test comment-driven approach * delete unused test file * slow CI is comment-driven * restore CI * conditionally respond to comments depending on team status * add the whole team * Update .github/workflows/ci-slow.yml Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> * delete old CI --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> * remove spellcheck from slow CI * update spellcheck run conditions * Sharded integration tests for Ubuntu (zenml-io#2286) * add pytest-shard dev dependency * update script for sharded testing * add ubuntu sharding * fix naming * Use `pytest-split` to shard CI (zenml-io#2296) * add split test to action * Update user authentication logic * Fix bug in login functionality * Refactor test coverage script * Update excluded directories in pyproject.toml * Update integration test script to include shard number * Update integration test script to use matrix.shard * Update caching key in setup_environment action.yml * Update durations path in test-coverage-xml.sh * Update cache key in setup_environment action.yml * Auto-update of Starter template * Fix formatting issue in setup_environment action.yml * Refactor code to improve performance and readability --------- Co-authored-by: GitHub Actions <actions@github.com> * Update pyproject.toml Co-authored-by: Alex Strick van Linschoten <strickvl@users.noreply.github.com> * add extra final line * make workflows use normal ubuntu) * fix durations path and update docstring --------- Co-authored-by: Safoine El Khabich <34200873+safoinme@users.noreply.github.com> Co-authored-by: GitHub Actions <actions@github.com> * Auto-update of Starter template * Auto-update of NLP template * Auto-update of E2E template * add docker testing back in * Auto-update of E2E template * temporarily trigger slow CI * revert to comment-driven CI * run full slow CI * CI as it should be * pyyaml fix * fix docker compose installation * test * test * update templates test * ubuntu-unit tests * restore unit tests back to normal * fix matrix for slow CI * uncomment the conditional checks * add input variable * remove mac and windows for testing * split out slow and fast integration testing * naming fix * confirm mac and windows ok" * improve conditional checks * remove workflow_call * add fastCI back in * add db migration testing to CI * add db migration testing to CI-fast * actually include it now --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> Co-authored-by: Safoine El Khabich <34200873+safoinme@users.noreply.github.com> Co-authored-by: GitHub Actions <actions@github.com>
* starter files for the new CI paradigm * disable fast/slow ci on base branch * disable core workflow * Fast/slow CI core scaffold (#2274) * give darglint check its own job * fastCI * add slowCI * reenable fast CI * remove comment * add integration tests * fix spellcheck context * enable slow CI for testing * remove unit test dependency * fix dependency installations * yamlfixed * Comment-driven CI (#2275) * test comment-driven approach * delete unused test file * slow CI is comment-driven * restore CI * conditionally respond to comments depending on team status * add the whole team * Update .github/workflows/ci-slow.yml Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> * delete old CI --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> * remove spellcheck from slow CI * update spellcheck run conditions * Add GitHub issue creation on cache miss * test failing cache * Update Minio endpoint in setup_environment action.yml * Update minio-service endpoint in setup_environment action.yml * Sharded integration tests for Ubuntu (#2286) * add pytest-shard dev dependency * update script for sharded testing * add ubuntu sharding * fix naming * Use `pytest-split` to shard CI (#2296) * add split test to action * Update user authentication logic * Fix bug in login functionality * Refactor test coverage script * Update excluded directories in pyproject.toml * Update integration test script to include shard number * Update integration test script to use matrix.shard * Update caching key in setup_environment action.yml * Update durations path in test-coverage-xml.sh * Update cache key in setup_environment action.yml * Auto-update of Starter template * Fix formatting issue in setup_environment action.yml * Refactor code to improve performance and readability --------- Co-authored-by: GitHub Actions <actions@github.com> * Update pyproject.toml Co-authored-by: Alex Strick van Linschoten <strickvl@users.noreply.github.com> * add extra final line * make workflows use normal ubuntu) * fix durations path and update docstring --------- Co-authored-by: Safoine El Khabich <34200873+safoinme@users.noreply.github.com> Co-authored-by: GitHub Actions <actions@github.com> * Auto-update of Starter template * Auto-update of NLP template * Auto-update of E2E template * add docker testing back in * Auto-update of E2E template * temporarily trigger slow CI * revert to comment-driven CI * run full slow CI * CI as it should be * pyyaml fix * fix docker compose installation * test * test * update templates test * ubuntu-unit tests * restore unit tests back to normal * fix matrix for slow CI * uncomment the conditional checks * add input variable * remove mac and windows for testing * split out slow and fast integration testing * naming fix * confirm mac and windows ok" * improve hf and neuralprofet example * update the issue * update TOC (#2406) * Correct docstring in integration init file (#2408) * Fixed precedence * adding the new version to the migration tests (#2411) * update js code for github cache miss * update context to github * add discord webhooks * Add Discord webhook support for notifications * allow fallback of cache failure * ignore if weebhock fails to to many request * Add PYTORCH integration to DockerSettings --------- Co-authored-by: Alex Strick van Linschoten <stricksubscriptions@fastmail.fm> Co-authored-by: Alex Strick van Linschoten <strickvl@users.noreply.github.com> Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> Co-authored-by: GitHub Actions <actions@github.com> Co-authored-by: Christian Versloot <c.versloot@infoplaza.nl> Co-authored-by: Hamza Tahir <htahir111@gmail.com> Co-authored-by: Barış Can Durak <36421093+bcdurak@users.noreply.github.com>
* Fix conditional statements in GitHub workflows (#2404) * Fix conditional statements in GitHub workflows * rename core CI flows * slow CI check doesn't happen when draft * Auto-update of Starter template * fix double conditional --------- Co-authored-by: GitHub Actions <actions@github.com> * Ensure proper spacing in error messages (#2399) * Ensure proper spacing in error messages * update TOC (#2406) --------- Co-authored-by: Alex Strick van Linschoten <strickvl@users.noreply.github.com> * Fix hyperai markdown table (#2426) * build: ⬆️ Upgrade min required google-cloud-aiplatform to 1.34.0 (#2428) * Close code block left open in the docs (#2432) * Fix docs * wrong ticks! * Simplify HF example and notify when cache is down (#2300) * starter files for the new CI paradigm * disable fast/slow ci on base branch * disable core workflow * Fast/slow CI core scaffold (#2274) * give darglint check its own job * fastCI * add slowCI * reenable fast CI * remove comment * add integration tests * fix spellcheck context * enable slow CI for testing * remove unit test dependency * fix dependency installations * yamlfixed * Comment-driven CI (#2275) * test comment-driven approach * delete unused test file * slow CI is comment-driven * restore CI * conditionally respond to comments depending on team status * add the whole team * Update .github/workflows/ci-slow.yml Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> * delete old CI --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> * remove spellcheck from slow CI * update spellcheck run conditions * Add GitHub issue creation on cache miss * test failing cache * Update Minio endpoint in setup_environment action.yml * Update minio-service endpoint in setup_environment action.yml * Sharded integration tests for Ubuntu (#2286) * add pytest-shard dev dependency * update script for sharded testing * add ubuntu sharding * fix naming * Use `pytest-split` to shard CI (#2296) * add split test to action * Update user authentication logic * Fix bug in login functionality * Refactor test coverage script * Update excluded directories in pyproject.toml * Update integration test script to include shard number * Update integration test script to use matrix.shard * Update caching key in setup_environment action.yml * Update durations path in test-coverage-xml.sh * Update cache key in setup_environment action.yml * Auto-update of Starter template * Fix formatting issue in setup_environment action.yml * Refactor code to improve performance and readability --------- Co-authored-by: GitHub Actions <actions@github.com> * Update pyproject.toml Co-authored-by: Alex Strick van Linschoten <strickvl@users.noreply.github.com> * add extra final line * make workflows use normal ubuntu) * fix durations path and update docstring --------- Co-authored-by: Safoine El Khabich <34200873+safoinme@users.noreply.github.com> Co-authored-by: GitHub Actions <actions@github.com> * Auto-update of Starter template * Auto-update of NLP template * Auto-update of E2E template * add docker testing back in * Auto-update of E2E template * temporarily trigger slow CI * revert to comment-driven CI * run full slow CI * CI as it should be * pyyaml fix * fix docker compose installation * test * test * update templates test * ubuntu-unit tests * restore unit tests back to normal * fix matrix for slow CI * uncomment the conditional checks * add input variable * remove mac and windows for testing * split out slow and fast integration testing * naming fix * confirm mac and windows ok" * improve hf and neuralprofet example * update the issue * update TOC (#2406) * Correct docstring in integration init file (#2408) * Fixed precedence * adding the new version to the migration tests (#2411) * update js code for github cache miss * update context to github * add discord webhooks * Add Discord webhook support for notifications * allow fallback of cache failure * ignore if weebhock fails to to many request * Add PYTORCH integration to DockerSettings --------- Co-authored-by: Alex Strick van Linschoten <stricksubscriptions@fastmail.fm> Co-authored-by: Alex Strick van Linschoten <strickvl@users.noreply.github.com> Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> Co-authored-by: GitHub Actions <actions@github.com> Co-authored-by: Christian Versloot <c.versloot@infoplaza.nl> Co-authored-by: Hamza Tahir <htahir111@gmail.com> Co-authored-by: Barış Can Durak <36421093+bcdurak@users.noreply.github.com> * Adding the latest version id and name to the artifact response (#2430) * update TOC (#2406) * Correct docstring in integration init file (#2408) * Fixed precedence * adding the new version to the migration tests (#2411) * adding latest version name and id to artifact response * removed optional column from the conftest --------- Co-authored-by: Alex Strick van Linschoten <strickvl@users.noreply.github.com> Co-authored-by: Christian Versloot <c.versloot@infoplaza.nl> Co-authored-by: Hamza Tahir <htahir111@gmail.com> * Adding the ID of the producer pipeline run to artifact versions (#2431) * adding producer pipeline run id to artifact versions * reverting one of the changes * fixing type * Add vulnerability notice to README (#2437) * Add security vulnerability notice to README * add CVE ID * Allow more recent `adlfs` and `s3fs` versions (#2402) * bump azure integration * bump s3 * Add new property for filtering service account events (#2405) * add new property for filtering service account activities * Auto-update of Starter template --------- Co-authored-by: GitHub Actions <actions@github.com> * Add `download_files` method for `ArtifactVersion` (#2434) * add save_binary method * Fix file overwrite issue in save_artifact_binary_from_response() and improve error handling * refactor * tests ofc * add docs * linting * mypy fixes * ruff fix * coderabbit suggestions * missing docstring * docstring fix * Update artifact method name from save_binary to download_binary * more renaming (save -> download) * final rename (binary -> files) * update settings syntax * Fixing `update_model`s and revert #2402 (#2440) * fixing update models * reverting the update model changes * linting * linting * revert #2402 * revert adlfs changes --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> Co-authored-by: Alex Strick van Linschoten <stricksubscriptions@fastmail.fm> * Prepare release 0.55.3 (#2445) * alembic migration and bump version * release notes * add `save_models_to_registry` to CLI --------- Co-authored-by: Alex Strick van Linschoten <strickvl@users.noreply.github.com> Co-authored-by: GitHub Actions <actions@github.com> Co-authored-by: Christian Versloot <c.versloot@infoplaza.nl> Co-authored-by: François SERRA <francois.serra@adeo.com> Co-authored-by: jlopezpena <jlopezpena@users.noreply.github.com> Co-authored-by: Safoine El Khabich <34200873+safoinme@users.noreply.github.com> Co-authored-by: Alex Strick van Linschoten <stricksubscriptions@fastmail.fm> Co-authored-by: Hamza Tahir <htahir111@gmail.com> Co-authored-by: Barış Can Durak <36421093+bcdurak@users.noreply.github.com> Co-authored-by: Jayesh Sharma <wjayesh@outlook.com>
* starter files for the new CI paradigm * disable fast/slow ci on base branch * disable core workflow * Fast/slow CI core scaffold (zenml-io#2274) * give darglint check its own job * fastCI * add slowCI * reenable fast CI * remove comment * add integration tests * fix spellcheck context * enable slow CI for testing * remove unit test dependency * fix dependency installations * yamlfixed * Comment-driven CI (zenml-io#2275) * test comment-driven approach * delete unused test file * slow CI is comment-driven * restore CI * conditionally respond to comments depending on team status * add the whole team * Update .github/workflows/ci-slow.yml Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> * delete old CI --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> * remove spellcheck from slow CI * update spellcheck run conditions * Sharded integration tests for Ubuntu (zenml-io#2286) * add pytest-shard dev dependency * update script for sharded testing * add ubuntu sharding * fix naming * Use `pytest-split` to shard CI (zenml-io#2296) * add split test to action * Update user authentication logic * Fix bug in login functionality * Refactor test coverage script * Update excluded directories in pyproject.toml * Update integration test script to include shard number * Update integration test script to use matrix.shard * Update caching key in setup_environment action.yml * Update durations path in test-coverage-xml.sh * Update cache key in setup_environment action.yml * Auto-update of Starter template * Fix formatting issue in setup_environment action.yml * Refactor code to improve performance and readability --------- Co-authored-by: GitHub Actions <actions@github.com> * Update pyproject.toml Co-authored-by: Alex Strick van Linschoten <strickvl@users.noreply.github.com> * add extra final line * make workflows use normal ubuntu) * fix durations path and update docstring --------- Co-authored-by: Safoine El Khabich <34200873+safoinme@users.noreply.github.com> Co-authored-by: GitHub Actions <actions@github.com> * Auto-update of Starter template * Auto-update of NLP template * Auto-update of E2E template * add docker testing back in * Auto-update of E2E template * temporarily trigger slow CI * revert to comment-driven CI * run full slow CI * CI as it should be * pyyaml fix * fix docker compose installation * test * test * update templates test * ubuntu-unit tests * restore unit tests back to normal * fix matrix for slow CI * uncomment the conditional checks * add input variable * remove mac and windows for testing * split out slow and fast integration testing * naming fix * confirm mac and windows ok" * improve conditional checks * remove workflow_call * add fastCI back in * add db migration testing to CI * add db migration testing to CI-fast * actually include it now --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> Co-authored-by: Safoine El Khabich <34200873+safoinme@users.noreply.github.com> Co-authored-by: GitHub Actions <actions@github.com>
* starter files for the new CI paradigm * disable fast/slow ci on base branch * disable core workflow * Fast/slow CI core scaffold (zenml-io#2274) * give darglint check its own job * fastCI * add slowCI * reenable fast CI * remove comment * add integration tests * fix spellcheck context * enable slow CI for testing * remove unit test dependency * fix dependency installations * yamlfixed * Comment-driven CI (zenml-io#2275) * test comment-driven approach * delete unused test file * slow CI is comment-driven * restore CI * conditionally respond to comments depending on team status * add the whole team * Update .github/workflows/ci-slow.yml Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> * delete old CI --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> * remove spellcheck from slow CI * update spellcheck run conditions * Add GitHub issue creation on cache miss * test failing cache * Update Minio endpoint in setup_environment action.yml * Update minio-service endpoint in setup_environment action.yml * Sharded integration tests for Ubuntu (zenml-io#2286) * add pytest-shard dev dependency * update script for sharded testing * add ubuntu sharding * fix naming * Use `pytest-split` to shard CI (zenml-io#2296) * add split test to action * Update user authentication logic * Fix bug in login functionality * Refactor test coverage script * Update excluded directories in pyproject.toml * Update integration test script to include shard number * Update integration test script to use matrix.shard * Update caching key in setup_environment action.yml * Update durations path in test-coverage-xml.sh * Update cache key in setup_environment action.yml * Auto-update of Starter template * Fix formatting issue in setup_environment action.yml * Refactor code to improve performance and readability --------- Co-authored-by: GitHub Actions <actions@github.com> * Update pyproject.toml Co-authored-by: Alex Strick van Linschoten <strickvl@users.noreply.github.com> * add extra final line * make workflows use normal ubuntu) * fix durations path and update docstring --------- Co-authored-by: Safoine El Khabich <34200873+safoinme@users.noreply.github.com> Co-authored-by: GitHub Actions <actions@github.com> * Auto-update of Starter template * Auto-update of NLP template * Auto-update of E2E template * add docker testing back in * Auto-update of E2E template * temporarily trigger slow CI * revert to comment-driven CI * run full slow CI * CI as it should be * pyyaml fix * fix docker compose installation * test * test * update templates test * ubuntu-unit tests * restore unit tests back to normal * fix matrix for slow CI * uncomment the conditional checks * add input variable * remove mac and windows for testing * split out slow and fast integration testing * naming fix * confirm mac and windows ok" * improve hf and neuralprofet example * update the issue * update TOC (zenml-io#2406) * Correct docstring in integration init file (zenml-io#2408) * Fixed precedence * adding the new version to the migration tests (zenml-io#2411) * update js code for github cache miss * update context to github * add discord webhooks * Add Discord webhook support for notifications * allow fallback of cache failure * ignore if weebhock fails to to many request * Add PYTORCH integration to DockerSettings --------- Co-authored-by: Alex Strick van Linschoten <stricksubscriptions@fastmail.fm> Co-authored-by: Alex Strick van Linschoten <strickvl@users.noreply.github.com> Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> Co-authored-by: GitHub Actions <actions@github.com> Co-authored-by: Christian Versloot <c.versloot@infoplaza.nl> Co-authored-by: Hamza Tahir <htahir111@gmail.com> Co-authored-by: Barış Can Durak <36421093+bcdurak@users.noreply.github.com>
…l-io#2447) * Fix conditional statements in GitHub workflows (zenml-io#2404) * Fix conditional statements in GitHub workflows * rename core CI flows * slow CI check doesn't happen when draft * Auto-update of Starter template * fix double conditional --------- Co-authored-by: GitHub Actions <actions@github.com> * Ensure proper spacing in error messages (zenml-io#2399) * Ensure proper spacing in error messages * update TOC (zenml-io#2406) --------- Co-authored-by: Alex Strick van Linschoten <strickvl@users.noreply.github.com> * Fix hyperai markdown table (zenml-io#2426) * build: ⬆️ Upgrade min required google-cloud-aiplatform to 1.34.0 (zenml-io#2428) * Close code block left open in the docs (zenml-io#2432) * Fix docs * wrong ticks! * Simplify HF example and notify when cache is down (zenml-io#2300) * starter files for the new CI paradigm * disable fast/slow ci on base branch * disable core workflow * Fast/slow CI core scaffold (zenml-io#2274) * give darglint check its own job * fastCI * add slowCI * reenable fast CI * remove comment * add integration tests * fix spellcheck context * enable slow CI for testing * remove unit test dependency * fix dependency installations * yamlfixed * Comment-driven CI (zenml-io#2275) * test comment-driven approach * delete unused test file * slow CI is comment-driven * restore CI * conditionally respond to comments depending on team status * add the whole team * Update .github/workflows/ci-slow.yml Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> * delete old CI --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> * remove spellcheck from slow CI * update spellcheck run conditions * Add GitHub issue creation on cache miss * test failing cache * Update Minio endpoint in setup_environment action.yml * Update minio-service endpoint in setup_environment action.yml * Sharded integration tests for Ubuntu (zenml-io#2286) * add pytest-shard dev dependency * update script for sharded testing * add ubuntu sharding * fix naming * Use `pytest-split` to shard CI (zenml-io#2296) * add split test to action * Update user authentication logic * Fix bug in login functionality * Refactor test coverage script * Update excluded directories in pyproject.toml * Update integration test script to include shard number * Update integration test script to use matrix.shard * Update caching key in setup_environment action.yml * Update durations path in test-coverage-xml.sh * Update cache key in setup_environment action.yml * Auto-update of Starter template * Fix formatting issue in setup_environment action.yml * Refactor code to improve performance and readability --------- Co-authored-by: GitHub Actions <actions@github.com> * Update pyproject.toml Co-authored-by: Alex Strick van Linschoten <strickvl@users.noreply.github.com> * add extra final line * make workflows use normal ubuntu) * fix durations path and update docstring --------- Co-authored-by: Safoine El Khabich <34200873+safoinme@users.noreply.github.com> Co-authored-by: GitHub Actions <actions@github.com> * Auto-update of Starter template * Auto-update of NLP template * Auto-update of E2E template * add docker testing back in * Auto-update of E2E template * temporarily trigger slow CI * revert to comment-driven CI * run full slow CI * CI as it should be * pyyaml fix * fix docker compose installation * test * test * update templates test * ubuntu-unit tests * restore unit tests back to normal * fix matrix for slow CI * uncomment the conditional checks * add input variable * remove mac and windows for testing * split out slow and fast integration testing * naming fix * confirm mac and windows ok" * improve hf and neuralprofet example * update the issue * update TOC (zenml-io#2406) * Correct docstring in integration init file (zenml-io#2408) * Fixed precedence * adding the new version to the migration tests (zenml-io#2411) * update js code for github cache miss * update context to github * add discord webhooks * Add Discord webhook support for notifications * allow fallback of cache failure * ignore if weebhock fails to to many request * Add PYTORCH integration to DockerSettings --------- Co-authored-by: Alex Strick van Linschoten <stricksubscriptions@fastmail.fm> Co-authored-by: Alex Strick van Linschoten <strickvl@users.noreply.github.com> Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> Co-authored-by: GitHub Actions <actions@github.com> Co-authored-by: Christian Versloot <c.versloot@infoplaza.nl> Co-authored-by: Hamza Tahir <htahir111@gmail.com> Co-authored-by: Barış Can Durak <36421093+bcdurak@users.noreply.github.com> * Adding the latest version id and name to the artifact response (zenml-io#2430) * update TOC (zenml-io#2406) * Correct docstring in integration init file (zenml-io#2408) * Fixed precedence * adding the new version to the migration tests (zenml-io#2411) * adding latest version name and id to artifact response * removed optional column from the conftest --------- Co-authored-by: Alex Strick van Linschoten <strickvl@users.noreply.github.com> Co-authored-by: Christian Versloot <c.versloot@infoplaza.nl> Co-authored-by: Hamza Tahir <htahir111@gmail.com> * Adding the ID of the producer pipeline run to artifact versions (zenml-io#2431) * adding producer pipeline run id to artifact versions * reverting one of the changes * fixing type * Add vulnerability notice to README (zenml-io#2437) * Add security vulnerability notice to README * add CVE ID * Allow more recent `adlfs` and `s3fs` versions (zenml-io#2402) * bump azure integration * bump s3 * Add new property for filtering service account events (zenml-io#2405) * add new property for filtering service account activities * Auto-update of Starter template --------- Co-authored-by: GitHub Actions <actions@github.com> * Add `download_files` method for `ArtifactVersion` (zenml-io#2434) * add save_binary method * Fix file overwrite issue in save_artifact_binary_from_response() and improve error handling * refactor * tests ofc * add docs * linting * mypy fixes * ruff fix * coderabbit suggestions * missing docstring * docstring fix * Update artifact method name from save_binary to download_binary * more renaming (save -> download) * final rename (binary -> files) * update settings syntax * Fixing `update_model`s and revert zenml-io#2402 (zenml-io#2440) * fixing update models * reverting the update model changes * linting * linting * revert zenml-io#2402 * revert adlfs changes --------- Co-authored-by: Andrei Vishniakov <31008759+avishniakov@users.noreply.github.com> Co-authored-by: Alex Strick van Linschoten <stricksubscriptions@fastmail.fm> * Prepare release 0.55.3 (zenml-io#2445) * alembic migration and bump version * release notes * add `save_models_to_registry` to CLI --------- Co-authored-by: Alex Strick van Linschoten <strickvl@users.noreply.github.com> Co-authored-by: GitHub Actions <actions@github.com> Co-authored-by: Christian Versloot <c.versloot@infoplaza.nl> Co-authored-by: François SERRA <francois.serra@adeo.com> Co-authored-by: jlopezpena <jlopezpena@users.noreply.github.com> Co-authored-by: Safoine El Khabich <34200873+safoinme@users.noreply.github.com> Co-authored-by: Alex Strick van Linschoten <stricksubscriptions@fastmail.fm> Co-authored-by: Hamza Tahir <htahir111@gmail.com> Co-authored-by: Barış Can Durak <36421093+bcdurak@users.noreply.github.com> Co-authored-by: Jayesh Sharma <wjayesh@outlook.com>
The slow CI will only run whenever someone (from the zenml core team) posts a
/fulltest
comment on the CI.Unfortunately as per Github docs this new triggering will only come alive once the commit is merged onto the default branch (i.e.
main
i.e. after a new release) so you won't see any triggering here yet.Problems:
strickvl1
I think it'd pass the check + launch the workflow. Open to ideas / suggestions for improving this!Summary by CodeRabbit