-
-
Notifications
You must be signed in to change notification settings - Fork 678
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
Fix and update all remote modules to adhere to new testing structure #1828
Comments
For modules without a |
Shouldn't we disable and delete the current configuration after we make the new configuration work? So move current steps 1 and 2 to be after current step 6. As @thewtex set up most of the current testing infrastructure, he can best advise about changes. He also has all the necessary authorizations. Me and the other admins probably have most authorizations too, but there are so many moving pieces I never learned them all 😞 |
It is good to hear that remotes will have another round of updates! Thanks for working on this @mseng10. |
@dzenanz Putting steps 1 and 2 after 6, would be better practice. Thank you for catching this. |
Sounds interesting @mseng10. For RTK, @LucasGandel recently setup Azure pipelines for tests and for the python packages... Before following these steps, can you confirm that they apply to modules which are not hosted by InsightSoftwareConsortium? |
We can remove the Python package sections from the configuration for these modules, ... or we can add Python wrapping configuration :-).
Most of AppVeyor has already been disabled. For CircleCI, and TravisCI, I think anyone with GitHub permissions on the repository should be able to disable them.
The recent updates will result in the removal of many moving pieces and many administrative headaches 🤯
Yes, the GitHub Actions configuration to .github/workflows/build-test-package.yml -- it may work without any other modifications. |
@thewtex Just to clarify, we are removing Azure pipeline testing? |
Interestingly, RTK ended up being ticked but I haven't seen any change on RTK's repository. Can you explain this to me? |
@SimonRit I ticked it my mistake, the cxx and python builds still need to be integrated. The issue has been updated. |
@thewtex Some of the remote modules require additional cmake configurations to complete their respective builds. For the After inspecting the documentation and scripts, I was unable to find anything, but I just wanted to clarify. If not, how should we go about handling these cases? |
@mseng10 there is not currently a way to pass additional CMake flags to the module Python packaging scripts. What are the flags required? Is there a way to make these flags the default in the Python package builds? |
@thewtex I have only found a couple instances. An example can be module |
SimonRit/RTK#376 implements it for the RTK module with some additional changes proposed in InsightSoftwareConsortium/ITKModuleTemplate#94. The |
Harmonizing things is welcome! But do not confuse module template's own CI with the generated project's CI. |
Thanks, I had indeed missed this since I modified an existing module, sorry. Except for the pypi upload which would be pointless in the template, shouldn't the two be the same? |
Module template also needs to invoke the cookie cutter generation step, which should not be done in regular modules. The generated project's CI should be mostly the same as regular modules (except an occasional peculiarity). PRs are welcome! |
This issue has been automatically marked as stale because it has not had recent activity. Thank you for your contributions. |
Has this been fully accomplished? If so, we can close the issue. |
This issue has been automatically marked as stale because it has not had recent activity. Thank you for your contributions. |
There are a few remote modules that are still relying on (failing) CircleCI checks. According to the issue description these should probably be migrated to Github Actions before the issue can be closed. |
Slightly related to #4748: many remotes' CIs are being updated concurrently as they are visited to make the transition towards using |
Description
All of ITK's remote modules must be configured to build and test cleanly using ITK version 5.1.0. In addition, all remote modules must adhere to the new automated testing structure that requires the deprecation of CircleCI, Travis, AppVeyor and Azure pipeline testing with the new implementation of GitHub Actions. Using GitHub Actions we can allow users to test their respective changes without the authorization of an administrator.
Tasks
I will be updating these modules on a per module basis, with each containing their own respective PR. For each PR, the branch to be merged with be labeled github-actions. In addition, I will be contacting @hjmjohnson about needed authorized actions.
Below is a list of tasks that must be accomplished in the following order. This list is derived from a remote module's previous PR here.
Bump remote module version to 5.1 in CMakeList.txt
Bump
itk
version to 5.1 ininstall_requires
in the setup.py fileCopy GitHub Actions configuration files from ITKModuleTemplate to specific remote module and update README to contain new GitHub Actions Badge.
Make PR and monitor builds. Any issues must be fixed or have an issued created that is dedicated to the specific problem
Disable current automated testing scripts. This must be done by either @hjmjohnson, @dzenanz or @thewtex as they currently have administrative control.
a. CircleCI
b. AppVeyor
c. Travis
d. Azure pipelines
Delete CircleCI, AppVeyor, Travis and Azure pipeline configuration files.
@hjmjohnson contacts @thewtex about Python package name, @thewtex will add @hjmjohnson to the maintainer list on PyPI.
@hjmjohnson Creates an API token on PyPI for the package, and puts in the repository Settings -> Secrets under the key pypi_password.
Create new Git tag, either locally and pushing, or in the GitHub web Release page, this will trigger builds and push the packages to PyPI.
Update ${MODULE}.remote.cmake to reflect
Grading Level Criteria Report
TODO
Below is a list of remote modules to completed for the new testing configurations. These will be completed in order from TOP to BOTTOM through the advice of @hjmjohnson.
NOTE: If a module has already been completed, please update the issue.
The text was updated successfully, but these errors were encountered: