Enable Threat Dragon as a part of CI/CD Pipelines #365
-
While I was pondering over this at #88, I think we should definitely have a well-documented API, but along with it, also have a GitHub Action that makes the integration of Threat Dragon really easy for organisations. I discussed this with @jgadsden and we think this can be a great project for this year's Google Summer of Code too under OWASP! Once we have a more concrete plan on this, we can apply for it here too on the OWASP Project Ideas for GSOC 22 for Approval! But we need to be quick here with this. Open to discussions over this(quite literally)! |
Beta Was this translation helpful? Give feedback.
Replies: 9 comments 24 replies
-
This feature would certainly be good to have - and once it is in organisations CI/CD pipelines then it will be a critical feature ... as in we must not break it :) Shubham provided this link to OWASP's involvement with GSoC: |
Beta Was this translation helpful? Give feedback.
-
Totally agreed. This would help Threat Dragon stand out quite a bit. Another idea I've toyed with in the past is creating a Jenkins plugin as well. I'm not sure how nicely node will play with a Jenkins plugin (I've only seen them in Java), though I'm sure it can be accomplished. GH Actions are already node, and seem relatively easy to write/publish. I'm 100% behind this. I think the hardest part is going to be figuring out exactly how the API works, structuring it well, etc. :) |
Beta Was this translation helpful? Give feedback.
-
I agree with @lreading too! So we need to ideate on the API Structuring and a basic Schema defining followed by deciding the parameters we provide to the users. We can follow the REST Architecture so that even though the Jenkins plugin is written in Java, all we need to do is to call the API. Adding to the clients, what are your thoughts on making this available via various package managers like npm, cargo, etc? Since we'd already have a REST API, all of this might not be that big of a hassle but will add well to our library support! |
Beta Was this translation helpful? Give feedback.
-
@jgadsden Google gives us 2 duration options to choose from, one is 175 hours while the other is 350 hours. As per my experience, I feel we can have the 175 hour option and have the Goals as:
The Jenkins Plugin can be an added brownie. Open to your thoughts on defining the Goals so that we can then work further on the Mentee requirements and how one can get started! @jgadsden @lreading |
Beta Was this translation helpful? Give feedback.
-
We have a few decisions to make regarding GSoC - as we are going to apply this weekend: I have major surgery in Mid March, with some months of recuperation expected, so I am not sure how well I can be a mentor @ShubhamPalriwala if you like we can list you as a contributor on the OWASP project page - this will show your status on the project when people are considering this idea: |
Beta Was this translation helpful? Give feedback.
-
We have the timeline and ideally we need to get this done by tomorrow - this will give OWASP time to apply to Google: @andk123 and @lreading if you are OK with being a mentor then this is the snippet from OWASP instructions you may need to follow: Here is the proposed wording (@andk123 I do not have an email address for you so have put your github profile) OWASP Threat DragonThreat Dragon is a threat modeling tool used as part of a secure development lifecycle, and is widely used by many organisations and companies to create threat model diagrams. It is an OWASP Lab project and is in the process of developing a new version using Vue and Node. Explanation of IdeasOf the various features that are waiting to be implemented for Threat Dragon, the one chosen for GSoC is self contained and directly visible to users of the project. Enable Threat Dragon as a part of CI/CD PipelinesThreat Dragon is used by many companies and organisations for their threat models. At the moment it is not easy to use Threat Dragon in a CI/CD pipeline, and it would be great if CI/CD pipeline integration was provided by Threat Dragon. This is a feature that is at the beginning of development, which allows the developer to design it from scratch and see it all the way through to acceptance by the Threat Dragon community. Expected Results
Getting started
Mentors
|
Beta Was this translation helpful? Give feedback.
-
Cool, thanks everyone - I will add the email address and then submit the pull request |
Beta Was this translation helpful? Give feedback.
-
Hey so quick update, I'm starting my research and understanding the following tools to see what all they've provided wrt CI/CD: Let me know if yall have anything in mind. |
Beta Was this translation helpful? Give feedback.
-
Looks good @ShubhamPalriwala - you may like to look at pytm and threagile as well, but I do not think I see any CI/CD pipeline integration for these |
Beta Was this translation helpful? Give feedback.
We have the timeline and ideally we need to get this done by tomorrow - this will give OWASP time to apply to Google:
https://developers.google.com/open-source/gsoc/timeline
@andk123 and @lreading if you are OK with being a mentor then this is the snippet from OWASP instructions you may need to follow:
Subscribing as mentor
To subscribe as mentor, you need to complete a few easy steps.
Contact the OWASP GSoC administrators to let them know which project you want to mentor for
Log in to Google Summer of Code Program Site
Apply as a mentor for OWASP
Subscribe to https://groups.google.com/d/forum/owasp-gsoc
Here is the proposed wording (@andk123 I do not have an email address for you so have…