Skip to content
This repository was archived by the owner on Sep 1, 2022. It is now read-only.

Commit 3f0450a

Browse files
author
Sam Lanning
authored
Merge pull request #16 from github/learninglab-course
Add instructions for creating Learning Lab Course
2 parents b0d31f6 + af1aaa3 commit 3f0450a

File tree

22 files changed

+454
-7
lines changed

22 files changed

+454
-7
lines changed

.github/workflows/ci.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,12 @@ jobs:
4040
run: docker login docker.pkg.github.com -u github-actions -p ${{ secrets.GITHUB_TOKEN }}
4141

4242
- name: Build Images & Run Queries
43-
run: cd courses/template && ../../scripts/test-course-actual.sh
43+
run: cd templates/action && ../../scripts/test-course-actual.sh
4444
test-courses-template-latest:
4545
runs-on: ubuntu-latest
4646
steps:
4747
- name: Checkout
4848
uses: actions/checkout@v1
4949

5050
- name: Build Images & Run Queries
51-
run: cd courses/template && ../../scripts/test-course-latest.sh
51+
run: cd templates/action && ../../scripts/test-course-latest.sh

README.md

Lines changed: 35 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -29,11 +29,12 @@ including links to the lines of source code on GitHub when possible:
2929
**Table of Contents**
3030

3131
- [Creating your own course](#creating-your-own-course)
32-
- [Creating the GitHub Action](#creating-the-github-action)
32+
- [Creating the Query Checking Action](#creating-the-query-checking-action)
3333
- [Testing the action](#testing-the-action)
3434
- [Adding new queries & calculating the contents for the CSV files](#adding-new-queries--calculating-the-contents-for-the-csv-files)
3535
- [Publishing your action](#publishing-your-action)
3636
- [Contributing your GitHub Action to this repository](#contributing-your-github-action-to-this-repository)
37+
- [Creating the Learning Lab Course](#creating-the-learning-lab-course)
3738
- [Example Courses](#example-courses)
3839
- [Contributing](#contributing)
3940
- [Releasing new versions or updating dependencies](#releasing-new-versions-or-updating-dependencies)
@@ -46,7 +47,7 @@ including links to the lines of source code on GitHub when possible:
4647
There are two main components to any Learning Lab course for CodeQL that uses
4748
the components in this repository:
4849

49-
* **Query Checking Action:**
50+
* [**Query Checking Action:**](#creating-the-query-checking-action)
5051

5152
Each course has its own GitHub Action that is designed to be used in workflows
5253
that run when a course participant pushes new commits to their repo.
@@ -66,7 +67,7 @@ the components in this repository:
6667
and made available using
6768
[GitHub Packages](https://github.com/features/packages).
6869

69-
* **Learning Lab Course:**
70+
* [**Learning Lab Course:**](#creating-the-learning-lab-course)
7071

7172
This is the course itself.
7273
It creates the initial repository the participant will use for their course,
@@ -75,7 +76,7 @@ the components in this repository:
7576
has completed the current task correctly,
7677
and is ready to advance to the next one.
7778

78-
### Creating the GitHub Action
79+
### Creating the Query Checking Action
7980

8081
*(for an example of a working action,
8182
see [`courses/cpp/ctf-segv`](courses/cpp/ctf-segv)).*
@@ -150,7 +151,7 @@ we recommend structuring your course folder like so:
150151

151152
*(For your convinience,
152153
we've created a template course that uses this file-structure
153-
in the folder [`courses/template`](courses/template).
154+
in the folder [`templates/action`](templates/action).
154155
You can simply copy the folder,
155156
and follow the instructions in the template README for what things to replace).*
156157

@@ -264,6 +265,35 @@ ensure that:
264265
[`.github/workflows/publish.yml`](.github/workflows/publish.yml) to include
265266
testing and image publishing for your course.
266267

268+
### Creating the Learning Lab Course
269+
270+
If you have not created a Learning Lab course before,
271+
it is recommended to take the
272+
[course on creating a course](https://lab.github.com/githubtraining/write-a-learning-lab-course)!
273+
274+
There are core repositories that need to be created as part of any learning-lab
275+
course:
276+
277+
* **The course repository:**
278+
All the course configuration, instructions etc...
279+
* **The template repository:**
280+
The initial contents that populate the repository
281+
created on behalf of the course participant.
282+
(All courses are taken with respect to it's own repository)
283+
284+
We've created two template directories
285+
that you can use as a starting point for your own CodeQL Learning Lab Course:
286+
287+
* [`templates/learninglab/course`](templates/learninglab/course)
288+
* [`templates/learninglab/course-template`](templates/learninglab/course-template)
289+
290+
Simply copy the contents of these templates into their own repositories,
291+
and follow the [template instructions](templates/learninglab) to get started.
292+
293+
*(Remember that you need to create 2 separate repositories
294+
for your Learning Lab course,
295+
they can't be directories in an existing repo).*
296+
267297
## Example Courses
268298

269299
* [GitHub Security Lab CTF 1: SEGV hunt](courses/cpp/ctf-segv)
File renamed without changes.
File renamed without changes.
File renamed without changes.

0 commit comments

Comments
 (0)