-
Notifications
You must be signed in to change notification settings - Fork 73
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
[JENKINS-59342] Builds / Nodes / Items bundles #198
Conversation
Still need to check on those failing tests in windows. |
src/main/java/com/cloudbees/jenkins/support/actions/SupportAbstractItemAction.java
Outdated
Show resolved
Hide resolved
src/main/java/com/cloudbees/jenkins/support/actions/SupportComputerAction.java
Outdated
Show resolved
Hide resolved
src/main/java/com/cloudbees/jenkins/support/actions/SupportObjectAction.java
Show resolved
Hide resolved
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.
One question: what happens when the content to be zipped and downloaded is big? Are there issues creating the ZIP? Or downloading it?
src/main/java/com/cloudbees/jenkins/support/actions/SupportObjectAction.java
Show resolved
Hide resolved
src/main/java/com/cloudbees/jenkins/support/actions/SupportObjectAction.java
Outdated
Show resolved
Hide resolved
src/main/java/com/cloudbees/jenkins/support/actions/SupportRunAction.java
Outdated
Show resolved
Hide resolved
src/main/java/com/cloudbees/jenkins/support/api/ComponentVisitor.java
Outdated
Show resolved
Hide resolved
* @param <C> Object that extends {@link AbstractModelObject} | ||
* @return | ||
*/ | ||
public <C extends AbstractModelObject> boolean isApplicable(Class<C> clazz) { |
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 did you need this now?
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.
To be able to have component that can be used at root level, and also at another level (Computer
, Build
, Item
, ....). This method is used to list the components that can be used by from an Action. For example, we have a component DumpExportTable
that get the exports table of all nodes when used from the root action. We can use the same component from the Node action to get the content only for the node.
Maybe there is a better design for this. I am open to suggestions.
src/main/java/com/cloudbees/jenkins/support/impl/DirectoryComponent.java
Outdated
Show resolved
Hide resolved
src/main/java/com/cloudbees/jenkins/support/impl/DirectoryComponent.java
Outdated
Show resolved
Hide resolved
src/main/java/com/cloudbees/jenkins/support/impl/DumpExportTable.java
Outdated
Show resolved
Hide resolved
src/main/java/com/cloudbees/jenkins/support/impl/SystemConfiguration.java
Outdated
Show resolved
Hide resolved
src/main/java/com/cloudbees/jenkins/support/impl/SystemConfiguration.java
Outdated
Show resolved
Hide resolved
cbf1261
to
fdb398c
Compare
@varyvol This is going through the same method than the root Support Bundle generation. Subjected to the same technical vulnerabilities. |
@Dohbedoh but the same technical limitations might work for a situation and not for others. For example, imagine a limitation is the bundle has a maximum capacity of 10mb that is very rarely reached with the usual bundle but will always be reached through this use case. That would make this use case unusable in the practice. The code itself looks good, but there are test failures. Could you review them? |
I believe that if we were applying such kind of limitation, we could also add configurability to it, depending on what the scenario. I will check on this. Tests are failing on Windows. I have tested the plugin in a instance running on windows and confirmed that it works. I haven't run the tests in a windows environment though... |
I did find out that the ZIP entries in the case of windows have a mix of path separators, for example |
JENKINS-59342: Provide the ability for Administrators to download contents for Builds, Items and Nodes. Details in the JIRA.
@MRamonLeon @aheritier @Evildethow @varyvol