@@ -21,14 +21,51 @@ including links to the lines of source code on GitHub when possible:
21
21
22
22
![ ] ( docs/comment_screenshot.png )
23
23
24
- ## Usage
24
+ ## Creating your own course
25
+
26
+ There are two main components to any Learning Lab course for CodeQL that uses
27
+ the components in this repository:
28
+
29
+ * ** Query Checking Action:**
30
+
31
+ Each course has its own GitHub Action that is designed to be used in workflows
32
+ that run when a course participant pushes new commits to their repo.
33
+ The action will check which queries have changed in the push,
34
+ and run the queries that it recognizes as part of the course
35
+ (based on the filename).
36
+
37
+ After running the queries,
38
+ the action will check the results against a CSV file of expected results.
39
+ It will then post a comment on the commit,
40
+ detailing whether each query produced the correct results or not.
41
+ And if not,
42
+ it will include details of which results are missing,
43
+ and which results are unexpected.
44
+
45
+ These actions are bundled using Docker,
46
+ and made available using
47
+ [ GitHub Packages] ( https://github.com/features/packages ) .
48
+
49
+ * ** Learning Lab Course:**
50
+
51
+ This is the course itself.
52
+ It creates the initial repository the participant will use for their course,
53
+ posts instructions as GitHub issues,
54
+ and listens for comments posted by the GitHub action to know when the user
55
+ has completed the current task correctly,
56
+ and is ready to advance to the next one.
57
+
58
+ ### Creating a GitHub Action
59
+
60
+ TODO
61
+
62
+ ### Contributing your GitHub Action to this repository
25
63
26
64
TODO
27
65
28
66
## Example Courses
29
67
30
- There are currently no published courses that use this repository,
31
- when this changes, we'll add a list here.
68
+ * [ GitHub Security Lab CTF 1: SEGV hunt] ( courses/cpp/ctf-segv )
32
69
33
70
Feel free to add your own courses to this list!
34
71
See [ CONTRIBUTING.md] ( CONTRIBUTING.md ) .
0 commit comments