Skip to content

Commit

Permalink
Merge pull request #91 from epics-containers/md
Browse files Browse the repository at this point in the history
Final changes for the new copier template based workflow
  • Loading branch information
gilesknap committed Feb 18, 2024
2 parents 9818810 + 2ba33d0 commit 8e64399
Show file tree
Hide file tree
Showing 7 changed files with 160 additions and 271 deletions.
Binary file added docs/images/lakeshore_releases.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
14 changes: 14 additions & 0 deletions docs/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,20 @@ html_theme.sidebar_secondary.remove: true
:end-before: <!-- README only content
```

Update for February 2024
------------------------

The tutorials have now been updated. Recent changes include:

- epics-containers-cli has been renamed to edge-containers-cli. It now supports the deployment of general services as well as IOCs. It still has the entrypoint `ec` but the namespace `ioc` has been dropped and its functions are now in the root (e.g. `ec ioc deploy` is now `ec deploy`).
- Improved CI for {any}`ec-services-repo`s and generic IOCs repos.
- copier template based creation of new beamline, accelerator and generic IOC repos.
- This provides greatly improved ability to adopt updates to the template into your own repositories.

All tutorials are now up to date with the latest workflow. The exception is tutorials for the RTEMS platform which are now in active development.



Materials
---------
- [Oxfordshire EPICS Meeting Nov 2023](https://dlsltd-my.sharepoint.com/:p:/g/personal/giles_knap_diamond_ac_uk/Ee7SPC_39blEu4Pilgqul7IBiCi4GM9_cgMzONV2ALHIsw?e=U02gHd)
Expand Down
8 changes: 8 additions & 0 deletions docs/reference/configuration.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,20 @@ TODO: this needs completing - pull all configuration discussions into
one place. Most of these will come from the original Setting up the
Workspace document.

| | |
|---|---|

## Git Configuration

This setting replaces https URLS for github repositories with ssh URLs. This is useful for the ibek-support submodule in the ioc-XXX repositories because it uses an HTTPS URL so that it can be built anywhere. When you want to push changes it is more convenient to use ssh URLs.
```
[url "ssh://[email protected]/"]
insteadOf = https://github.com/
```

| | |
|---|---|

## Vscode Settings

These settings can be edited using `Ctrl-Shift-P`: `Preferences: Open User Settings: (JSON)`
Expand Down Expand Up @@ -46,3 +52,5 @@ For a much richer command line experience, it is recommended to use the zsh shel
"terminal.integrated.defaultProfile.linux": "zsh",
```

| | |
|---|---|
1 change: 0 additions & 1 deletion docs/tutorials.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@ tutorials/ioc_changes1
tutorials/ioc_changes2
tutorials/generic_ioc
tutorials/debug_generic_ioc
tutorials/test_generic_ioc
tutorials/support_module
tutorials/setup_k8s
tutorials/setup_k8s_new_beamline
Expand Down
213 changes: 125 additions & 88 deletions docs/tutorials/generic_ioc.md

Large diffs are not rendered by default.

35 changes: 13 additions & 22 deletions docs/tutorials/support_module.md
Original file line number Diff line number Diff line change
@@ -1,32 +1,23 @@
# Working with Support Modules

:::{Warning}
This tutorial is out of date and will be updated soon.
This tutorial is an early draft and is not yet complete.
:::

TODO: this is currently a stub with some pointers.

TODO: suggest that we will make a new Stream Device that will be a
simple echo server. Use this to step through the process of creating a
new support module.

This is a type 3. change from the list at {any}`ioc-change-types`.

If you are starting a new support module then the preceding tutorials
have covered all of the skills you will need.

To work on a new support module you will need a Generic IOC project to
work inside. You could choose to create two new projects:

```{eval-rst}
:ioc-MyNewDeviceSupport:
In the tutorial on {doc}`generic_ioc`, we created a new Generic IOC container image that wrapped the existing support module `lakeshore340`.

a Generic IOC container definition based on ioc-template
If you wanted to create a completely new support module then you would use a very similar workflow to the above.

Once you have created the project(s), working on the support module will
look very similar to the procedures set out here `debug_generic_ioc`
```
In brief, the steps are:

Once you have created the project(s), working on the support module will
look very similar to the procedures set out here {any}`debug_generic_ioc`
- Create a new Generic IOC project using the <https://github.com/epics-containers/ioc-template>
- Create a new folder in /workspaces/YOUR_SUPPORT_MODULE_NAME
- Link the new folder to the epics support folders:
- ln -s /workspaces/YOUR_SUPPORT_MODULE_NAME /epics/support/YOUR_SUPPORT_MODULE_NAME
- TODO the ibek command `ibek dev support YOUR_SUPPORT_MODULE_NAME` will do this in future
- Now work on your support module and get it compiling
- Then add `ibek-support` for the new module as per {doc}`generic_ioc`
- create an example instance in the Generic IOC project to test your work
- When ready, push your new support and new ioc-support projects.
160 changes: 0 additions & 160 deletions docs/tutorials/test_generic_ioc.md

This file was deleted.

0 comments on commit 8e64399

Please sign in to comment.