Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/ngageoint/opensphere-yarn-workspace
opensphere-yarn-workspace
https://github.com/ngageoint/opensphere-yarn-workspace
Last synced: about 2 months ago
JSON representation
opensphere-yarn-workspace
- Host: GitHub
- URL: https://github.com/ngageoint/opensphere-yarn-workspace
- Owner: ngageoint
- License: apache-2.0
- Created: 2018-01-10T00:49:43.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2024-05-14T18:44:44.000Z (4 months ago)
- Last Synced: 2024-05-16T06:37:25.706Z (4 months ago)
- Language: Dockerfile
- Size: 591 KB
- Stars: 6
- Watchers: 20
- Forks: 16
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# OpenSphere Yarn Workspace
This project facilitates linking related OpenSphere projects (OpenSphere, plugins, configuration) with [Yarn workspaces](https://yarnpkg.com/lang/en/docs/workspaces/).
## Setup
* [Install Yarn](https://yarnpkg.com/en/docs/install).
* Clone this project.
* Clone any projects/dependencies under development to the `workspace` directory. All `workspace` subfolders will be linked appropriately in `node_modules` by `yarn install`. At minimum, clone a fork of [OpenSphere](https://github.com/ngageoint/opensphere).Any directories prefixed with `opensphere-plugin-` or `opensphere-config-` will be detected by the [OpenSphere resolver](https://github.com/ngageoint/opensphere-build-resolver) as plugin/config projects and included in the OpenSphere build.
## Yarn Install
After cloning all projects, run `yarn install`. Running this from any directory will update links/dependencies for the entire workspace.
## Local Development
To avoid OS related discrepencies, containerized development commands are as follows:
### Build
To run a containerized version of the build:`./Dockerfile-BUILD.sh`
### Test
To run containerized unit tests:`./Dockerfile-TEST.sh`
### Dev
To run the app from a container:`./Dockerfile-DEV.sh`
Then navigate to `http://localhost:8282/workspace/opensphere/dist/opensphere/index.html`
## Staging Area
The `staging` folder can be used to clone projects you may not always want to include in the OpenSphere build. For example, if you regularly swap out plugins or configuration you can clone them to `staging` and symlink them to `workspace` when needed. They will only be linked by Yarn and detected by the OpenSphere resolver when symlinked to `workspace`. Always run `yarn install` after changing these links to ensure the workspace is set up correctly.