Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Move docs to doc folder #16

Merged
merged 1 commit into from
Aug 14, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
33 changes: 3 additions & 30 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,34 +2,7 @@

Core bluesky plan stubs & devices for use at ISIS. Not instrument/technique specific.

### Local development
### Documentation

Create & activate a python virtual environment (windows):

```
python -m venv .venv
.venv\Scripts\activate
```

Install the library & dev dependencies in editable mode:
```
python -m pip install -e .[dev]
```

Run the unit tests:
```
python -m pytest
```

Run lints:
```
ruff format --check
ruff check
pyright
```

### Release Process

Releases are created automatically via a github action, to create a release just create a new git tag on the commit on main (i.e. `git pull`, `git checkout main` `git tag <release.version.number.` `git push origin tag <release.version.number.`) This will start a workflow that will check that all linters and tests pass, and then publish a new release with the version number specified in the tag to [Pypi](https://pypi.org/project/ibex-bluesky-core/0.0.1/) and github. The new release can then be installed via `pip install ibex_bluesky_core`. The workflow must be approved by someone in the ICP-Write group. To do this go to the action (Actions -> the action on the tag) and approve it.

Credentials for Pypi can be found on keeper.
See `doc/` folder for developer and user information e.g. how to set up a development
environment or how to create a release.
21 changes: 21 additions & 0 deletions doc/create_a_release.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
### Release Process

Releases are created automatically via a github action.

To create a release just create a new git tag on the commit on main:
```
git pull
git checkout main
git tag <release.version.number>
git push origin tag <release.version.number>
```

This will start a workflow that will check that all linters and tests pass,
and then publish a new release with the version number specified in the tag to
[Pypi](https://pypi.org/project/ibex-bluesky-core/0.0.1/) and github. The new
release can then be installed via `pip install ibex_bluesky_core`.

The workflow must be approved by someone in the ICP-Write group. To do this go
to the action (Actions -> the action on the tag) and approve it.

Credentials for Pypi can be found on keeper.
41 changes: 41 additions & 0 deletions doc/set_up_dev_environment.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
### Local development

Create & activate a python virtual environment (windows):

```
python -m venv .venv
.venv\Scripts\activate
```

Install the library & dev dependencies in editable mode:
```
python -m pip install -e .[dev]
```

Run the unit tests:
```
python -m pytest
```

Run lints:
```
ruff format --check
ruff check
pyright
```

Run the 'demo' plan:

```
python -c "from ibex_bluesky_core.demo_plan import run_demo_plan;run_demo_plan()"
```

If PVs for the demo plan don't connect, ensure that:
- You have set an `EPICS_CA_ADDR_LIST`:
```
EPICS_CA_ADDR_LIST=127.255.255.255 130.246.51.255
EPICS_CA_AUTO_ADDR_LIST=NO
```
- You have an IBEX server running with a DAE in setup state, which can begin a simulated run
- You have a readable & writable block named "mot" in the current configuration pointing at
the type of block expected by `run_demo_plan`