diff --git a/doc/deployment.md b/doc/deployment.md index ab57213974a3dd9eaa7f223941343cec603c30e4..921fde3ef07c53649bda54491577ea2730217e01 100644 --- a/doc/deployment.md +++ b/doc/deployment.md @@ -114,17 +114,16 @@ sudo cp docker-compose.yaml.configure docker-compose.yaml In folder `org.etsi.osl.main/compose/` edit the file `docker-compose.yaml`. - ``` - DB_DATABASE: keycloak - DB_USER: keycloak - DB_PASSWORD: password - ``` + ``` + DB_DATABASE: keycloak + DB_USER: keycloak + DB_PASSWORD: password + ``` 2. If you want to change the keycloak admin password: In folder `org.etsi.osl.main/compose/` edit the file `docker-compose.yaml` - ``` KEYCLOAK_PASSWORD: Pa55w0rd ``` @@ -185,7 +184,7 @@ SPRING_APPLICATION_JSON: '{ "spring.portal.main.domain": "http://localhost", "logging.level.org.springframework" : "INFO" }' - ``` +``` ### 6. osscapi container (TMF API service) *(conditional)* @@ -218,6 +217,7 @@ In folder `org.etsi.osl.main/compose/nginx` create a configuration specific `ngi ```bash cd org.etsi.osl.main/compose/nginx/ ``` + ```bash sudo cp nginx.conf.default nginx.conf ``` @@ -229,25 +229,28 @@ If needed, in the nginx.conf file, edit the server_name for an non-local deploym ## Configure Web UI In folder `org.etsi.osl.portal.web/src/js/` create a configuration specific `config.js` file. + ```bash cd org.etsi.osl.portal.web/src/js ``` + ```bash sudo cp config.js.default config.js ``` + Edit the `config.js` file with the information of your domain ``` { - TITLE: "OpenSlice by ETSI", - WIKI: "https://openslice.readthedocs.io/en/stable/", - BUGZILLA: "ROOTURL/bugzilla/", - STATUS: "ROOTURL/status/", - APIURL: "http://localost:13000", - WEBURL: "ROOTURL/nfvportal", - APIOAUTHURL: "ROOTURL/auth/realms/openslice", - APITMFURL: "ROOTURL/tmf-api/serviceCatalogManagement/v4" + TITLE: "OpenSlice by ETSI", + WIKI: "https://openslice.readthedocs.io/en/stable/", + BUGZILLA: "ROOTURL/bugzilla/", + STATUS: "ROOTURL/status/", + APIURL: "http://localost:13000", + WEBURL: "ROOTURL/nfvportal", + APIOAUTHURL: "ROOTURL/auth/realms/openslice", + APITMFURL: "ROOTURL/tmf-api/serviceCatalogManagement/v4" } ``` @@ -275,8 +278,8 @@ sudo cp config.theming.default.json config.theming.json E.g. Edit "TITLE" or "WIKI" property with your domain title ``` { - TITLE: "OpenSlice by ETSI", - WIKI: "https://osl.etsi.org/documentation/latest/deployment/", + TITLE: "OpenSlice by ETSI", + WIKI: "https://osl.etsi.org/documentation/latest/deployment/", } ``` @@ -288,6 +291,7 @@ If further customization, apart from the default provided, is needed for brandin # Starting from the root project directory cd org.etsi.osl.tmf.web/src/assets/config ``` + ```bash sudo cp config.theming.default.json config.theming.json ``` @@ -303,6 +307,7 @@ After configuring the services, and editing the docker compose file accordingly, # Starting from the root project directory cd org.etsi.osl.main/compose/ ``` + ```bash sudo docker compose --profile prod down;sudo docker compose --profile prod up -d --build ``` @@ -396,88 +401,89 @@ This way, you will not get the invalid token error, as the API is acquiring the -- For the Angular configuration (TMF portal UI), navigate to org.etsi.osl.tmf.web/src/assets/config and edit config.prod.json - - ```bash - # Starting from the root project directory - cd org.etsi.osl.tmf.web/src/assets/config - ``` - - ```bash - nano config.prod.json - ``` - - After editing it should look like the example bellow: - - ```yaml - { - "TITLE": "OpenSlice by ETSI", - "PORTALVERSION":"2023-Q3 1.2.0-SNAPSHOT", - "WIKI": "https://openslice.readthedocs.io/en/stable/", - "BUGZILLA": "{BASEURL}/bugzilla/", - "STATUS": "http://status.localhost/", - "WEBURL": "{BASEURL}", - "PORTAL_REPO_APIURL": "{BASEURL}/osapi", - "ASSURANCE_SERVICE_MGMT_APIURL": "{BASEURL}/oas-api", - "APITMFURL": "{BASEURL}/tmf-api", - "OAUTH_CONFIG" : { - "issuer": "http://keycloak:8080/auth/realms/openslice", - "loginUrl": "http://keycloak:8080/auth/realms/openslice/protocol/openid-connect/auth", - "tokenEndpoint": "http://keycloak:8080/auth/realms/openslice/protocol/openid-connect/token", - "userinfoEndpoint": "http://keycloak:8080/auth/realms/openslice/protocol/openid-connect/userinfo", - "redirectUri": "{BASEURL}/redirect", - "logoutUrl": "http://keycloak:8080/auth/realms/openslice/protocol/openid-connect/logout", - "postLogoutRedirectUri": "{BASEURL}", +2.1 - For the Angular configuration (TMF portal UI), navigate to org.etsi.osl.tmf.web/src/assets/config and edit config.prod.json + +```bash +# Starting from the root project directory +cd org.etsi.osl.tmf.web/src/assets/config +``` + +```bash +nano config.prod.json +``` + +After editing it should look like the example bellow: + +```yaml +{ + "TITLE": "OpenSlice by ETSI", + "PORTALVERSION":"2023-Q3 1.2.0-SNAPSHOT", + "WIKI": "https://openslice.readthedocs.io/en/stable/", + "BUGZILLA": "{BASEURL}/bugzilla/", + "STATUS": "http://status.localhost/", + "WEBURL": "{BASEURL}", + "PORTAL_REPO_APIURL": "{BASEURL}/osapi", + "ASSURANCE_SERVICE_MGMT_APIURL": "{BASEURL}/oas-api", + "APITMFURL": "{BASEURL}/tmf-api", + "OAUTH_CONFIG" : { + "issuer": "http://keycloak:8080/auth/realms/openslice", + "loginUrl": "http://keycloak:8080/auth/realms/openslice/protocol/openid-connect/auth", + "tokenEndpoint": "http://keycloak:8080/auth/realms/openslice/protocol/openid-connect/token", + "userinfoEndpoint": "http://keycloak:8080/auth/realms/openslice/protocol/openid-connect/userinfo", + "redirectUri": "{BASEURL}/redirect", + "logoutUrl": "http://keycloak:8080/auth/realms/openslice/protocol/openid-connect/logout", + "postLogoutRedirectUri": "{BASEURL}", - "responseType": "code", - "oidc": false, - "clientId": "osapiWebClientId", - "dummyClientSecret": "secret", + "responseType": "code", + "oidc": false, + "clientId": "osapiWebClientId", + "dummyClientSecret": "secret", - "requireHttps": false, - "useHttpBasicAuth": true, - "clearHashAfterLogin": false, + "requireHttps": false, + "useHttpBasicAuth": true, + clearHashAfterLogin": false, - "showDebugInformation": true - } - } - ``` + "showDebugInformation": true + } +} +``` - > Note the difference in changing {BASEURL} -> http://keycloak:8080 +> Note the difference in changing {BASEURL} -> http://keycloak:8080 - > If you want the changes to take place immediately without rebuilding the project, then repeat the process for org.etsi.osl.tmf.web/dist/org.etsi.osl.tmf.web/assets/config/config.prod.json +> If you want the changes to take place immediately without rebuilding the project, then repeat the process for org.etsi.osl.tmf.web/dist/org.etsi.osl.tmf.web/assets/config/config.prod.json -- For the AngularJS configuration (NVF portal UI), navigate to org.etsi.osl.portal.web/src/js and edit config.js +2.2 - For the AngularJS configuration (NVF portal UI), navigate to org.etsi.osl.portal.web/src/js and edit config.js - ```bash - # Starting from the root project directory - cd org.etsi.osl.portal.web/src/js - ``` +```bash +# Starting from the root project directory +cd org.etsi.osl.portal.web/src/js +``` - ```bash - nano config.js - ``` +```bash +nano config.js +``` - after editing it should look like the example bellow: - - ``` - var appConfig = angular.module('portalwebapp.config',[]); - - - appConfig.factory('APIEndPointService', function() { - return { - TITLE: "OpenSlice by ETSI", - WIKI: "https://openslice.readthedocs.io/en/stable/", - BUGZILLA: "ROOTURL/bugzilla/", - STATUS: "ROOTURL/status/", - APIURL: "http://localost:13000", - WEBURL: "ROOTURL/nfvportal", - APIOAUTHURL: "ROOTURL/auth/realms/openslice", - APITMFURL: "ROOTURL/tmf-api/serviceCatalogManagement/v4" - }; - }); - ``` - > Note the difference in "APIOAUTHURL" property +after editing it should look like the example bellow: + +``` +var appConfig = angular.module('portalwebapp.config',[]); + + +appConfig.factory('APIEndPointService', function() { + return { + TITLE: "OpenSlice by ETSI", + WIKI: "https://openslice.readthedocs.io/en/stable/", + BUGZILLA: "ROOTURL/bugzilla/", + STATUS: "ROOTURL/status/", + APIURL: "http://localost:13000", + WEBURL: "ROOTURL/nfvportal", + APIOAUTHURL: "ROOTURL/auth/realms/openslice", + APITMFURL: "ROOTURL/tmf-api/serviceCatalogManagement/v4" + }; +}); +``` + +> Note the difference in "APIOAUTHURL" property ### NFV Orchestrator Configuration