diff --git a/docs/user-documentation/general-admin-users/admins-documentation/img/README.md b/docs/user-documentation/general-admin-users/admins-documentation/img/README.md new file mode 100644 index 0000000000000000000000000000000000000000..0136fd8b19a12a58943fe98973daf763ff664ae9 --- /dev/null +++ b/docs/user-documentation/general-admin-users/admins-documentation/img/README.md @@ -0,0 +1,175 @@ + + +# Repository organization + +The repository contains these kind of modules used to build the openBIS distributable: +- api-*: API Facades +- app-*: Applications +- build: Build scripts +- core-plugins-*: Core plugins distributed with openBIS +- lib-*: Internally maintained libraries used to build openBIS +- server-*: Server components +- test-*: Integration tests +- ui-*: User interfaces + +# Software Requirements + +- JDK 17 +- Postgres 15 + +# Building openBIS + +## Step By Step: + +``` +git clone https://sissource.ethz.ch/sispub/openbis.git +cd app-openbis-installer/ +./gradlew clean +./gradlew build -x test "-Dorg.gradle.jvmargs=--add-opens=java.base/java.text=ALL-UNNAMED --add-opens=java.desktop/java.awt.font=ALL-UNNAMED" +``` + +## Where the build is found? + +``` +./app-openbis-installer/targets/gradle/distributions/openBIS-installation-standard-technologies-SNAPSHOT-rXXXXXXXXXX.tar.gz +``` + +## Why we disable tests to make the build? + +They increase the time to obtain a build plus some tests could have additional environment +requirements. + +## Why the core UI made using GWT is not build anymore? + +The core UI is deprecated for removal on next mayor release and requires JDK8. + +For now it can be build following the next commands and only with JDK8: + +``` +git clone https://sissource.ethz.ch/sispub/openbis.git +cd core-plugin-openbis/ +./gradlew clean +./gradlew buildCoreUIPackageUsingJDK8 -x test +``` + +## How to compile the V3 JS bundle used by the new Admin UI in production? + +``` +git clone https://sissource.ethz.ch/sispub/openbis.git +cd api-openbis-javascript/ +./gradlew clean +./gradlew bundleOpenbisStaticResources -x test +``` + +The output can be found at: +server-application-server/source/java/ch/systemsx/cisd/openbis/public/resources/api/v3 + +config.bundle.js +config.bundle.min.js +openbis.bundle.js +openbis.bundle.min.js + +# Development of openBIS + +## Requirements + +- Software Requirements +- IntelliJ IDEA CE + +## Step By Step + +``` +File -> New -> Project From Existing Sources +Select the build folder to load the gradle model +After the model is loaded execute the tasks: + +openBISDevelopementEnvironmentASPrepare +openBISDevelopementEnvironmentASStart +openBISDevelopementEnvironmentDSSStart +``` + +## Source Code Auto Formatting + +OpenBIS source code uses a particular style preset that guarantees all code is formatted uniformly. + +To make use of the preset go to File/Settings or IntelliJIDEA/Preferences depending on your OS. + +Then import the XML file under 'docs/codestyle/SIS_Conventions_IntelliJ_V3.xml'. See images below: + + + + + + +## Commit Messages Formatting + +OpenBIS source code commit messages use a particular formatting. + +This formatting guarantees that there is a User Story behind it. + +To ensure commits follow the formatting 'Git Hooks' are provided. + +Just copy them from the root folder of this repo run the next command: +```` +%/> cp ./docs/hooks/* ./.git/hooks/ +%/> git add README.md +%/> git commit -m "Test incorrectly formatted message" +Aborting commit. Your commit message is missing an issue number ('SSDM-XXXXX:') +```` + +## Source Code Copyright Header + +OpenBIS source code is licensed under SIS copyright and licensed under 'Apache 2 License': +```` +http://www.apache.org/licenses/LICENSE-2.0 +```` +To guarantee all new source files contain the appropriate license a preset is provided. + +To make use of the preset go to File/Settings or IntelliJIDEA/Preferences depending on your OS. + +Then import the XML file under 'docs/copyright/Copyright_IntelliJ.xml' under the copyright section as the image below indicate. + +Last, set the Copyright Profile under the Copyright section as the image below indicate: + + +## Typical Errors + +# IntelliJ can't find package com.sun.*, but I can compile the project using the command line! + +Turn off "File | Settings | Build, Execution, Deployment | Compiler | Java Compiler | Use --release +option for cross-compilation". + +# IntelliJ can't find a particular method + +Code compatiblity 1.8 is set by default to work well with our javadoc tools but it can be set to 17 on IntelliJ. See image below. + + +# Test seem to run through Gradle and fail + +They need to be set to run using IntelliJ. + + +# Test seem to run through intelliJ but throw a package not open error + +The project does not uses modules yet. Add '--add-opens' statements manually when launching the tests as shown below. + + +## Development of NG UI + +1. Generate openBIS JS bundle by running in command line + 1. cd /<OPENBIS_PROJECT_ROOT>/api-openbis-javascript + 2. ./gradlew :bundleOpenbisStaticResources +2. Start openBIS in your chosen IDE (NG UI assumes it will run + at: http://localhost:8888/openbis-test/): + 1. run openBISDevelopementEnvironmentASPrepare gradle task + 2. run openBISDevelopementEnvironmentASStart gradle task +3. In command line do: + 1. cd /<OPENBIS_PROJECT_ROOT>/ui-admin + 2. npm install + 3. npm run dev +4. Open in your chosen browser a url, by default: http://localhost:9999/admin + +## Setting up IntelliJ Idea + +1. Under "IntelliJ IDEA" -> "Preferences" -> "Languages and Frameworks" -> Javascript, set the + language version to ECMAScript 6. diff --git a/docs/user-documentation/general-admin-users/admins-documentation/img/admin-ui-add-users.png b/docs/user-documentation/general-admin-users/admins-documentation/img/admin-ui-add-users.png new file mode 100644 index 0000000000000000000000000000000000000000..3e440f34b83f871adfa093d3e307b8c32ddbd938 Binary files /dev/null and b/docs/user-documentation/general-admin-users/admins-documentation/img/admin-ui-add-users.png differ diff --git a/docs/user-documentation/general-admin-users/admins-documentation/img/admin-ui-groups-1-1024x559.png b/docs/user-documentation/general-admin-users/admins-documentation/img/admin-ui-groups-1-1024x559.png new file mode 100644 index 0000000000000000000000000000000000000000..38f6ce5e86c82ad0117d826dbc95bc9783253f87 Binary files /dev/null and b/docs/user-documentation/general-admin-users/admins-documentation/img/admin-ui-groups-1-1024x559.png differ diff --git a/docs/user-documentation/general-admin-users/admins-documentation/img/admin-ui-remove-role-save-1024x564.png b/docs/user-documentation/general-admin-users/admins-documentation/img/admin-ui-remove-role-save-1024x564.png new file mode 100644 index 0000000000000000000000000000000000000000..80112c4d960ea3907ca5ce129c314830612f078b Binary files /dev/null and b/docs/user-documentation/general-admin-users/admins-documentation/img/admin-ui-remove-role-save-1024x564.png differ diff --git a/docs/user-documentation/general-admin-users/admins-documentation/img/admin-ui-roles-300x293.png b/docs/user-documentation/general-admin-users/admins-documentation/img/admin-ui-roles-300x293.png new file mode 100644 index 0000000000000000000000000000000000000000..6e03f7c29ea2075fc1fb09c83d4b9bdc13a42ad9 Binary files /dev/null and b/docs/user-documentation/general-admin-users/admins-documentation/img/admin-ui-roles-300x293.png differ diff --git a/docs/user-documentation/general-admin-users/admins-documentation/img/corrector.sh b/docs/user-documentation/general-admin-users/admins-documentation/img/corrector.sh new file mode 100755 index 0000000000000000000000000000000000000000..24595376b36fe7970044aa57447411c8f8e89294 --- /dev/null +++ b/docs/user-documentation/general-admin-users/admins-documentation/img/corrector.sh @@ -0,0 +1,20 @@ +#!/bin/bash + +sed -i 's|https://openbis.ch/wp-content/uploads/2022/02/|att/|g' ./docs/user-documentation/general-users/inventory-of-materials-and-methods.md +sed -i 's|https://openbis.ch/wp-content/uploads/2022/02/|att/|g' ./docs/user-documentation/general-users/inventory-of-materials-and-methods.md +sed -i 's|https://openbis.ch/wp-content/uploads/2022/03/|att/|g' ./docs/user-documentation/general-users/inventory-of-materials-and-methods.md +sed -i 's|https://openbis.ch/wp-content/uploads/2022/03/|att/|g' ./docs/user-documentation/general-users/inventory-of-materials-and-methods.md +sed -i 's|https://openbis.ch/wp-content/uploads/2022/02/|att/|g' ./docs/user-documentation/general-admin-users/admins-documentation/new-entity-type-registration.md +sed -i 's|https://openbis.ch/wp-content/uploads/2022/02/|att/|g' ./docs/user-documentation/general-admin-users/admins-documentation/new-entity-type-registration.md +sed -i 's|https://www.mathworks.com/content/dam/mathworks/mathworks-dot-com/support/sysreq/files/|att/|g' ./docs/software-developer-documentation/apis/matlab-v3-api.md +sed -i 's|https://www.mathworks.com/content/dam/mathworks/mathworks-dot-com/support/sysreq/files/|att/|g' ./docs/software-developer-documentation/apis/matlab-v3-api.md +sed -i 's|https://www.mathworks.com/content/dam/mathworks/mathworks-dot-com/support/sysreq/files/|att/|g' ./docs/software-developer-documentation/apis/matlab-v3-api.md +sed -i 's|https://openbis.ch/wp-content/uploads/2021/08/|att/|g' ./docs/user-documentation/general-users/barcodes.md +sed -i 's|https://openbis.ch/wp-content/uploads/2021/08/|att/|g' ./docs/user-documentation/general-users/barcodes.md +sed -i 's|https://openbis.ch/wp-content/uploads/2021/08/|att/|g' ./docs/user-documentation/general-users/barcodes.md +sed -i 's|https://openbis.ch/wp-content/uploads/2021/08/|att/|g' ./docs/user-documentation/general-users/barcodes.md +sed -i 's|https://openbis.ch/wp-content/uploads/2021/08/|att/|g' ./docs/user-documentation/general-users/barcodes.md +sed -i 's|https://wiki-bsse.ethz.ch/download/attachments/147412090/|att/|g' ./docs/user-documentation/general-users/managing-storage-of-samples.md +sed -i 's|https://openbis.ch/wp-content/uploads/2022/02/|att/|g' ./docs/user-documentation/general-users/managing-lab-stocks-and-orders-2.md +sed -i 's|https://openbis.ch/wp-content/uploads/2022/02/|att/|g' ./docs/user-documentation/general-users/managing-lab-stocks-and-orders-2.md +sed -i 's|https://openbis.ch/wp-content/uploads/2022/03/|att/|g' ./docs/user-documentation/general-users/tools-for-analysis-of-data-stored-in-openbis.md diff --git a/docs/user-documentation/general-admin-users/admins-documentation/img/downloader.sh b/docs/user-documentation/general-admin-users/admins-documentation/img/downloader.sh new file mode 100755 index 0000000000000000000000000000000000000000..de62301316611ecabf9c009c39ae2b93d177684f --- /dev/null +++ b/docs/user-documentation/general-admin-users/admins-documentation/img/downloader.sh @@ -0,0 +1,25 @@ +#!/bin/bash + +wget -P ./docs/user-documentation/general-users/att/ https://openbis.ch/wp-content/uploads/2022/02/SAMPLE-COLLECTION-REGISTRATION-SAMPLE-STORAGE_POSITION-template-2.xls +wget -P ./docs/user-documentation/general-users/att/ https://openbis.ch/wp-content/uploads/2022/02/SAMPLE-COLLECTION-REGISTRATION-ANTIBODY-STORAGE_POSITION-template-1.xls +wget -P ./docs/user-documentation/general-users/att/ https://openbis.ch/wp-content/uploads/2022/03/SAMPLE-GENERAL-REGISTRATION-EXPERIMENTAL_STEP-MASS_MEASUREMENT-SAMPLE-template.xls +wget -P ./docs/user-documentation/general-users/att/ https://openbis.ch/wp-content/uploads/2022/03/SAMPLE-GENERAL-REGISTRATION-EXPERIMENTAL_STEP-MASS_MEASUREMENT-SAMPLE-template-1.xls +wget -P ./docs/user-documentation/general-admin-users/admins-documentation/att/ https://openbis.ch/wp-content/uploads/2022/02/masterdata-template.xls +wget -P ./docs/user-documentation/general-admin-users/admins-documentation/att/ https://openbis.ch/wp-content/uploads/2022/02/masterdata-metadata.xls +wget -P ./docs/user-documentation/general-users/att/ https://openbis.ch/wp-content/uploads/2022/02/SAMPLE-COLLECTION-REGISTRATION-SAMPLE-STORAGE_POSITION-template-2.xlsx +wget -P ./docs/user-documentation/general-users/att/ https://openbis.ch/wp-content/uploads/2022/02/SAMPLE-COLLECTION-REGISTRATION-ANTIBODY-STORAGE_POSITION-template-1.xlsx +wget -P ./docs/user-documentation/general-users/att/ https://openbis.ch/wp-content/uploads/2022/03/SAMPLE-GENERAL-REGISTRATION-EXPERIMENTAL_STEP-MASS_MEASUREMENT-SAMPLE-template.xlsx +wget -P ./docs/user-documentation/general-users/att/ https://openbis.ch/wp-content/uploads/2022/03/SAMPLE-GENERAL-REGISTRATION-EXPERIMENTAL_STEP-MASS_MEASUREMENT-SAMPLE-template-1.xlsx +wget -P ./docs/software-developer-documentation/apis/att/ https://www.mathworks.com/content/dam/mathworks/mathworks-dot-com/support/sysreq/files/python-compatibility.pdf +wget -P ./docs/software-developer-documentation/apis/att/ https://www.mathworks.com/content/dam/mathworks/mathworks-dot-com/support/sysreq/files/python-compatibility.pdf +wget -P ./docs/software-developer-documentation/apis/att/ https://www.mathworks.com/content/dam/mathworks/mathworks-dot-com/support/sysreq/files/python-compatibility.pdf +wget -P ./docs/user-documentation/general-users/att/ https://openbis.ch/wp-content/uploads/2021/08/printer-test-code128-split-50-15.pdf +wget -P ./docs/user-documentation/general-users/att/ https://openbis.ch/wp-content/uploads/2021/08/printer-test-code128-continuous-50-15.pdf +wget -P ./docs/user-documentation/general-users/att/ https://openbis.ch/wp-content/uploads/2021/08/scanner-test-code128-50-15.pdf +wget -P ./docs/user-documentation/general-users/att/ https://openbis.ch/wp-content/uploads/2021/08/scanner-test-qrcode-50-50.pdf +wget -P ./docs/user-documentation/general-users/att/ https://openbis.ch/wp-content/uploads/2021/08/scanner-test-microqrcode-30-30.pdf +wget -P ./docs/user-documentation/general-users/att/ https://wiki-bsse.ethz.ch/download/attachments/147412090/SAMPLE-STORAGE_POSITION-template.txt +wget -P ./docs/user-documentation/general-users/att/ https://openbis.ch/wp-content/uploads/2022/02/order_ORD1_p0.txt +wget -P ./docs/user-documentation/general-users/att/ https://openbis.ch/wp-content/uploads/2022/02/order_ORD1_p1.txt +wget -P ./docs/user-documentation/general-users/att/ https://openbis.ch/wp-content/uploads/2022/03/invalid-session-token-error-1024x58.jpg + diff --git a/docs/user-documentation/general-admin-users/admins-documentation/img/html_cleaner.sh b/docs/user-documentation/general-admin-users/admins-documentation/img/html_cleaner.sh new file mode 100755 index 0000000000000000000000000000000000000000..d779769411ad829f7c2ac948bde3111526648991 --- /dev/null +++ b/docs/user-documentation/general-admin-users/admins-documentation/img/html_cleaner.sh @@ -0,0 +1,24 @@ +#!/bin/bash + +declare -A dict + +dict['&']='&' +dict['<']='<' +dict['>']='>' +dict['"']='"' +dict['–']='–' +dict['—']='—' +dict['©']='©' +dict['®']='®' +dict['â„¢']='™' +dict['≈']='≈' +dict['≠']='≠' +dict['£']='£' +dict['€']='€' +dict['°']='°' + +for key in "${!dict[@]}"; do + echo "${dict[$key]}" + grep -irn --include \*.md "${dict[$key]}" ./docs/* + #grep -irl --include \*.md "${dict[$key]}" ./docs/* | xargs sed -i -e 's/${dict[$key]}/${key}/g' +done diff --git a/docs/user-documentation/general-admin-users/admins-documentation/img/logo_white.png b/docs/user-documentation/general-admin-users/admins-documentation/img/logo_white.png new file mode 100644 index 0000000000000000000000000000000000000000..6905b0704cd858f3c8727e2fb974b9da932615ab Binary files /dev/null and b/docs/user-documentation/general-admin-users/admins-documentation/img/logo_white.png differ diff --git a/docs/user-documentation/general-admin-users/admins-documentation/img/new-user-authentication-options-1024x212.png b/docs/user-documentation/general-admin-users/admins-documentation/img/new-user-authentication-options-1024x212.png new file mode 100644 index 0000000000000000000000000000000000000000..919abb5585e39faf751bfcc8f27ed35e2eba2c3e Binary files /dev/null and b/docs/user-documentation/general-admin-users/admins-documentation/img/new-user-authentication-options-1024x212.png differ diff --git a/docs/user-documentation/general-admin-users/admins-documentation/img/new-user-default-authentication-1024x187.png b/docs/user-documentation/general-admin-users/admins-documentation/img/new-user-default-authentication-1024x187.png new file mode 100644 index 0000000000000000000000000000000000000000..73ba8c295dcbdc780e4e077ab18da15faf113fdd Binary files /dev/null and b/docs/user-documentation/general-admin-users/admins-documentation/img/new-user-default-authentication-1024x187.png differ diff --git a/docs/user-documentation/general-admin-users/admins-documentation/img/new-user-eln-ui-1024x455.png b/docs/user-documentation/general-admin-users/admins-documentation/img/new-user-eln-ui-1024x455.png new file mode 100644 index 0000000000000000000000000000000000000000..ae634cc75559096ddf54b94cc664feb85fa03e9c Binary files /dev/null and b/docs/user-documentation/general-admin-users/admins-documentation/img/new-user-eln-ui-1024x455.png differ diff --git a/docs/user-documentation/general-admin-users/admins-documentation/img/new-user-file-authentication-1024x317.png b/docs/user-documentation/general-admin-users/admins-documentation/img/new-user-file-authentication-1024x317.png new file mode 100644 index 0000000000000000000000000000000000000000..6344efd15279452b441b593c15cc948f48d64331 Binary files /dev/null and b/docs/user-documentation/general-admin-users/admins-documentation/img/new-user-file-authentication-1024x317.png differ diff --git a/docs/user-documentation/general-admin-users/admins-documentation/img/openBIS_Logo-e1583919804451.png b/docs/user-documentation/general-admin-users/admins-documentation/img/openBIS_Logo-e1583919804451.png new file mode 100644 index 0000000000000000000000000000000000000000..a2e0631f0a502f3f3aa60b74192e54951e1d918d Binary files /dev/null and b/docs/user-documentation/general-admin-users/admins-documentation/img/openBIS_Logo-e1583919804451.png differ diff --git a/docs/user-documentation/general-admin-users/admins-documentation/img/test.sh b/docs/user-documentation/general-admin-users/admins-documentation/img/test.sh new file mode 100755 index 0000000000000000000000000000000000000000..419a36756d7214f16bae2feca7cfcd5a6b351b49 --- /dev/null +++ b/docs/user-documentation/general-admin-users/admins-documentation/img/test.sh @@ -0,0 +1,5 @@ +#!/bin/bash + +for ext in xls xlsx pdf txt jpg; do + grep -Eorn --include \*.md "https://[^ >]+\.${ext}" ./docs/* +done