Skip to content

canonical/workshop

Workshop

Workshops are secure, fast, and composable development environments that come agent-ready.

List your dependencies and components in YAML to define an environment. The key pieces of a definition are SDKs, independent but connectable units of functionality created by software publishers and available on the SDK Store. Workshop simplifies experiments with your environment layout.

It allows you to focus on adding value to your project. With Workshop, you can launch a setup that previously took hours to configure in a few commands, and be sure that it stays operational. It assists in issue reproduction, enables hands-on code reviews, and turns environment updates into manageable transactions, reducing the need to battle with your tooling every day.

Using Workshop

In the directory of the project that you want to use with Workshop, create a workshop definition file named workshop.yaml to list your project's prerequisites, then run workshop launch:

name: dev
base: ubuntu@24.04
sdks:
  - name: go
workshop launch

Workshop downloads and installs the SDKs your definition lists; the project is now ready to use them.

Installation

Workshop is supported on Ubuntu and other snap-enabled Linux distributions.

Prerequisites

Workshop requires LXD 6.8+ for low-level operation.

If the snap install command reports an issue with LXD, install a recent LXD version with snap:

sudo snap install --channel=6/stable lxd  # to install
sudo snap refresh --channel=6/stable lxd  # to update

Install Workshop

Install the snap using the --classic option:

sudo snap install --classic workshop

The downside of this method is that you will need to manually check for and install updates.

Documentation

Refer to the Tutorial in our docs for a detailed introduction to Workshop.

To know more about SDKcraft, the SDK authoring tool for Workshop, jump straight to the SDK crafting guide in our docs.

For reference examples of SDK implementation, see the reference SDKs repository.

Community and Support

Use the following resources for communication, support, and feedback:

Contributions

To join the development effort, see How to contribute.

License

Workshop is released under the GPL-3.0 license.

The documentation is licensed under CC-BY-SA 4.0.

About

Workshops are secure, fast, and composable development environments that come agent-ready.

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages