Publish¶
When the lab works on your machine, put it where other people can open it.
The site reads the lab from a public repository on GitHub. GitHub stores a project online. Git is the tool that records the project's files, and a push sends the recorded files to GitHub.
Create a public repository. Put one lab in each directory, with the same files you used locally: index.md, config.yaml, and setup.sh or data/ when the lab has them. Push. The repository holds the labs. It does not need trylab, packer, or the disks you built.
Sign in at https://runlabs.io with the button Log in with Google. Open your profile from the account menu, and choose Author settings. Enter the repository as owner/name and save it. The site reads the repository and lists the labs it finds.
Open the Labs tab, then open a lab.
Press Build when the page offers it. Build prepares the disk and does not publish the lab. A build can take several minutes. A lab on the shared disk is ready once that disk exists on the site, and later labs reuse it. A lab with its own disk waits until its build has finished.
A lab with snapshot: true also waits until its snapshot has been saved. Build saves the snapshot, and Publish stays unavailable until that save exists.
When the page says the lab is ready to publish, press Publish. The lab joins the catalog.
After you change the lab¶
Push the change, then press Refresh repository on the Labs tab.
A change to the lesson, the title, the description, or a service is used the next time the lab opens.
Press Build again when you changed setup.sh, a file under data/, or the disk size, and when you turned a snapshot on. The new disk replaces the old one. Publish stays as you left it. Learners open the new disk after the build finishes.