@@ -11,10 +11,181 @@ app.factory('Backend', ['$http',
1111 } ;
1212 } ;
1313
14+ // return {
15+ // bootcamp: get('data/bootcamp.json'),
16+ // projects: get('data/projects.json')
17+ // };
1418 return {
15- bootcamp : get ( 'data/bootcamp.json' ) ,
16- projects : get ( 'data/projects.json' )
17- } ;
19+ bootcamp : function ( ) {
20+ return {
21+ "Bootcamp" : [ {
22+ "Week" : 1 ,
23+ "Title" : "Getting Started" ,
24+ "Objectives" : [ "some objectives" , "some objectives" , "some objectives" ] ,
25+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-1/README.md" ,
26+ "Lessons" : [ {
27+ "number" : 1 ,
28+ "name" : "Introductions" ,
29+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-1/LESSON-1.md"
30+ } , {
31+ "number" : 2 ,
32+ "name" : "Lab Guides" ,
33+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-1/LESSON-2.md"
34+ } , {
35+ "number" : 3 ,
36+ "name" : "Let's Get Moving!" ,
37+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-1/LESSON-3.md"
38+ } ]
39+ } , {
40+ "Week" : 2 ,
41+ "Title" : "Building a Weak Application (Development)" ,
42+ "Objectives" : [ "Develop a Rails API" , "Deploy to AWS manually" , "Explore AWS-CLI & AWS-SDK" ] ,
43+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-2/README.md" ,
44+ "Lessons" : [ {
45+ "number" : 1 ,
46+ "name" : "" ,
47+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-2/LESSON-1.md"
48+ } , {
49+ "number" : 2 ,
50+ "name" : "" ,
51+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-2/LESSON-2.md"
52+ } , {
53+ "number" : 3 ,
54+ "name" : "" ,
55+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-2/LESSON-3.md"
56+ } ]
57+ } , {
58+ "Week" : 3 ,
59+ "Title" : "Security" ,
60+ "Objectives" : [ "Deploy a Vulnerable application to AWS" , "Attack the application using different techniques (e.g. OWASP Top 10)" , "Explore security tools (e.g. Metasploit, NMap, SQLMap, BurpSuite ...etc)" ] ,
61+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-3/README.md" ,
62+ "Lessons" : [ {
63+ "number" : 1 ,
64+ "name" : "" ,
65+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-3/LESSON-1.md"
66+ } , {
67+ "number" : 2 ,
68+ "name" : "" ,
69+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-3/LESSON-2.md"
70+ } , {
71+ "number" : 3 ,
72+ "name" : "" ,
73+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-3/LESSON-3.md"
74+ } ]
75+ } , {
76+ "Week" : 4 ,
77+ "Title" : "Keeping the Weak Alive (Operations)" ,
78+ "Objectives" : [ "Understanding data generated by attackers" , "Detection & alerting with Splunk" ] ,
79+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-4/README.md" ,
80+ "Lessons" : [ {
81+ "number" : 1 ,
82+ "name" : "" ,
83+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-4/LESSON-1.md"
84+ } , {
85+ "number" : 2 ,
86+ "name" : "" ,
87+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-4/LESSON-2.md"
88+ } , {
89+ "number" : 3 ,
90+ "name" : "" ,
91+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-4/LESSON-3.md"
92+ } ]
93+ } , {
94+ "Week" : 5 ,
95+ "Title" : "Building a Rugged Application (Development)" ,
96+ "Objectives" : [ "Service Oriented Architecture (SOA)" , "Automated AWS Deployments with CloudFormation" , "Whitelisting & Attack Maps" ] ,
97+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-5/README.md" ,
98+ "Lessons" : [ {
99+ "number" : 1 ,
100+ "name" : "" ,
101+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-5/LESSON-1.md"
102+ } , {
103+ "number" : 2 ,
104+ "name" : "" ,
105+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-5/LESSON-2.md"
106+ } , {
107+ "number" : 3 ,
108+ "name" : "" ,
109+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-5/LESSON-3.md"
110+ } ]
111+ } , {
112+ "Week" : 6 ,
113+ "Title" : "Rugged Security" ,
114+ "Objectives" : [ "Account Takeovers" , "Advanced cloud hacking techniques" , "Lateral movement & privilege escalation" ] ,
115+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-6/README.md" ,
116+ "Lessons" : [ {
117+ "number" : 1 ,
118+ "name" : "" ,
119+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-6/LESSON-1.md"
120+ } , {
121+ "number" : 2 ,
122+ "name" : "" ,
123+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-6/LESSON-2.md"
124+ } , {
125+ "number" : 3 ,
126+ "name" : "" ,
127+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-6/LESSON-3.md"
128+ } ]
129+ } , {
130+ "Week" : 7 ,
131+ "Title" : "Rugged Operations" ,
132+ "Objectives" : [ "Restacking AWS Accounts" , "Forensics in the Cloud" , "Incident Response in the Cloud" ] ,
133+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-7/README.md" ,
134+ "Lessons" : [ {
135+ "number" : 1 ,
136+ "name" : "" ,
137+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-7/LESSON-1.md"
138+ } , {
139+ "number" : 2 ,
140+ "name" : "" ,
141+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-7/LESSON-2.md"
142+ } , {
143+ "number" : 3 ,
144+ "name" : "" ,
145+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-7/LESSON-3.md"
146+ } ]
147+ } , {
148+ "Week" : 8 ,
149+ "Title" : "Red Team vs Blue Team (Hack Lab)" ,
150+ "Objectives" : [ "Put all your skills together" , "Hack all the things" , "Don't get caught by the Blue Team" ] ,
151+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-8/README.md" ,
152+ "Lessons" : [ {
153+ "number" : 1 ,
154+ "name" : "" ,
155+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-8/LESSON-1.md"
156+ } , {
157+ "number" : 2 ,
158+ "name" : "" ,
159+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-8/LESSON-2.md"
160+ } , {
161+ "number" : 3 ,
162+ "name" : "" ,
163+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-8/LESSON-3.md"
164+ } ]
165+ } , {
166+ "Week" : 9 ,
167+ "Title" : "Presentations: 5-minute Demos" ,
168+ "Objectives" : [ "Problem-sovling" , "Contribute to the open-source community" , "" ] ,
169+ "url" : "https://github.com/devsecops/bootcamp/blob/master/Week-9/README.md" ,
170+ "Lessons" : [ {
171+ "number" : 1 ,
172+ "name" : "" ,
173+ "url" : ""
174+ } , {
175+ "number" : 2 ,
176+ "name" : "" ,
177+ "url" : ""
178+ } , {
179+ "number" : 3 ,
180+ "name" : "" ,
181+ "url" : ""
182+ } ]
183+ } ]
184+ } } ,
185+ projects : function ( ) {
186+ return { "All projects" : [ "awesome-devsecops" , "controlplane" , "heroes" , "raindance" , "radar" , "assumer" , "playbook" , "devsecops" , "forecast" , "firebolt" , "weatherman" , "foghorn" , "experiments" , "catv" , "science" , "aws-policies" , "ssl_checks" ]
187+ } }
188+ }
18189 }
19190 ] )
20191 . controller ( 'MainCtrl' , [ 'Backend' , '$scope' , 'filterFilter' , '$anchorScroll' ,
@@ -35,7 +206,7 @@ app.factory('Backend', ['$http',
35206 dataType : 'jsonp' ,
36207 jsonpCallback : 'JSON_CALLBACK' ,
37208 success : function ( data ) {
38- var projects = data [ 0 ] . AllProjects ;
209+ var projects = data [ 0 ] . Bootcamp ;
39210 $scope . currentPage = 1 ; //current page
40211 $scope . maxSize = 5 ; //pagination max size
41212 $scope . entryLimit = 36 ; //max rows for data table
0 commit comments