Skip to content

simonsobs/socs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

1190da0 · Sep 7, 2022
Jun 27, 2022
Sep 7, 2022
Aug 9, 2022
Aug 24, 2022
Aug 9, 2022
Aug 1, 2022
Aug 25, 2022
Aug 29, 2022
Sep 29, 2021
Jul 20, 2022
Jun 11, 2019
Aug 31, 2022
Aug 15, 2022
Oct 27, 2021
Apr 28, 2022
Jun 27, 2022
May 10, 2022
Jun 11, 2019
May 23, 2022
Aug 24, 2022
Feb 2, 2022
Apr 13, 2022
Jun 11, 2019
Jun 27, 2022
May 17, 2019
Jun 11, 2019

Repository files navigation

SOCS - Simons Observatory Control System

GitHub Workflow Status Documentation Status https://coveralls.io/repos/github/simonsobs/socs/badge.svg?branch=develop https://img.shields.io/badge/dockerhub-latest-blue PyPI Package pre-commit.ci status

Overview

This repository, SOCS, contains hardware control code for the Simons Observatory. This code operates within the framework provided by OCS.

Installation

Install and update with pip:

$ pip3 install -U socs

If you need to install the optional so3g module you can do so via:

$ pip3 install -U socs[so3g]

Installing from Source

If you are considering contributing to SOCS, or would like to use the development branch, you will want to install from source. To do so, clone the repository and install using pip:

git clone https://github.com/simonsobs/socs.git
cd socs/
pip3 install -r requirements.txt
pip3 install .

In order for OCS tools to find these agents, you must add the full path to the agents directory, e.g. /home/simons/code/socs/agents/, to your OCS site config file. Do so by adding the following under your configured host if it does not already exist:

# List of additional paths to Agent plugin modules.
'agent-paths': [
  '/path/to/socs/agents/',
],

See the ocs docs for more details.

Docker Images

Docker images for SOCS and each Agent are available on Docker Hub. Official releases will be tagged with their release version, i.e. v0.1.0. These are only built on release, and the latest tag will point to the latest of these released tags. These should be considered stable.

Development images will be tagged with the latest released version tag, the number of commits ahead of that release, the latest commit hash, and the tag -dev, i.e. v0.0.2-81-g9c10ba6-dev. These get built on each commit to the develop branch, and are useful for testing and development, but should be considered unstable.

Documentation

The SOCS documentation can be built using Sphinx. There is a separate requirements.txt file in the docs/ directory to install Sphinx and any additional documentation dependencies:

cd docs/
pip3 install -r requirements.txt
make html

You can then open docs/_build/html/index.html in your preferred web browser. You can also find a copy hosted on Read the Docs.

Tests

The tests for SOCS are run using pytest, and should be run from the tests/ directory:

$ cd tests/
$ python3 -m pytest --cov

For more details see tests/README.rst.

Contributing

For guidelines on how to contribute to OCS see CONTRIBUTING.rst.

License

This project is licensed under the BSD 2-Clause License - see the LICENSE.txt file for details.