Code Monkey home page Code Monkey logo

openconext-manage's Introduction

OpenConext-manage

Build Status codecov.io

Stores and publishes metadata of all entities known to OpenConext

Disclaimer

Note that the original migration from Janus was removed in version 3.0.0. If you want to run the migrations from a Janus database then install version 2.0.8.

  • Java 11
  • Maven 3
  • MongoDB
  • yarn
  • NodeJS v16.13.2 (best managed with nvm, current version in .nvmrc)
  • ansible

Run server and gui

gem install foreman
foreman s

This project uses Spring Boot and Maven. To run locally, type:

cd manage-server

mvn spring-boot:run -Drun.jvmArguments="-Dspring.profiles.active=dev"

When developing, it's convenient to just execute the applications main-method, which is in Application. Don't forget to set the active profile to dev.

The client is build with react and to get initially started:

cd manage-gui
yarn install
yarn start

See facebook/create-react-app#11762 (comment) for troubleshooting the proxy settings.

Browse to the application homepage.

To add new dependencies:

yarn add package --dev

When new yarn dependencies are added:

yarn install

To run all JavaScript tests:

cd client
yarn test

Or to run all the tests and do not watch - like CI:

cd client
CI=true yarn test

See the Manage github wiki for additional documentation.

New MetaData types must first be described in JSON Schema and the schema must be placed in src/main/resources/metadata_configuration. This is all that is required for the server. Of course support for CRUD in the GUI needs to be coded.

On its classpath, the application has an application.yml file that contains configuration defaults that are convenient when developing.

When the application actually gets deployed to a meaningful platform, it is pre-provisioned with ansible and the application.yml depends on environment specific properties in the group_vars. See the project OpenConext-deploy and the role manage for more information.

For details, see the Spring Boot manual.

When you want to import existing metaData into your local mongodb you can use the following command:

mongoimport --db metadata --collection saml20_idp --type json --file identity-providers.json --jsonArray

Change requests

cd ./manage-server/src/test/resources/json
curl -u sysadmin:secret -X POST -H 'Content-Type: application/json' -d '@change_request.json' 'https://manage.test2.surfconext.nl/manage/api/internal/change-requests'

Or the other supported flavour: a incremental change

curl -u sysadmin:secret -X POST -H 'Content-Type: application/json' -d '@incremental_change_request.json' 'https://manage.test2.surfconext.nl/manage/api/internal/change-requests'
curl -u sysadmin:secret -X POST -H 'Content-Type: application/json' -d '@incremental_change_request.json' 'http://localhost:8080/manage/api/internal/change-requests'

openconext-manage's People

Contributors

oharsta avatar dependabot[bot] avatar thijskh avatar jong-vincent avatar tvdijen avatar tpoot01 avatar stephan-kok avatar carstendeyl avatar tbkennisnet avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.