This repository has been archived by the owner on Nov 3, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 12
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #599 from dedica-team/develop
Release 0.4.0
- Loading branch information
Showing
416 changed files
with
23,350 additions
and
12,106 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
--- | ||
name: Introduction to nivio development | ||
about: How to get started | ||
title: '' | ||
labels: '' | ||
assignees: '' | ||
|
||
--- | ||
|
||
- [ ] follow the instructions here: https://github.com/dedica-team/nivio/blob/develop/development.md and get a self-built nivio instance running | ||
- [ ] for backend development, get familiar with the Spring Boot framework: https://spring.io/guides/gs/spring-boot/ | ||
- [ ] for frontend development, get familiar with React https://reactjs.org/docs/getting-started.html and Material UI https://material-ui.com/ | ||
|
||
There is a public Slack dedica-extern.slack.com for chat support. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
name: Update epics | ||
on: | ||
issues: | ||
types: [opened, closed, reopened] | ||
jobs: | ||
epics: | ||
runs-on: ubuntu-latest | ||
name: Update epic issues | ||
steps: | ||
- name: Run epics action | ||
uses: cloudaper/epics-action@v1 | ||
with: | ||
github-token: ${{ secrets.GITHUB_TOKEN }} | ||
epic-label-name: epic | ||
auto-close-epic: false |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,80 @@ | ||
# Getting Started with Nivio Development | ||
|
||
|
||
**Requirements** | ||
|
||
To run nivio you need the following software installed: | ||
- [nodejs v12.6.2 or higher](https://nodejs.org/en/), [How to update node?](https://www.hostingadvice.com/how-to/update-node-js-latest-version/) | ||
- [Maven](https://maven.apache.org/install.html) | ||
- Java 11 | ||
|
||
--- | ||
|
||
**Docker Setup (Linux)** | ||
|
||
Clone nivio, build and run a Docker image: | ||
|
||
git clone https://github.com/dedica-team/nivio.git && cd nivio | ||
mvn clean package | ||
docker build -t nivio:latest . | ||
docker run -e SEED=/tmp/nivio/inout.yml --mount type=bind,source="$(pwd)"/src/test/resources/example,target=/tmp/nivio -p 8080:8080 nivio:latest | ||
|
||
then open http://localhost:8080 | ||
|
||
**Docker Setup (Windows)** | ||
|
||
Clone nivio, build and run a Docker image: | ||
|
||
git clone https://github.com/dedica-team/nivio.git && cd nivio | ||
mvn clean package | ||
docker build -t nivio:latest . | ||
docker run -e SEED=//tmp/nivio/inout.yml --mount type=bind,source="C:\<your>\<path>\<to>\nivio\src\test\resources\example",target=/tmp/nivio -p 8080:8080 nivio:latest | ||
then open http://localhost:8080 | ||
|
||
(Note: the double slashes at the beginning of the path for the SEED environment variable work as a fix to make MSYS/MinGW consoles | ||
*not* translate the `/tmp` path to a local DOS path. This is safe to use with the PowerShell. Further reading: https://stackoverflow.com/a/14189687/10000398) | ||
|
||
--- | ||
|
||
**Development Setup (IntelliJ)** | ||
|
||
Create a Spring Boot Configuration in IntelliJ that looks like this: | ||
|
||
![Spring Boot Config](https://raw.githubusercontent.com/dedica-team/nivio/develop/docs/SpringConfig.png) | ||
|
||
If you need a clean build you can run | ||
|
||
mvn clean package | ||
|
||
You can use your own configuration files, if you add SEED=/path/to/config as an environment variable. | ||
|
||
Open http://localhost:8080 | ||
|
||
If you want to contribute to our frontend, read further into our [Frontend Readme](https://github.com/dedica-team/nivio/tree/develop/src/main/app) | ||
|
||
**Nivio Backend Architecture** | ||
|
||
If you want to contribute to our backend, maybe the following diagram is of use to you. It shows some of the most important classes and | ||
interfaces. It is supposed to give you an idea on how the backend is structured, but note that not all details are displayed: | ||
|
||
![layoutedArtifact graph](backend_architecture_api.png) | ||
|
||
If you use the `ApiController` as the entry point to the backend, you can see that it retrieves information and triggers events | ||
to the most important parts of the application. | ||
|
||
The `LandscapeRespository` gives access to the stored landscapes. | ||
|
||
The `LandscapeDescriptionFactory` is used to generate a `LandscapeDescription` from various sources, such as a `String` input, | ||
or e.g. from a yaml file. | ||
|
||
This `LandscapeDescription` has to be enriched with the `ItemDescription` for all items in the landscape. | ||
This is managed by the `InputFormatHandler`, which are able to read several input formats such as e.g. kubernetes files, or the | ||
nivio description format. Access to these handlers is managed by the `InputFormatHandlerFactory`. | ||
|
||
To actually create a landscape, the `Indexer` is used. This is able to compute the landscape graph from a `LandscapeDescription`. | ||
The `Indexer` uses several `Resolver` to resolve groups and item relations in landscapes and e.g. the appearance of the graph. | ||
|
||
The `Indexer` can be triggered either directly through the `ApiController` to index or reindex a landscape, or it is triggered | ||
by an observer mechanism on files. These are the files located under the path provided through the `SEED` environment variable. | ||
|
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.