summaryrefslogtreecommitdiffstats
path: root/ccsdk-app-os
diff options
context:
space:
mode:
Diffstat (limited to 'ccsdk-app-os')
-rw-r--r--ccsdk-app-os/Dockerfile45
-rw-r--r--ccsdk-app-os/docker-dashboard-installation.sh38
-rw-r--r--ccsdk-app-os/pom.xml44
-rw-r--r--ccsdk-app-os/src/main/java/org/onap/portalapp/conf/ExternalAppConfig.java20
-rw-r--r--ccsdk-app-os/src/main/java/org/onap/portalapp/conf/ExternalAppInitializer.java24
-rw-r--r--ccsdk-app-os/src/main/java/org/onap/portalapp/interceptor/AuthenticationInterceptor.java117
-rw-r--r--ccsdk-app-os/src/main/java/org/onap/portalapp/interceptor/AuthorizationInterceptor.java42
-rw-r--r--ccsdk-app-os/src/main/java/org/onap/portalapp/login/LoginStrategyImpl.java67
-rw-r--r--ccsdk-app-os/src/main/java/org/onap/portalapp/service/AdminAuthExtension.java4
-rw-r--r--ccsdk-app-os/src/main/resources/swagger.json240
-rw-r--r--ccsdk-app-os/src/main/webapp/WEB-INF/conf/system.properties.template2
-rw-r--r--ccsdk-app-os/src/main/webapp/api-specs.html1621
-rw-r--r--ccsdk-app-os/src/main/webapp/app/ccsdk/home/executions-view-controller.js1
-rw-r--r--ccsdk-app-os/src/main/webapp/app/ccsdk/home/executions_view.html14
-rw-r--r--ccsdk-app-os/src/main/webapp/app/ccsdk/home/oom-style.css635
15 files changed, 1275 insertions, 1639 deletions
diff --git a/ccsdk-app-os/Dockerfile b/ccsdk-app-os/Dockerfile
index 7c1769e..877f62f 100644
--- a/ccsdk-app-os/Dockerfile
+++ b/ccsdk-app-os/Dockerfile
@@ -1,30 +1,37 @@
-# Use an official Tomcat base image
-FROM tomcat:8
+FROM adoptopenjdk/openjdk11:jre-11.0.8_10-alpine
+#FROM tomcat:jdk11-adoptopenjdk-openj9
-ENV APPDIR /usr/local/tomcat
-ENV APPUSER dash
+USER root
+ENV CATALINA_HOME /usr/local/tomcat
+ENV PATH $CATALINA_HOME/bin:$PATH
COPY docker-dashboard-installation.sh /tmp/docker-dashboard-installation.sh
COPY create_table.sql /tmp/create_table.sql
+COPY target/ccsdk*.war /tmp/ccsdk-app.war
-RUN mkdir /home/deployments \
+ARG user=onap
+ARG group=onap
+
+RUN apk update \
+ && apk add wget zip dos2unix postgresql \
+ && wget -q http://archive.apache.org/dist/tomcat/tomcat-9/v9.0.37/bin/apache-tomcat-9.0.37.tar.gz \
+ && tar -xzf apache-tomcat-9.0.37.tar.gz \
+ && rm -f apache-tomcat-9.0.37.tar.gz \
+ && rm -fr apache-tomcat-9.0.37/webapps/[a-z]* \
+ && mkdir -p ${CATALINA_HOME} \
+ && mv apache-tomcat-9.0.37/* ${CATALINA_HOME} \
&& mkdir -p /opt/logs/dcae/dashboard \
- && useradd -u 1000 -M -U ${APPUSER} \
- && chown -R 1000:1000 ${APPDIR} \
- && chown -R 1000:1000 /home/deployments \
- && chown -R 1000:1000 /opt/logs/dcae/dashboard \
- && apt-get update \
- && apt-get install -y sudo zip vim dos2unix postgresql \
- && echo "dash ALL=(ALL) NOPASSWD: ALL" > /etc/sudoers.d/dash_update_cert_store \
&& dos2unix /tmp/create_table.sql \
&& dos2unix /tmp/docker-dashboard-installation.sh \
&& chmod +x /tmp/create_table.sql \
- && chmod +x /tmp/docker-dashboard-installation.sh
-
-ARG WAR_FILE
-COPY target/${WAR_FILE} /home/deployments/ccsdk-app.war
+ && chmod +x /tmp/docker-dashboard-installation.sh \
+ && addgroup -S $group && adduser -G $group -D $user \
+ && chown -R $user:$group ${CATALINA_HOME} \
+ && chown -R $user:$group /tmp \
+ && chown -R $user:$group /opt/logs/dcae/dashboard
-WORKDIR ${APPDIR}
-USER ${APPUSER}
+USER ${user}
+WORKDIR $CATALINA_HOME
-CMD ["/tmp/docker-dashboard-installation.sh"]
+ENTRYPOINT /tmp/docker-dashboard-installation.sh
+#CMD ["/tmp/docker-dashboard-installation.sh"]
diff --git a/ccsdk-app-os/docker-dashboard-installation.sh b/ccsdk-app-os/docker-dashboard-installation.sh
index 4d7da13..1a1a3f9 100644
--- a/ccsdk-app-os/docker-dashboard-installation.sh
+++ b/ccsdk-app-os/docker-dashboard-installation.sh
@@ -1,4 +1,4 @@
-#!/bin/bash
+#!/bin/sh
#################################################################################
# =============LICENSE_START=====================================================
#
@@ -18,21 +18,14 @@
# limitations under the License.
# ============LICENSE_END========================================================
-# run import for ca certs
-if [ -e /usr/local/share/ca-certificates/cacert.pem ]
-then
- sudo mv /usr/local/share/ca-certificates/cacert.pem /usr/local/share/ca-certificates/cacert.crt
- sudo -- bash -c 'export JAVA_HOME=/usr/local/openjdk-8; /usr/sbin/update-ca-certificates'
-fi
-
# Unzip the dashboard war file
-unzip -qq -d /home/deployments/ccsdk-app /home/deployments/ccsdk-app*.war
+unzip -qq -d /tmp/ccsdk-app /tmp/ccsdk-app*.war
# Delete the dashboard war file
-rm -f /home/deployments/ccsdk-app*.war
+rm -f /tmp/ccsdk-app*.war
# Update dashboard.properties
-cat /home/deployments/ccsdk-app/WEB-INF/conf/dashboard.properties | \
+cat /tmp/ccsdk-app/WEB-INF/conf/dashboard.properties | \
sed "s~^site.primary.cloudify.url.*$~site.primary.cloudify.url = ${cfy_url}~" | \
sed "s~^site.primary.consul.url.*$~site.primary.consul.url = ${consul_url}~" | \
sed "s~^site.primary.inventory.url.*$~site.primary.inventory.url = ${inventory_url}~" | \
@@ -40,42 +33,43 @@ sed "s~^site.primary.dhandler.url.*$~site.primary.dhandler.url = ${dhandler_url}
sed "s/^site.primary.cloudify.username.*$/site.primary.cloudify.username = ${cloudify_user}/" | \
sed "s~^site.primary.cloudify.password.*$~site.primary.cloudify.password = ${cloudify_password}~" | \
sed "s/^controller.env.*$/controller.env = ${app_env}/" > /tmp/dash.prop
-mv /tmp/dash.prop /home/deployments/ccsdk-app/WEB-INF/conf/dashboard.properties
+mv /tmp/dash.prop /tmp/ccsdk-app/WEB-INF/conf/dashboard.properties
# Update system.properties
-cp /home/deployments/ccsdk-app/WEB-INF/conf/system.properties.template \
-/home/deployments/ccsdk-app/WEB-INF/conf/system.properties
-cat /home/deployments/ccsdk-app/WEB-INF/conf/system.properties | \
+cp /tmp/ccsdk-app/WEB-INF/conf/system.properties.template \
+/tmp/ccsdk-app/WEB-INF/conf/system.properties
+cat /tmp/ccsdk-app/WEB-INF/conf/system.properties | \
sed "s/^db.encrypt_flag.*$/db.encrypt_flag=false/g" | \
sed "s/postgresql:\/\/.*$/postgresql:\/\/${postgres_ip}:${postgres_port}\/${postgres_db_name}/g" | \
sed "s/^db.userName.*$/db.userName=${postgres_user_dashboard}/g" | \
sed "s/^db.password.*$/db.password=${postgres_password_dashboard}/g" > /tmp/sys.prop
-mv /tmp/sys.prop /home/deployments/ccsdk-app/WEB-INF/conf/system.properties
+mv /tmp/sys.prop /tmp/ccsdk-app/WEB-INF/conf/system.properties
# Repackage the war file
-cd /home/deployments/ccsdk-app && zip -rqq ../ccsdk-app.war * && cd -
+cd /tmp/ccsdk-app && zip -rqq ../ccsdk-app.war * && cd -
# Move the war file to Tomcat webapps directory
-mv /home/deployments/ccsdk-app.war $CATALINA_HOME/webapps
-rm -Rf /home/deployments/ccsdk-app
+mv /tmp/ccsdk-app.war $CATALINA_HOME/webapps
+rm -Rf /tmp/ccsdk-app
# create the database tables
export PGPASSWORD=$postgres_password_dashboard
psql -h $postgres_ip -U $postgres_user_dashboard $postgres_db_name -f /tmp/create_table.sql
-psql -h $postgres_ip -U $postgres_user_dashboard $postgres_db_name -c "update FN_APP set app_username='${aaf_app_user}' where app_id=1"
# Update tomcat server.xml to enable HTTPS protocol
-if [[ -f /usr/local/share/ca-certificates/cert.jks && $CATALINA_HOME/conf/server.xml ]]
+if [[ -f /opt/app/osaaf/cert.jks && $CATALINA_HOME/conf/server.xml ]]
then
echo "<Connector
protocol=\"org.apache.coyote.http11.Http11NioProtocol\"
port=\"8443\" maxThreads=\"200\"
scheme=\"https\" secure=\"true\" SSLEnabled=\"true\"
- keystoreFile=\"/usr/local/share/ca-certificates/cert.jks\" keystorePass=\"`sed -e 's/&/\&amp;/g' -e 's/</\&lt;/g' -e 's/>/\&gt;/g' -e 's/"/\&quot;/g' -e "s/'/\&apos;/g" < /usr/local/share/ca-certificates/jks.pass`\"
+ keystoreFile=\"/opt/app/osaaf/cert.jks\" keystorePass=\"`cat /opt/app/osaaf/jks.pass`\"
clientAuth=\"false\" sslProtocol=\"TLS\"/>" >> enablehttps.txt
sed '/Service name=\"Catalina\">/r enablehttps.txt' $CATALINA_HOME/conf/server.xml > $CATALINA_HOME/conf/server-https.xml
mv $CATALINA_HOME/conf/server-https.xml $CATALINA_HOME/conf/server.xml
fi
+echo 'CATALINA_OPTS="-Djavax.net.ssl.trustStore=/opt/app/osaaf/truststore.jks --illegal-access=permit"' > $CATALINA_HOME/bin/setenv.sh
+
# Start the tomcat server
catalina.sh run
diff --git a/ccsdk-app-os/pom.xml b/ccsdk-app-os/pom.xml
index 8c8b017..b4ee44b 100644
--- a/ccsdk-app-os/pom.xml
+++ b/ccsdk-app-os/pom.xml
@@ -1,5 +1,6 @@
<?xml version="1.0"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
+<project xmlns="http://maven.apache.org/POM/4.0.0"
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
@@ -13,7 +14,7 @@
<artifactId>ccsdk-app-os</artifactId>
<version>1.4.0-SNAPSHOT</version>
<packaging>war</packaging>
- <name>ONAP Operations Manager Dashboard app</name>
+ <name>DCAE Dashboard</name>
<description>CCSDK Dashboard Web Application for external release</description>
<properties>
@@ -31,7 +32,6 @@
<!-- Tests usually require some setup that maven cannot do, so skip. -->
<skiptests>true</skiptests>
<enforcer.skip>true</enforcer.skip>
-
<image.name>onap/${project.groupId}.${project.artifactId}</image.name>
<ccsdk.project.version>${project.version}</ccsdk.project.version>
<ccsdk.build.timestamp>${maven.build.timestamp}</ccsdk.build.timestamp>
@@ -41,7 +41,6 @@
<docker.buildArg.WAR_FILE>${project.build.finalName}.war</docker.buildArg.WAR_FILE>
</properties>
-
<repositories>
<repository>
<!-- Releases repository has ECOMP release artifacts -->
@@ -62,36 +61,45 @@
<url>${nexusproxy}${stagingNexusPath}</url>
</repository>
</repositories>
+
<build>
-
<!-- War files are labeled with build information, not POM version -->
<finalName>${project.artifactId}-${build.version}</finalName>
-
<plugins>
- <!-- Compile to Java 1.8 class output format -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
- <version>3.1</version>
+ <version>3.8.0</version>
<configuration>
- <source>1.8</source>
- <target>1.8</target>
+ <release>11</release>
</configuration>
</plugin>
<plugin>
- <groupId>org.codehaus.groovy.maven</groupId>
- <artifactId>gmaven-plugin</artifactId>
+ <groupId>org.codehaus.gmavenplus</groupId>
+ <artifactId>gmavenplus-plugin</artifactId>
+ <version>1.9.1</version>
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>execute</goal>
</goals>
- <configuration>
- <source>${basedir}/../TagVersion.groovy</source>
- </configuration>
</execution>
</executions>
+ <configuration>
+ <scripts>
+ <script>file:///${basedir}/../TagVersion.groovy</script>
+ </scripts>
+ </configuration>
+ <dependencies>
+ <dependency>
+ <groupId>org.codehaus.groovy</groupId>
+ <artifactId>groovy-all</artifactId>
+ <version>3.0.5</version>
+ <!-- <scope>runtime</scope> -->
+ <type>pom</type>
+ </dependency>
+ </dependencies>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
@@ -151,7 +159,7 @@
</plugin>
</plugins>
</build>
-
+
<profiles>
<profile>
<id>docker</id>
@@ -160,7 +168,7 @@
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
- <version>0.28.0</version>
+ <version>0.33.0</version>
<inherited>false</inherited>
<configuration>
<images>
@@ -260,7 +268,7 @@
</exclusion>
</exclusions>
</dependency>
- <!-- overrides for spring libs -->
+ <!-- overrides for spring libs -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
diff --git a/ccsdk-app-os/src/main/java/org/onap/portalapp/conf/ExternalAppConfig.java b/ccsdk-app-os/src/main/java/org/onap/portalapp/conf/ExternalAppConfig.java
index 665e0da..c59d5d9 100644
--- a/ccsdk-app-os/src/main/java/org/onap/portalapp/conf/ExternalAppConfig.java
+++ b/ccsdk-app-os/src/main/java/org/onap/portalapp/conf/ExternalAppConfig.java
@@ -1,8 +1,8 @@
/*-
* ================================================================================
- * ECOMP Portal SDK
+ * DCAE Dashboard
* ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property
+ * Copyright (C) 2020 AT&T Intellectual Property
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -17,6 +17,7 @@
* limitations under the License.
* ================================================================================
*/
+
package org.onap.portalapp.conf;
import java.util.ArrayList;
@@ -52,7 +53,6 @@ import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry;
-
/**
* ECOMP Portal SDK sample application. ECOMP Portal SDK core AppConfig class to
* reuse interceptors, view resolvers and other features defined there.
@@ -75,7 +75,7 @@ public class ExternalAppConfig extends AppConfig implements Configurable {
private EELFLoggerDelegate logger = EELFLoggerDelegate.getLogger(ExternalAppConfig.class);
private static final String HEALTH = "/health*";
-
+
@Configuration
@Import(SystemProperties.class)
static class InnerConfiguration {
@@ -136,14 +136,14 @@ public class ExternalAppConfig extends AppConfig implements Configurable {
@Bean
public AuthenticationInterceptor authenticationInterceptor() {
- return new AuthenticationInterceptor();
- }
-
+ return new AuthenticationInterceptor();
+ }
+
@Bean
public AuthorizationInterceptor authorizationInterceptor() {
- return new AuthorizationInterceptor();
- }
-
+ return new AuthorizationInterceptor();
+ }
+
/**
* Adds request interceptors to the specified registry by calling
* {@link AppConfig#addInterceptors(InterceptorRegistry)}, but excludes
diff --git a/ccsdk-app-os/src/main/java/org/onap/portalapp/conf/ExternalAppInitializer.java b/ccsdk-app-os/src/main/java/org/onap/portalapp/conf/ExternalAppInitializer.java
index 2624e2f..d966c3a 100644
--- a/ccsdk-app-os/src/main/java/org/onap/portalapp/conf/ExternalAppInitializer.java
+++ b/ccsdk-app-os/src/main/java/org/onap/portalapp/conf/ExternalAppInitializer.java
@@ -1,8 +1,8 @@
/*-
* ================================================================================
- * ECOMP Portal SDK
+ * DCAE Dashboard
* ================================================================================
- * Copyright (C) 2017 AT&T Intellectual Property
+ * Copyright (C) 2020 AT&T Intellectual Property
* ================================================================================
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -19,31 +19,11 @@
*/
package org.onap.portalapp.conf;
-import javax.servlet.ServletContext;
-import javax.servlet.ServletException;
-
import org.onap.ccsdk.dashboard.util.DashboardProperties;
import org.onap.portalsdk.core.conf.AppInitializer;
-import org.onap.portalsdk.core.logging.format.AlarmSeverityEnum;
-import org.onap.portalsdk.core.logging.logic.EELFLoggerDelegate;
-import org.springframework.core.env.ConfigurableEnvironment;
-import org.springframework.web.context.WebApplicationContext;
public class ExternalAppInitializer extends AppInitializer {
- /*
- @Override
- protected WebApplicationContext createServletApplicationContext() {
- WebApplicationContext context = super.createServletApplicationContext();
- try {
- ((ConfigurableEnvironment) context.getEnvironment()).setActiveProfiles("onap");
- } catch (Exception e) {
- System.out.println("Unable to set the active profile" + e.getMessage());
- //throw e;
- }
- return context;
- }
-*/
@Override
protected Class<?>[] getRootConfigClasses() {
return super.getRootConfigClasses();
diff --git a/ccsdk-app-os/src/main/java/org/onap/portalapp/interceptor/AuthenticationInterceptor.java b/ccsdk-app-os/src/main/java/org/onap/portalapp/interceptor/AuthenticationInterceptor.java
index 206f364..e8a64b3 100644
--- a/ccsdk-app-os/src/main/java/org/onap/portalapp/interceptor/AuthenticationInterceptor.java
+++ b/ccsdk-app-os/src/main/java/org/onap/portalapp/interceptor/AuthenticationInterceptor.java
@@ -18,6 +18,7 @@
* ============LICENSE_END=========================================================
*
*******************************************************************************/
+
package org.onap.portalapp.interceptor;
import java.io.IOException;
@@ -25,7 +26,6 @@ import java.nio.charset.StandardCharsets;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
-//import javax.xml.bind.DatatypeConverter;
import java.util.Base64;
import org.apache.http.HttpStatus;
@@ -33,70 +33,65 @@ import org.onap.portalsdk.core.domain.User;
import org.onap.portalsdk.core.service.UserProfileService;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.ResponseEntity;
import org.springframework.web.servlet.HandlerInterceptor;
import org.springframework.web.servlet.ModelAndView;
public class AuthenticationInterceptor implements HandlerInterceptor {
- @Autowired
- private UserProfileService userSvc;
-
- @Override
- public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) {
- String authString = request.getHeader("Authorization");
- try {
- if(authString == null || authString.isEmpty())
- {
- response.setStatus(HttpStatus.SC_UNAUTHORIZED);
- response.sendError(HttpStatus.SC_UNAUTHORIZED, "Authentication information is missing");
- return false; //Do not continue with request
- } else {
- String decodedAuth = "";
- String[] authParts = authString.split("\\s+");
- String authInfo = authParts[1];
- byte[] bytes = null;
- bytes = Base64.getDecoder().decode(authInfo);
- //DatatypeConverter.parseBase64Binary(authInfo);
- decodedAuth = new String(bytes,StandardCharsets.UTF_8);
- String[] authen = decodedAuth.split(":");
+ @Autowired
+ private UserProfileService userSvc;
+
+ @Override
+ public boolean preHandle(HttpServletRequest request, HttpServletResponse response,
+ Object handler) {
+ String authString = request.getHeader("Authorization");
+ try {
+ if (authString == null || authString.isEmpty()) {
+ response.setStatus(HttpStatus.SC_UNAUTHORIZED);
+ response.sendError(HttpStatus.SC_UNAUTHORIZED,
+ "Authentication information is missing");
+ return false; // Do not continue with request
+ } else {
+ String decodedAuth = "";
+ String[] authParts = authString.split("\\s+");
+ String authInfo = authParts[1];
+ byte[] bytes = null;
+ bytes = Base64.getDecoder().decode(authInfo);
+ // DatatypeConverter.parseBase64Binary(authInfo);
+ decodedAuth = new String(bytes, StandardCharsets.UTF_8);
+ String[] authen = decodedAuth.split(":");
+
+ if (authen.length > 1) {
+ User user = userSvc.getUserByLoginId(authen[0]);
+ if (user == null) {
+ response.sendError(HttpStatus.SC_UNAUTHORIZED,
+ "Un-authorized to perform this operation");
+ return false;
+ }
+ } else {
+ return false;
+ }
+ }
+ } catch (Exception e) {
+ try {
+ response.sendError(HttpStatus.SC_UNAUTHORIZED, e.getMessage());
+ } catch (IOException e1) {
+ return false;
+ }
+ return false;
+ }
+ return true; // Continue with request
+ }
+
+ @Override
+ public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
+ ModelAndView modelAndView) throws Exception {
+ // Ignore
+ }
- if (authen.length > 1) {
- User user = userSvc.getUserByLoginId(authen[0]);
- if (user == null) {
- response.sendError(HttpStatus.SC_UNAUTHORIZED, "Un-authorized to perform this operation");
- return false;
- }
-/* ResponseEntity<String> getResponse =
- userSrvc.checkUserExists(authen[0], authen[1]);
- if (getResponse.getStatusCode().value() != 200) {
- response.sendError(HttpStatus.SC_UNAUTHORIZED, "Un-authorized to perform this operation");
- return false;
- }*/
- } else {
- return false;
- }
- }
- } catch (Exception e) {
- try {
- response.sendError(HttpStatus.SC_UNAUTHORIZED, e.getMessage());
- } catch (IOException e1) {
- return false;
- }
- return false;
- }
- return true; //Continue with request
- }
-
- @Override
- public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
- ModelAndView modelAndView) throws Exception {
- //Ignore
- }
-
- @Override
- public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)
- throws Exception {
- //Ignore
- }
+ @Override
+ public void afterCompletion(HttpServletRequest request, HttpServletResponse response,
+ Object handler, Exception ex) throws Exception {
+ // Ignore
+ }
}
diff --git a/ccsdk-app-os/src/main/java/org/onap/portalapp/interceptor/AuthorizationInterceptor.java b/ccsdk-app-os/src/main/java/org/onap/portalapp/interceptor/AuthorizationInterceptor.java
index 2f3362b..df230d2 100644
--- a/ccsdk-app-os/src/main/java/org/onap/portalapp/interceptor/AuthorizationInterceptor.java
+++ b/ccsdk-app-os/src/main/java/org/onap/portalapp/interceptor/AuthorizationInterceptor.java
@@ -18,6 +18,7 @@
* ============LICENSE_END=========================================================
*
*******************************************************************************/
+
package org.onap.portalapp.interceptor;
import java.util.HashSet;
@@ -33,30 +34,31 @@ import org.springframework.web.servlet.ModelAndView;
import com.fasterxml.jackson.databind.ObjectMapper;
public class AuthorizationInterceptor implements HandlerInterceptor {
-
+
protected final ObjectMapper objectMapper = new ObjectMapper();
-
- @Override
- public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
+
+ @Override
+ public boolean preHandle(HttpServletRequest request, HttpServletResponse response,
+ Object handler) throws Exception {
Set<String> userRoleSet = new HashSet<String>();
Set<String> userApps = new TreeSet<>();
userRoleSet.add("Standard User");
- userRoleSet.add("ECOMPC_DCAE_WRITE");
+ userRoleSet.add("DCAE_WRITE");
userApps.add("dcae");
request.setAttribute("userRoles", userRoleSet);
- request.setAttribute("userApps", userApps);
- return true; //Continue with request
- }
-
- @Override
- public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
- ModelAndView modelAndView) throws Exception {
- //Ignore
- }
-
- @Override
- public void afterCompletion(HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex)
- throws Exception {
- //Ignore
- }
+ request.setAttribute("userApps", userApps);
+ return true; // Continue with request
+ }
+
+ @Override
+ public void postHandle(HttpServletRequest request, HttpServletResponse response, Object handler,
+ ModelAndView modelAndView) throws Exception {
+ // Ignore
+ }
+
+ @Override
+ public void afterCompletion(HttpServletRequest request, HttpServletResponse response,
+ Object handler, Exception ex) throws Exception {
+ // Ignore
+ }
}
diff --git a/ccsdk-app-os/src/main/java/org/onap/portalapp/login/LoginStrategyImpl.java b/ccsdk-app-os/src/main/java/org/onap/portalapp/login/LoginStrategyImpl.java
index d7c9ab7..8e80e79 100644
--- a/ccsdk-app-os/src/main/java/org/onap/portalapp/login/LoginStrategyImpl.java
+++ b/ccsdk-app-os/src/main/java/org/onap/portalapp/login/LoginStrategyImpl.java
@@ -1,6 +1,6 @@
/*-
* ================================================================================
- * ECOMP Portal SDK
+ * DCAE Dashboard
* ================================================================================
* Copyright (C) 2017 AT&T Intellectual Property
* ================================================================================
@@ -35,15 +35,9 @@ import org.onap.portalsdk.core.auth.LoginStrategy;
import org.onap.portalsdk.core.command.LoginBean;
import org.onap.portalsdk.core.domain.Role;
import org.onap.portalsdk.core.domain.RoleFunction;
-import org.onap.portalsdk.core.domain.User;
-import org.onap.portalsdk.core.domain.FusionObject.Parameters;
import org.onap.portalsdk.core.logging.logic.EELFLoggerDelegate;
import org.onap.portalsdk.core.menu.MenuProperties;
import org.onap.portalsdk.core.onboarding.exception.PortalAPIException;
-import org.onap.portalsdk.core.onboarding.util.CipherUtil;
-import org.onap.portalsdk.core.onboarding.util.PortalApiConstants;
-import org.onap.portalsdk.core.onboarding.util.PortalApiProperties;
-import org.onap.portalsdk.core.service.DataAccessService;
import org.onap.portalsdk.core.service.LoginService;
import org.onap.portalsdk.core.service.RoleService;
import org.onap.portalsdk.core.util.SystemProperties;
@@ -61,9 +55,10 @@ public class LoginStrategyImpl extends LoginStrategy {
@Autowired
private RoleService roleService;
-
+
@Override
- public ModelAndView doExternalLogin(HttpServletRequest request, HttpServletResponse response) throws IOException {
+ public ModelAndView doExternalLogin(HttpServletRequest request, HttpServletResponse response)
+ throws IOException {
invalidateExistingSession(request);
@@ -72,13 +67,15 @@ public class LoginStrategyImpl extends LoginStrategy {
String password = request.getParameter("password");
commandBean.setLoginId(loginId);
commandBean.setLoginPwd(password);
- //commandBean.setUserid(loginId);
+ // commandBean.setUserid(loginId);
commandBean = loginService.findUser(commandBean,
- (String) request.getAttribute(MenuProperties.MENU_PROPERTIES_FILENAME_KEY), new HashMap());
+ (String) request.getAttribute(MenuProperties.MENU_PROPERTIES_FILENAME_KEY),
+ new HashMap());
List<RoleFunction> roleFunctionList = roleService.getRoleFunctions(loginId);
if (commandBean.getUser() == null) {
- String loginErrorMessage = (commandBean.getLoginErrorMessage() != null) ? commandBean.getLoginErrorMessage()
+ String loginErrorMessage =
+ (commandBean.getLoginErrorMessage() != null) ? commandBean.getLoginErrorMessage()
: "login.error.external.invalid - User name and/or password incorrect";
Map<String, String> model = new HashMap<>();
model.put("error", loginErrorMessage);
@@ -86,53 +83,55 @@ public class LoginStrategyImpl extends LoginStrategy {
} else {
// store the currently logged in user's information in the session
UserUtils.setUserSession(request, commandBean.getUser(), commandBean.getMenu(),
- commandBean.getBusinessDirectMenu(),
- SystemProperties.getProperty(SystemProperties.LOGIN_METHOD_BACKDOOR), roleFunctionList);
+ commandBean.getBusinessDirectMenu(),
+ SystemProperties.getProperty(SystemProperties.LOGIN_METHOD_BACKDOOR),
+ roleFunctionList);
// set the user's max role level in session
final String adminRole = "System Administrator";
final String standardRole = "Standard User";
final String readRole = "Read Access";
final String writeRole = "Write Access";
-
+
String maxRole = "";
String authType = "READ";
String accessLevel = "app";
-
- Predicate<Role> adminRoleFilter =
+
+ Predicate<Role> adminRoleFilter =
p -> p.getName() != null && p.getName().equalsIgnoreCase(adminRole);
-
- Predicate<Role> writeRoleFilter =
- p -> p.getName() != null && (p.getName().equalsIgnoreCase(writeRole) || p.getName().equalsIgnoreCase(standardRole));
-
- Predicate<Role> readRoleFilter =
- p -> p.getName() != null && (p.getName().equalsIgnoreCase(readRole) );
+
+ Predicate<Role> writeRoleFilter =
+ p -> p.getName() != null && (p.getName().equalsIgnoreCase(writeRole)
+ || p.getName().equalsIgnoreCase(standardRole));
+
+ Predicate<Role> readRoleFilter =
+ p -> p.getName() != null && (p.getName().equalsIgnoreCase(readRole));
if (UserUtils.getUserSession(request) != null) {
@SuppressWarnings("unchecked")
- Collection<org.onap.portalsdk.core.domain.Role> userRoles =
+ Collection<org.onap.portalsdk.core.domain.Role> userRoles =
UserUtils.getRoles(request).values();
- if (userRoles.stream().anyMatch(adminRoleFilter) ) {
+ if (userRoles.stream().anyMatch(adminRoleFilter)) {
maxRole = "admin";
- } else if (userRoles.stream().anyMatch(writeRoleFilter) ) {
+ } else if (userRoles.stream().anyMatch(writeRoleFilter)) {
maxRole = "write";
- } else if (userRoles.stream().anyMatch(readRoleFilter) ) {
+ } else if (userRoles.stream().anyMatch(readRoleFilter)) {
maxRole = "read";
}
- switch(maxRole) {
+ switch (maxRole) {
case "admin":
authType = "ADMIN";
accessLevel = "ops";
break;
case "write":
authType = "WRITE";
- accessLevel = "dev";
+ accessLevel = "dev";
break;
case "read":
authType = "READ";
- accessLevel = "dev";
- break;
+ accessLevel = "dev";
+ break;
default:
- accessLevel = "app";
+ accessLevel = "app";
}
}
AppUtils.getSession(request).setAttribute("role_level", accessLevel);
@@ -142,7 +141,7 @@ public class LoginStrategyImpl extends LoginStrategy {
return new ModelAndView("redirect:welcome");
}
}
-
+
@Override
public ModelAndView doLogin(HttpServletRequest request, HttpServletResponse response)
throws Exception {
@@ -165,7 +164,7 @@ public class LoginStrategyImpl extends LoginStrategy {
return userid;
}
- private static String getUserIdFromCookie(HttpServletRequest request){
+ private static String getUserIdFromCookie(HttpServletRequest request) {
String userId = "";
Cookie[] cookies = request.getCookies();
Cookie userIdcookie = null;
diff --git a/ccsdk-app-os/src/main/java/org/onap/portalapp/service/AdminAuthExtension.java b/ccsdk-app-os/src/main/java/org/onap/portalapp/service/AdminAuthExtension.java
index da306f6..65e8541 100644
--- a/ccsdk-app-os/src/main/java/org/onap/portalapp/service/AdminAuthExtension.java
+++ b/ccsdk-app-os/src/main/java/org/onap/portalapp/service/AdminAuthExtension.java
@@ -1,6 +1,6 @@
/*-
* ================================================================================
- * ECOMP Portal SDK
+ * DCAE Dashboard
* ================================================================================
* Copyright (C) 2017 AT&T Intellectual Property
* ================================================================================
@@ -17,11 +17,11 @@
* limitations under the License.
* ================================================================================
*/
+
package org.onap.portalapp.service;
import java.util.Set;
-import org.onap.portalapp.service.IAdminAuthExtension;
import org.onap.portalsdk.core.domain.Role;
import org.onap.portalsdk.core.domain.User;
import org.onap.portalsdk.core.logging.logic.EELFLoggerDelegate;
diff --git a/ccsdk-app-os/src/main/resources/swagger.json b/ccsdk-app-os/src/main/resources/swagger.json
index 7a02e5a..8d4f463 100644
--- a/ccsdk-app-os/src/main/resources/swagger.json
+++ b/ccsdk-app-os/src/main/resources/swagger.json
@@ -1,7 +1,7 @@
{
"swagger": "2.0",
"info": {
- "description": "API to manage deployment of microservices using blueprints.",
+ "description": "API to manage deployment of microservices using blueprints. HTTP Basic authorization schema is required to authenticate users for all the resource endpoints. The client sends HTTP requests with an Authorization header containing base64-encoded username:password string.",
"version": "1.4.0",
"title": "DCAE Dashboard API",
"contact": {
@@ -53,6 +53,9 @@
},
"400": {
"description": "Invalid status value"
+ },
+ "401": {
+ "$ref": "#/responses/UnauthorizedError"
}
}
}
@@ -70,17 +73,24 @@
],
"parameters": [
{
- "name": "pageNum",
+ "name": "page",
"in": "query",
"description": "pagination control - page number",
"required": true,
- "type": "string"
+ "type": "integer"
},
{
- "name": "viewPerPage",
+ "name": "size",
"in": "query",
"description": "pagination control - page size",
"required": true,
+ "type": "integer"
+ },
+ {
+ "name": "filters",
+ "in": "query",
+ "description": "search filters, {\"_include\":\"id\", \"tenant\":\"onap-tenant-1\",\"serviceId\":\"dcae\"}",
+ "required": false,
"type": "string"
}
],
@@ -90,12 +100,21 @@
"schema": {
"type": "array",
"items": {
- "$ref": "#/definitions/DCAEService"
+ "$ref": "#/definitions/Deployment"
+ }
+ },
+ "headers": {
+ "Link": {
+ "type": "string",
+ "description": "pagination header"
}
}
},
"400": {
"description": "Invalid status value"
+ },
+ "401": {
+ "$ref": "#/responses/UnauthorizedError"
}
}
},
@@ -124,12 +143,15 @@
}
],
"responses": {
- "200": {
+ "201": {
"description": "successful operation",
"schema": {
"$ref": "#/definitions/DeploymentResource"
}
},
+ "401": {
+ "$ref": "#/responses/UnauthorizedError"
+ },
"405": {
"description": "Invalid input"
}
@@ -164,7 +186,7 @@
}
],
"responses": {
- "200": {
+ "204": {
"description": "successful operation",
"schema": {
"type": "string"
@@ -172,6 +194,9 @@
},
"400": {
"description": "Invalid status value"
+ },
+ "401": {
+ "$ref": "#/responses/UnauthorizedError"
}
}
},
@@ -210,6 +235,9 @@
"400": {
"description": "Invalid ID supplied"
},
+ "401": {
+ "$ref": "#/responses/UnauthorizedError"
+ },
"404": {
"description": "Deployment not found"
},
@@ -243,12 +271,15 @@
"schema": {
"type": "array",
"items": {
- "$ref": "#/definitions/DCAEService"
+ "$ref": "#/definitions/Deployment"
}
}
},
"400": {
"description": "Invalid status value"
+ },
+ "401": {
+ "$ref": "#/responses/UnauthorizedError"
}
}
}
@@ -292,6 +323,9 @@
},
"400": {
"description": "Invalid status value"
+ },
+ "401": {
+ "$ref": "#/responses/UnauthorizedError"
}
}
}
@@ -322,6 +356,9 @@
"schema": {
"$ref": "#/definitions/serviceHealth"
}
+ },
+ "401": {
+ "$ref": "#/responses/UnauthorizedError"
}
}
}
@@ -365,6 +402,9 @@
},
"400": {
"description": "Invalid status value"
+ },
+ "401": {
+ "$ref": "#/responses/UnauthorizedError"
}
}
}
@@ -382,35 +422,25 @@
],
"parameters": [
{
- "name": "pageNum",
+ "name": "page",
"in": "query",
- "description": "pagination control - page number",
- "required": true,
+ "description": "page number",
+ "required": false,
"type": "string"
},
{
- "name": "viewPerPage",
+ "name": "size",
"in": "query",
- "description": "pagination control - page size",
- "required": true,
+ "description": "page size",
+ "required": false,
"type": "string"
},
{
- "name": "_include",
+ "name": "filters",
"in": "query",
- "description": "blueprint object properties need to be considered for filter",
+ "description": "search filters, {\"owner\":\"user1\", \"name\":\"user1-bp1\",\"id\":\"2334-343\"}",
"required": false,
- "type": "array",
- "items": {
- "type": "string",
- "enum": [
- "typeName",
- "typeId",
- "typeVersion"
- ],
- "default": "typeName"
- },
- "collectionFormat": "multi"
+ "type": "string"
}
],
"responses": {
@@ -418,10 +448,19 @@
"description": "List of `DCAEServiceType` objects",
"schema": {
"$ref": "#/definitions/InlineResponse200"
+ },
+ "headers": {
+ "Link": {
+ "type": "string",
+ "description": "pagination header"
+ }
}
},
"400": {
"description": "Invalid tag value"
+ },
+ "401": {
+ "$ref": "#/responses/UnauthorizedError"
}
}
},
@@ -447,7 +486,7 @@
}
],
"responses": {
- "200": {
+ "201": {
"description": "A `DCAEServiceType` object",
"schema": {
"$ref": "#/definitions/InlineResponse200"
@@ -455,6 +494,9 @@
},
"400": {
"description": "Invalid tag value"
+ },
+ "401": {
+ "$ref": "#/responses/UnauthorizedError"
}
}
}
@@ -480,8 +522,11 @@
}
],
"responses": {
- "200": {
+ "204": {
"description": "successful operation"
+ },
+ "401": {
+ "$ref": "#/responses/UnauthorizedError"
}
}
}
@@ -509,11 +554,24 @@
"responses": {
"200": {
"description": "successful operation"
+ },
+ "401": {
+ "$ref": "#/responses/UnauthorizedError"
}
}
}
}
},
+ "securityDefinitions": {
+ "basicAuth": {
+ "type": "basic"
+ }
+ },
+ "security": [
+ {
+ "basicAuth": []
+ }
+ ],
"responses": {
"UnauthorizedError": {
"description": "Authentication information is missing or invalid",
@@ -534,33 +592,21 @@
}
}
},
- "ComponentInput": {
- "type": "object",
- "properties": {
- "cname": {
- "type": "string",
- "description": "component namespace name"
- },
- "dname": {
- "type": "string",
- "description": "component display name"
- }
- }
- },
"InlineResponse200": {
"type": "object",
"properties": {
- "links": {
- "$ref": "#/definitions/InlineResponse200Links"
+ "totalItems": {
+ "type": "integer",
+ "format": "int32"
},
- "totalCount": {
+ "totalPages": {
"type": "integer",
"format": "int32"
},
"items": {
"type": "array",
"items": {
- "$ref": "#/definitions/DCAEServiceType"
+ "$ref": "#/definitions/DCAEServiceTypeSummary"
}
}
}
@@ -592,53 +638,26 @@
}
}
},
- "DCAEService": {
+ "Deployment": {
"type": "object",
"properties": {
- "serviceId": {
+ "id": {
+ "description": "cloudify deployment name",
"type": "string"
},
- "selfLink": {
- "description": "Link.title is serviceId",
- "$ref": "#/definitions/Link"
+ "blueprint_id": {
+ "description": "cloudify blueprint name",
+ "type": "string"
},
- "created": {
+ "created_at": {
"type": "string",
"format": "date-time"
},
- "modified": {
+ "updated_at": {
"type": "string",
"format": "date-time"
},
- "typeLink": {
- "description": "Link.title is typeId",
- "$ref": "#/definitions/Link"
- },
- "vnfId": {
- "type": "string"
- },
- "vnfLink": {
- "description": "Link.title is vnfId",
- "$ref": "#/definitions/Link"
- },
- "vnfType": {
- "type": "string"
- },
- "vnfLocation": {
- "type": "string",
- "description": "Location information of the associated VNF"
- },
- "deploymentRef": {
- "type": "string",
- "description": "Reference to a Cloudify deployment"
- },
- "components": {
- "type": "array",
- "items": {
- "$ref": "#/definitions/DCAEServiceComponent"
- }
- },
- "tenant": {
+ "tenant_name": {
"type": "string",
"description": "cloudify tenant name"
}
@@ -657,7 +676,7 @@
"items": {
"type": "array",
"items": {
- "$ref": "#/definitions/DCAEService"
+ "$ref": "#/definitions/Deployment"
}
}
}
@@ -758,7 +777,6 @@
"owner",
"typeName",
"typeVersion",
- "application",
"component"
],
"properties": {
@@ -784,7 +802,7 @@
},
"component": {
"type": "string",
- "description": "onboarding component name"
+ "description": "onboarding component name e.g. dcae"
}
}
},
@@ -868,6 +886,50 @@
}
}
},
+ "DCAEServiceTypeSummary": {
+ "type": "object",
+ "required": [
+ "created",
+ "owner",
+ "selfLink",
+ "typeId",
+ "typeName",
+ "typeVersion",
+ "application",
+ "component"
+ ],
+ "properties": {
+ "owner": {
+ "type": "string"
+ },
+ "typeName": {
+ "type": "string",
+ "description": "Descriptive name for this DCAE service type"
+ },
+ "application": {
+ "type": "string",
+ "description": "application name"
+ },
+ "component": {
+ "type": "string",
+ "description": "component name"
+ },
+ "typeVersion": {
+ "type": "integer",
+ "format": "int32",
+ "description": "Version number for this DCAE service type"
+ },
+ "typeId": {
+ "type": "string",
+ "description": "Unique identifier for this DCAE service type"
+ },
+ "created": {
+ "type": "string",
+ "format": "date-time",
+ "description": "Created timestamp for this DCAE service type in epoch time"
+ }
+ }
+ },
"CloudifyDeploymentUpgradeRequest": {
"type": "object",
"required": [
@@ -910,7 +972,7 @@
"required": [
"component",
"tag",
- "blueprintName",
+ "blueprintId",
"tenant",
"inputs"
],
@@ -921,11 +983,11 @@
},
"tag": {
"type": "string",
- "description": "tag to identify the deployment"
+ "description": "unique tag to identify the deployment. A non-unique value results in name conflict error"
},
"blueprintId": {
"type": "string",
- "description": "typeId from inventory, a unique Id for the blueprint"
+ "description": "typeId from inventory, a unique Id for the blueprint, this can be replaced with blueprintName and blueprintVersion"
},
"blueprintName": {
"type": "string",
@@ -934,7 +996,7 @@
"blueprintVersion": {
"type": "integer",
"format": "int32",
- "description": "Version number for this DCAE service type, optional. Defaults to latest version."
+ "description": "Version number for this DCAE service type, optional. Defaults to 1."
},
"tenant": {
"type": "string",
diff --git a/ccsdk-app-os/src/main/webapp/WEB-INF/conf/system.properties.template b/ccsdk-app-os/src/main/webapp/WEB-INF/conf/system.properties.template
index 940bcf1..2ca6f1b 100644
--- a/ccsdk-app-os/src/main/webapp/WEB-INF/conf/system.properties.template
+++ b/ccsdk-app-os/src/main/webapp/WEB-INF/conf/system.properties.template
@@ -51,7 +51,7 @@ mobile_enable = false
# Cache config file is needed on the classpath
cache_config_file_path = /WEB-INF/classes/cache.ccf
-cache_switch = 199
+cache_switch = 1
cache_load_on_startup = false
user_name = fullName
diff --git a/ccsdk-app-os/src/main/webapp/api-specs.html b/ccsdk-app-os/src/main/webapp/api-specs.html
index 9a7d498..6dadc64 100644
--- a/ccsdk-app-os/src/main/webapp/api-specs.html
+++ b/ccsdk-app-os/src/main/webapp/api-specs.html
@@ -1505,6 +1505,11 @@ var n=this.pipeline.run(e.tokenizer(t)),r=new e.Vector,i=[],o=this._fields.reduc
</li>
<li>
+ <a href="#authentication" class="toc-h1 toc-link" data-title="Authentication">Authentication</a>
+
+ </li>
+
+ <li>
<a href="#dcae-dashboard-api-blueprints" class="toc-h1 toc-link" data-title="Blueprints">Blueprints</a>
<ul class="toc-list-h2">
@@ -1607,11 +1612,6 @@ var n=this.pipeline.run(e.tokenizer(t)),r=new e.Vector,i=[],o=this._fields.reduc
</li>
<li>
- <a href="#tocscomponentinput" class="toc-h2 toc-link" data-title="">ComponentInput</a>
-
- </li>
-
- <li>
<a href="#tocsinlineresponse200" class="toc-h2 toc-link" data-title="">InlineResponse200</a>
</li>
@@ -1627,7 +1627,7 @@ var n=this.pipeline.run(e.tokenizer(t)),r=new e.Vector,i=[],o=this._fields.reduc
</li>
<li>
- <a href="#tocsdcaeservice" class="toc-h2 toc-link" data-title="">DCAEService</a>
+ <a href="#tocsdeployment" class="toc-h2 toc-link" data-title="">Deployment</a>
</li>
@@ -1662,6 +1662,11 @@ var n=this.pipeline.run(e.tokenizer(t)),r=new e.Vector,i=[],o=this._fields.reduc
</li>
<li>
+ <a href="#tocsdcaeservicetypesummary" class="toc-h2 toc-link" data-title="">DCAEServiceTypeSummary</a>
+
+ </li>
+
+ <li>
<a href="#tocscloudifydeploymentupgraderequest" class="toc-h2 toc-link" data-title="">CloudifyDeploymentUpgradeRequest</a>
</li>
@@ -1717,7 +1722,7 @@ var n=this.pipeline.run(e.tokenizer(t)),r=new e.Vector,i=[],o=this._fields.reduc
<blockquote>
<p>Scroll down for code samples, example requests and responses. Select a language for code samples from the tabs above or the mobile navigation menu.</p>
</blockquote>
-<p>API to manage deployment of microservices using blueprints.</p>
+<p>API to manage deployment of microservices using blueprints. HTTP Basic authorization schema is required to authenticate users for all the resource endpoints. The client sends HTTP requests with an Authorization header containing base64-encoded username:password string.</p>
<p>Base URLs:</p>
<ul>
<li>
@@ -1728,6 +1733,10 @@ var n=this.pipeline.run(e.tokenizer(t)),r=new e.Vector,i=[],o=this._fields.reduc
</li>
</ul>
<p>Email: <a href="mailto:rp5662@att.com">Support</a></p>
+<h1 id="authentication">Authentication</h1>
+<ul>
+<li>HTTP Authentication, scheme: basic</li>
+</ul>
<h1 id="dcae-dashboard-api-blueprints">Blueprints</h1>
<p>Query blueprint information</p>
<h2 id="list-blueprints">List Blueprints</h2>
@@ -1741,14 +1750,14 @@ headers = {
}
r = requests.get(<span class="hljs-string">'https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/blueprints'</span>, params={
- <span class="hljs-string">'pageNum'</span>: <span class="hljs-string">'string'</span>, <span class="hljs-string">'viewPerPage'</span>: <span class="hljs-string">'string'</span>
+
}, headers = headers)
<span class="hljs-keyword">print</span> r.json()
</code></pre>
<pre class="highlight tab tab-shell"><code><span class="hljs-comment"># You can also use wget</span>
-curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/blueprints?pageNum=string&amp;viewPerPage=string \
+curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/blueprints \
-H <span class="hljs-string">'Accept: application/json'</span>
</code></pre>
@@ -1768,48 +1777,25 @@ curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/blueprints?pageNum=s
</thead>
<tbody>
<tr>
-<td>pageNum</td>
+<td>page</td>
<td>query</td>
<td>string</td>
-<td>true</td>
-<td>pagination control - page number</td>
+<td>false</td>
+<td>page number</td>
</tr>
<tr>
-<td>viewPerPage</td>
+<td>size</td>
<td>query</td>
<td>string</td>
-<td>true</td>
-<td>pagination control - page size</td>
+<td>false</td>
+<td>page size</td>
</tr>
<tr>
-<td>_include</td>
+<td>filters</td>
<td>query</td>
-<td>array[string]</td>
+<td>string</td>
<td>false</td>
-<td>blueprint object properties need to be considered for filter</td>
-</tr>
-</tbody>
-</table>
-<h4 id="enumerated-values">Enumerated Values</h4>
-<table>
-<thead>
-<tr>
-<th>Parameter</th>
-<th>Value</th>
-</tr>
-</thead>
-<tbody>
-<tr>
-<td>_include</td>
-<td>typeName</td>
-</tr>
-<tr>
-<td>_include</td>
-<td>typeId</td>
-</tr>
-<tr>
-<td>_include</td>
-<td>typeVersion</td>
+<td>search filters, {&quot;owner&quot;:&quot;user1&quot;, &quot;name&quot;:&quot;user1-bp1&quot;,&quot;id&quot;:&quot;2334-343&quot;}</td>
</tr>
</tbody>
</table>
@@ -1820,72 +1806,17 @@ curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/blueprints?pageNum=s
<p>200 Response</p>
</blockquote>
<pre class="highlight tab tab-json"><code>{
- <span class="hljs-attr">"links"</span>: {
- <span class="hljs-attr">"previousLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"nextLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- }
- },
- <span class="hljs-attr">"totalCount"</span>: <span class="hljs-number">0</span>,
+ <span class="hljs-attr">"totalItems"</span>: <span class="hljs-number">0</span>,
+ <span class="hljs-attr">"totalPages"</span>: <span class="hljs-number">0</span>,
<span class="hljs-attr">"items"</span>: [
{
<span class="hljs-attr">"owner"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"typeName"</span>: <span class="hljs-string">"string"</span>,
+ <span class="hljs-attr">"application"</span>: <span class="hljs-string">"string"</span>,
+ <span class="hljs-attr">"component"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"typeVersion"</span>: <span class="hljs-number">0</span>,
- <span class="hljs-attr">"blueprintTemplate"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"serviceIds"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"vnfTypes"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"serviceLocations"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"asdcServiceId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"asdcResourceId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"asdcServiceURL"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"typeId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"selfLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"created"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"deactivated"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>
+ <span class="hljs-attr">"created"</span>: <span class="hljs-string">"2020-08-20T00:20:10Z"</span>
}
]
}
@@ -1913,10 +1844,45 @@ curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/blueprints?pageNum=s
<td>Invalid tag value</td>
<td>None</td>
</tr>
+<tr>
+<td>401</td>
+<td><a href="https://tools.ietf.org/html/rfc7235#section-3.1">Unauthorized</a></td>
+<td>Authentication information is missing or invalid</td>
+<td>None</td>
+</tr>
</tbody>
</table>
-<aside class="success">
-This operation does not require authentication
+<h3 id="response-headers">Response Headers</h3>
+<table>
+<thead>
+<tr>
+<th>Status</th>
+<th>Header</th>
+<th>Type</th>
+<th>Format</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>200</td>
+<td>Link</td>
+<td>string</td>
+<td></td>
+<td>pagination header</td>
+</tr>
+<tr>
+<td>401</td>
+<td>WWW_Authenticate</td>
+<td>string</td>
+<td></td>
+<td>none</td>
+</tr>
+</tbody>
+</table>
+<aside class="warning">
+To perform this operation, you must be authenticated by means of one of the following methods:
+basicAuth
</aside>
<h2 id="create-blueprint">Create Blueprint</h2>
<p><a id="opIdCreate Blueprint"></a></p>
@@ -1982,75 +1948,20 @@ curl -X POST https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/blueprints \
<p>Example responses</p>
</blockquote>
<blockquote>
-<p>200 Response</p>
+<p>201 Response</p>
</blockquote>
<pre class="highlight tab tab-json"><code>{
- <span class="hljs-attr">"links"</span>: {
- <span class="hljs-attr">"previousLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"nextLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- }
- },
- <span class="hljs-attr">"totalCount"</span>: <span class="hljs-number">0</span>,
+ <span class="hljs-attr">"totalItems"</span>: <span class="hljs-number">0</span>,
+ <span class="hljs-attr">"totalPages"</span>: <span class="hljs-number">0</span>,
<span class="hljs-attr">"items"</span>: [
{
<span class="hljs-attr">"owner"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"typeName"</span>: <span class="hljs-string">"string"</span>,
+ <span class="hljs-attr">"application"</span>: <span class="hljs-string">"string"</span>,
+ <span class="hljs-attr">"component"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"typeVersion"</span>: <span class="hljs-number">0</span>,
- <span class="hljs-attr">"blueprintTemplate"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"serviceIds"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"vnfTypes"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"serviceLocations"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"asdcServiceId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"asdcResourceId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"asdcServiceURL"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"typeId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"selfLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"created"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"deactivated"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>
+ <span class="hljs-attr">"created"</span>: <span class="hljs-string">"2020-08-20T00:20:10Z"</span>
}
]
}
@@ -2067,8 +1978,8 @@ curl -X POST https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/blueprints \
</thead>
<tbody>
<tr>
-<td>200</td>
-<td><a href="https://tools.ietf.org/html/rfc7231#section-6.3.1">OK</a></td>
+<td>201</td>
+<td><a href="https://tools.ietf.org/html/rfc7231#section-6.3.2">Created</a></td>
<td>A <code>DCAEServiceType</code> object</td>
<td><a href="#schemainlineresponse200">InlineResponse200</a></td>
</tr>
@@ -2078,10 +1989,38 @@ curl -X POST https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/blueprints \
<td>Invalid tag value</td>
<td>None</td>
</tr>
+<tr>
+<td>401</td>
+<td><a href="https://tools.ietf.org/html/rfc7235#section-3.1">Unauthorized</a></td>
+<td>Authentication information is missing or invalid</td>
+<td>None</td>
+</tr>
</tbody>
</table>
-<aside class="success">
-This operation does not require authentication
+<h3 id="response-headers">Response Headers</h3>
+<table>
+<thead>
+<tr>
+<th>Status</th>
+<th>Header</th>
+<th>Type</th>
+<th>Format</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>401</td>
+<td>WWW_Authenticate</td>
+<td>string</td>
+<td></td>
+<td>none</td>
+</tr>
+</tbody>
+</table>
+<aside class="warning">
+To perform this operation, you must be authenticated by means of one of the following methods:
+basicAuth
</aside>
<h2 id="delete-blueprint">Delete Blueprint</h2>
<p><a id="opIdDelete Blueprint"></a></p>
@@ -2137,15 +2076,43 @@ curl -X DELETE https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/blueprints/{typeI
</thead>
<tbody>
<tr>
-<td>200</td>
-<td><a href="https://tools.ietf.org/html/rfc7231#section-6.3.1">OK</a></td>
+<td>204</td>
+<td><a href="https://tools.ietf.org/html/rfc7231#section-6.3.5">No Content</a></td>
<td>successful operation</td>
<td>None</td>
</tr>
+<tr>
+<td>401</td>
+<td><a href="https://tools.ietf.org/html/rfc7235#section-3.1">Unauthorized</a></td>
+<td>Authentication information is missing or invalid</td>
+<td>None</td>
+</tr>
+</tbody>
+</table>
+<h3 id="response-headers">Response Headers</h3>
+<table>
+<thead>
+<tr>
+<th>Status</th>
+<th>Header</th>
+<th>Type</th>
+<th>Format</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>401</td>
+<td>WWW_Authenticate</td>
+<td>string</td>
+<td></td>
+<td>none</td>
+</tr>
</tbody>
</table>
-<aside class="success">
-This operation does not require authentication
+<aside class="warning">
+To perform this operation, you must be authenticated by means of one of the following methods:
+basicAuth
</aside>
<h2 id="get-deployments-for-a-blueprint">Get Deployments for a blueprint</h2>
<p><a id="opIdGet Deployments for a blueprint"></a></p>
@@ -2206,10 +2173,38 @@ curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/blueprints/{typeId}/
<td>successful operation</td>
<td>None</td>
</tr>
+<tr>
+<td>401</td>
+<td><a href="https://tools.ietf.org/html/rfc7235#section-3.1">Unauthorized</a></td>
+<td>Authentication information is missing or invalid</td>
+<td>None</td>
+</tr>
+</tbody>
+</table>
+<h3 id="response-headers">Response Headers</h3>
+<table>
+<thead>
+<tr>
+<th>Status</th>
+<th>Header</th>
+<th>Type</th>
+<th>Format</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>401</td>
+<td>WWW_Authenticate</td>
+<td>string</td>
+<td></td>
+<td>none</td>
+</tr>
</tbody>
</table>
-<aside class="success">
-This operation does not require authentication
+<aside class="warning">
+To perform this operation, you must be authenticated by means of one of the following methods:
+basicAuth
</aside>
<h1 id="dcae-dashboard-api-deployments">Deployments</h1>
<p>Manage deployments</p>
@@ -2224,14 +2219,14 @@ headers = {
}
r = requests.get(<span class="hljs-string">'https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments'</span>, params={
- <span class="hljs-string">'pageNum'</span>: <span class="hljs-string">'string'</span>, <span class="hljs-string">'viewPerPage'</span>: <span class="hljs-string">'string'</span>
+ <span class="hljs-string">'page'</span>: <span class="hljs-string">'0'</span>, <span class="hljs-string">'size'</span>: <span class="hljs-string">'0'</span>
}, headers = headers)
<span class="hljs-keyword">print</span> r.json()
</code></pre>
<pre class="highlight tab tab-shell"><code><span class="hljs-comment"># You can also use wget</span>
-curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments?pageNum=string&amp;viewPerPage=string \
+curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments?page=0&amp;size=0 \
-H <span class="hljs-string">'Accept: application/json'</span>
</code></pre>
@@ -2251,19 +2246,26 @@ curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments?pageNum=
</thead>
<tbody>
<tr>
-<td>pageNum</td>
+<td>page</td>
<td>query</td>
-<td>string</td>
+<td>integer</td>
<td>true</td>
<td>pagination control - page number</td>
</tr>
<tr>
-<td>viewPerPage</td>
+<td>size</td>
<td>query</td>
-<td>string</td>
+<td>integer</td>
<td>true</td>
<td>pagination control - page size</td>
</tr>
+<tr>
+<td>filters</td>
+<td>query</td>
+<td>string</td>
+<td>false</td>
+<td>search filters, {&quot;_include&quot;:&quot;id&quot;, &quot;tenant&quot;:&quot;onap-tenant-1&quot;,&quot;serviceId&quot;:&quot;dcae&quot;}</td>
+</tr>
</tbody>
</table>
<blockquote>
@@ -2274,82 +2276,11 @@ curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments?pageNum=
</blockquote>
<pre class="highlight tab tab-json"><code>[
{
- <span class="hljs-attr">"serviceId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"selfLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"created"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"modified"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"typeLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"vnfId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"vnfLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"vnfType"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"vnfLocation"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"deploymentRef"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"components"</span>: [
- {
- <span class="hljs-attr">"componentId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"componentLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"created"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"modified"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"componentType"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"componentSource"</span>: <span class="hljs-string">"DCAEController"</span>,
- <span class="hljs-attr">"status"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"location"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"shareable"</span>: <span class="hljs-number">0</span>
- }
- ],
- <span class="hljs-attr">"tenant"</span>: <span class="hljs-string">"string"</span>
+ <span class="hljs-attr">"id"</span>: <span class="hljs-string">"string"</span>,
+ <span class="hljs-attr">"blueprint_id"</span>: <span class="hljs-string">"string"</span>,
+ <span class="hljs-attr">"created_at"</span>: <span class="hljs-string">"2020-08-20T00:20:10Z"</span>,
+ <span class="hljs-attr">"updated_at"</span>: <span class="hljs-string">"2020-08-20T00:20:10Z"</span>,
+ <span class="hljs-attr">"tenant_name"</span>: <span class="hljs-string">"string"</span>
}
]
</code></pre>
@@ -2376,6 +2307,12 @@ curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments?pageNum=
<td>Invalid status value</td>
<td>None</td>
</tr>
+<tr>
+<td>401</td>
+<td><a href="https://tools.ietf.org/html/rfc7235#section-3.1">Unauthorized</a></td>
+<td>Authentication information is missing or invalid</td>
+<td>None</td>
+</tr>
</tbody>
</table>
<h3 id="list-deployments-responseschema">Response Schema</h3>
@@ -2393,209 +2330,41 @@ curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments?pageNum=
<tbody>
<tr>
<td><em>anonymous</em></td>
-<td>[<a href="#schemadcaeservice">DCAEService</a>]</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>» serviceId</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>» selfLink</td>
-<td><a href="#schemalink">Link</a></td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» title</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» rel</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» uri</td>
-<td>string(uri)</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» uriBuilder</td>
-<td><a href="#schemauribuilder">UriBuilder</a></td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» rels</td>
-<td>[string]</td>
+<td>[<a href="#schemadeployment">Deployment</a>]</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
-<td>»» params</td>
-<td>object</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»»» <strong>additionalProperties</strong></td>
+<td>» id</td>
<td>string</td>
<td>false</td>
<td>none</td>
-<td>none</td>
+<td>cloudify deployment name</td>
</tr>
<tr>
-<td>»» type</td>
+<td>» blueprint_id</td>
<td>string</td>
<td>false</td>
<td>none</td>
-<td>none</td>
+<td>cloudify blueprint name</td>
</tr>
<tr>
-<td>» created</td>
+<td>» created_at</td>
<td>string(date-time)</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
-<td>» modified</td>
+<td>» updated_at</td>
<td>string(date-time)</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
-<td>» typeLink</td>
-<td><a href="#schemalink">Link</a></td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>» vnfId</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>» vnfLink</td>
-<td><a href="#schemalink">Link</a></td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>» vnfType</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>» vnfLocation</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>Location information of the associated VNF</td>
-</tr>
-<tr>
-<td>» deploymentRef</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>Reference to a Cloudify deployment</td>
-</tr>
-<tr>
-<td>» components</td>
-<td>[<a href="#schemadcaeservicecomponent">DCAEServiceComponent</a>]</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» componentId</td>
-<td>string</td>
-<td>true</td>
-<td>none</td>
-<td>The id format is unique to the source</td>
-</tr>
-<tr>
-<td>»» componentLink</td>
-<td><a href="#schemalink">Link</a></td>
-<td>true</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» created</td>
-<td>string(date-time)</td>
-<td>true</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» modified</td>
-<td>string(date-time)</td>
-<td>true</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» componentType</td>
-<td>string</td>
-<td>true</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» componentSource</td>
-<td>string</td>
-<td>true</td>
-<td>none</td>
-<td>Specifies the name of the underying source service that is responsible for this components</td>
-</tr>
-<tr>
-<td>»» status</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» location</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>Location information of the component</td>
-</tr>
-<tr>
-<td>»» shareable</td>
-<td>integer(int32)</td>
-<td>true</td>
-<td>none</td>
-<td>Used to determine if this component can be shared amongst different DCAE services</td>
-</tr>
-<tr>
-<td>» tenant</td>
+<td>» tenant_name</td>
<td>string</td>
<td>false</td>
<td>none</td>
@@ -2603,27 +2372,37 @@ curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments?pageNum=
</tr>
</tbody>
</table>
-<h4 id="enumerated-values">Enumerated Values</h4>
+<h3 id="response-headers">Response Headers</h3>
<table>
<thead>
<tr>
-<th>Property</th>
-<th>Value</th>
+<th>Status</th>
+<th>Header</th>
+<th>Type</th>
+<th>Format</th>
+<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
-<td>componentSource</td>
-<td>DCAEController</td>
+<td>200</td>
+<td>Link</td>
+<td>string</td>
+<td></td>
+<td>pagination header</td>
</tr>
<tr>
-<td>componentSource</td>
-<td>DMaaPController</td>
+<td>401</td>
+<td>WWW_Authenticate</td>
+<td>string</td>
+<td></td>
+<td>none</td>
</tr>
</tbody>
</table>
-<aside class="success">
-This operation does not require authentication
+<aside class="warning">
+To perform this operation, you must be authenticated by means of one of the following methods:
+basicAuth
</aside>
<h2 id="create-deployment">Create Deployment</h2>
<p><a id="opIdCreate Deployment"></a></p>
@@ -2690,7 +2469,7 @@ curl -X POST https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments \
<p>Example responses</p>
</blockquote>
<blockquote>
-<p>200 Response</p>
+<p>201 Response</p>
</blockquote>
<pre class="highlight tab tab-json"><code>{
<span class="hljs-attr">"deployment_id"</span>: <span class="hljs-string">"string"</span>,
@@ -2713,12 +2492,18 @@ curl -X POST https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments \
</thead>
<tbody>
<tr>
-<td>200</td>
-<td><a href="https://tools.ietf.org/html/rfc7231#section-6.3.1">OK</a></td>
+<td>201</td>
+<td><a href="https://tools.ietf.org/html/rfc7231#section-6.3.2">Created</a></td>
<td>successful operation</td>
<td><a href="#schemadeploymentresource">DeploymentResource</a></td>
</tr>
<tr>
+<td>401</td>
+<td><a href="https://tools.ietf.org/html/rfc7235#section-3.1">Unauthorized</a></td>
+<td>Authentication information is missing or invalid</td>
+<td>None</td>
+</tr>
+<tr>
<td>405</td>
<td><a href="https://tools.ietf.org/html/rfc7231#section-6.5.5">Method Not Allowed</a></td>
<td>Invalid input</td>
@@ -2726,8 +2511,30 @@ curl -X POST https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments \
</tr>
</tbody>
</table>
-<aside class="success">
-This operation does not require authentication
+<h3 id="response-headers">Response Headers</h3>
+<table>
+<thead>
+<tr>
+<th>Status</th>
+<th>Header</th>
+<th>Type</th>
+<th>Format</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>401</td>
+<td>WWW_Authenticate</td>
+<td>string</td>
+<td></td>
+<td>none</td>
+</tr>
+</tbody>
+</table>
+<aside class="warning">
+To perform this operation, you must be authenticated by means of one of the following methods:
+basicAuth
</aside>
<h2 id="delete-deployment">Delete Deployment</h2>
<p><a id="opIdDelete Deployment"></a></p>
@@ -2786,7 +2593,7 @@ curl -X DELETE https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments/{depl
<p>Example responses</p>
</blockquote>
<blockquote>
-<p>200 Response</p>
+<p>204 Response</p>
</blockquote>
<pre class="highlight tab tab-json"><code><span class="hljs-string">"string"</span>
</code></pre>
@@ -2802,8 +2609,8 @@ curl -X DELETE https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments/{depl
</thead>
<tbody>
<tr>
-<td>200</td>
-<td><a href="https://tools.ietf.org/html/rfc7231#section-6.3.1">OK</a></td>
+<td>204</td>
+<td><a href="https://tools.ietf.org/html/rfc7231#section-6.3.5">No Content</a></td>
<td>successful operation</td>
<td>string</td>
</tr>
@@ -2813,10 +2620,38 @@ curl -X DELETE https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments/{depl
<td>Invalid status value</td>
<td>None</td>
</tr>
+<tr>
+<td>401</td>
+<td><a href="https://tools.ietf.org/html/rfc7235#section-3.1">Unauthorized</a></td>
+<td>Authentication information is missing or invalid</td>
+<td>None</td>
+</tr>
</tbody>
</table>
-<aside class="success">
-This operation does not require authentication
+<h3 id="response-headers">Response Headers</h3>
+<table>
+<thead>
+<tr>
+<th>Status</th>
+<th>Header</th>
+<th>Type</th>
+<th>Format</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>401</td>
+<td>WWW_Authenticate</td>
+<td>string</td>
+<td></td>
+<td>none</td>
+</tr>
+</tbody>
+</table>
+<aside class="warning">
+To perform this operation, you must be authenticated by means of one of the following methods:
+basicAuth
</aside>
<h2 id="upgrade_rollback-deployment">Upgrade_Rollback Deployment</h2>
<p><a id="opIdUpgrade/Rollback Deployment"></a></p>
@@ -2901,6 +2736,12 @@ curl -X PUT https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments/{deploym
<td>None</td>
</tr>
<tr>
+<td>401</td>
+<td><a href="https://tools.ietf.org/html/rfc7235#section-3.1">Unauthorized</a></td>
+<td>Authentication information is missing or invalid</td>
+<td>None</td>
+</tr>
+<tr>
<td>404</td>
<td><a href="https://tools.ietf.org/html/rfc7231#section-6.5.4">Not Found</a></td>
<td>Deployment not found</td>
@@ -2914,8 +2755,30 @@ curl -X PUT https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments/{deploym
</tr>
</tbody>
</table>
-<aside class="success">
-This operation does not require authentication
+<h3 id="response-headers">Response Headers</h3>
+<table>
+<thead>
+<tr>
+<th>Status</th>
+<th>Header</th>
+<th>Type</th>
+<th>Format</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>401</td>
+<td>WWW_Authenticate</td>
+<td>string</td>
+<td></td>
+<td>none</td>
+</tr>
+</tbody>
+</table>
+<aside class="warning">
+To perform this operation, you must be authenticated by means of one of the following methods:
+basicAuth
</aside>
<h2 id="get-deployment">Get Deployment</h2>
<p><a id="opIdGet Deployment"></a></p>
@@ -2971,82 +2834,11 @@ curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments/{deploym
</blockquote>
<pre class="highlight tab tab-json"><code>[
{
- <span class="hljs-attr">"serviceId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"selfLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"created"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"modified"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"typeLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"vnfId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"vnfLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"vnfType"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"vnfLocation"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"deploymentRef"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"components"</span>: [
- {
- <span class="hljs-attr">"componentId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"componentLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"created"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"modified"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"componentType"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"componentSource"</span>: <span class="hljs-string">"DCAEController"</span>,
- <span class="hljs-attr">"status"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"location"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"shareable"</span>: <span class="hljs-number">0</span>
- }
- ],
- <span class="hljs-attr">"tenant"</span>: <span class="hljs-string">"string"</span>
+ <span class="hljs-attr">"id"</span>: <span class="hljs-string">"string"</span>,
+ <span class="hljs-attr">"blueprint_id"</span>: <span class="hljs-string">"string"</span>,
+ <span class="hljs-attr">"created_at"</span>: <span class="hljs-string">"2020-08-20T00:20:10Z"</span>,
+ <span class="hljs-attr">"updated_at"</span>: <span class="hljs-string">"2020-08-20T00:20:10Z"</span>,
+ <span class="hljs-attr">"tenant_name"</span>: <span class="hljs-string">"string"</span>
}
]
</code></pre>
@@ -3073,6 +2865,12 @@ curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments/{deploym
<td>Invalid status value</td>
<td>None</td>
</tr>
+<tr>
+<td>401</td>
+<td><a href="https://tools.ietf.org/html/rfc7235#section-3.1">Unauthorized</a></td>
+<td>Authentication information is missing or invalid</td>
+<td>None</td>
+</tr>
</tbody>
</table>
<h3 id="get-deployment-responseschema">Response Schema</h3>
@@ -3090,209 +2888,41 @@ curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments/{deploym
<tbody>
<tr>
<td><em>anonymous</em></td>
-<td>[<a href="#schemadcaeservice">DCAEService</a>]</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>» serviceId</td>
-<td>string</td>
+<td>[<a href="#schemadeployment">Deployment</a>]</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
-<td>» selfLink</td>
-<td><a href="#schemalink">Link</a></td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» title</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» rel</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» uri</td>
-<td>string(uri)</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» uriBuilder</td>
-<td><a href="#schemauribuilder">UriBuilder</a></td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» rels</td>
-<td>[string]</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» params</td>
-<td>object</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»»» <strong>additionalProperties</strong></td>
+<td>» id</td>
<td>string</td>
<td>false</td>
<td>none</td>
-<td>none</td>
+<td>cloudify deployment name</td>
</tr>
<tr>
-<td>»» type</td>
+<td>» blueprint_id</td>
<td>string</td>
<td>false</td>
<td>none</td>
-<td>none</td>
+<td>cloudify blueprint name</td>
</tr>
<tr>
-<td>» created</td>
+<td>» created_at</td>
<td>string(date-time)</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
-<td>» modified</td>
+<td>» updated_at</td>
<td>string(date-time)</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
-<td>» typeLink</td>
-<td><a href="#schemalink">Link</a></td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>» vnfId</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>» vnfLink</td>
-<td><a href="#schemalink">Link</a></td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>» vnfType</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>» vnfLocation</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>Location information of the associated VNF</td>
-</tr>
-<tr>
-<td>» deploymentRef</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>Reference to a Cloudify deployment</td>
-</tr>
-<tr>
-<td>» components</td>
-<td>[<a href="#schemadcaeservicecomponent">DCAEServiceComponent</a>]</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» componentId</td>
-<td>string</td>
-<td>true</td>
-<td>none</td>
-<td>The id format is unique to the source</td>
-</tr>
-<tr>
-<td>»» componentLink</td>
-<td><a href="#schemalink">Link</a></td>
-<td>true</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» created</td>
-<td>string(date-time)</td>
-<td>true</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» modified</td>
-<td>string(date-time)</td>
-<td>true</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» componentType</td>
-<td>string</td>
-<td>true</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» componentSource</td>
-<td>string</td>
-<td>true</td>
-<td>none</td>
-<td>Specifies the name of the underying source service that is responsible for this components</td>
-</tr>
-<tr>
-<td>»» status</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>»» location</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>Location information of the component</td>
-</tr>
-<tr>
-<td>»» shareable</td>
-<td>integer(int32)</td>
-<td>true</td>
-<td>none</td>
-<td>Used to determine if this component can be shared amongst different DCAE services</td>
-</tr>
-<tr>
-<td>» tenant</td>
+<td>» tenant_name</td>
<td>string</td>
<td>false</td>
<td>none</td>
@@ -3300,27 +2930,30 @@ curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments/{deploym
</tr>
</tbody>
</table>
-<h4 id="enumerated-values">Enumerated Values</h4>
+<h3 id="response-headers">Response Headers</h3>
<table>
<thead>
<tr>
-<th>Property</th>
-<th>Value</th>
+<th>Status</th>
+<th>Header</th>
+<th>Type</th>
+<th>Format</th>
+<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
-<td>componentSource</td>
-<td>DCAEController</td>
-</tr>
-<tr>
-<td>componentSource</td>
-<td>DMaaPController</td>
+<td>401</td>
+<td>WWW_Authenticate</td>
+<td>string</td>
+<td></td>
+<td>none</td>
</tr>
</tbody>
</table>
-<aside class="success">
-This operation does not require authentication
+<aside class="warning">
+To perform this operation, you must be authenticated by means of one of the following methods:
+basicAuth
</aside>
<h2 id="deployment-status">Deployment Status</h2>
<p><a id="opIdDeployment Status"></a></p>
@@ -3415,6 +3048,12 @@ curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments/{deploym
<td>Invalid status value</td>
<td>None</td>
</tr>
+<tr>
+<td>401</td>
+<td><a href="https://tools.ietf.org/html/rfc7235#section-3.1">Unauthorized</a></td>
+<td>Authentication information is missing or invalid</td>
+<td>None</td>
+</tr>
</tbody>
</table>
<h3 id="deployment-status-responseschema">Response Schema</h3>
@@ -3481,8 +3120,30 @@ curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments/{deploym
</tr>
</tbody>
</table>
-<aside class="success">
-This operation does not require authentication
+<h3 id="response-headers">Response Headers</h3>
+<table>
+<thead>
+<tr>
+<th>Status</th>
+<th>Header</th>
+<th>Type</th>
+<th>Format</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>401</td>
+<td>WWW_Authenticate</td>
+<td>string</td>
+<td></td>
+<td>none</td>
+</tr>
+</tbody>
+</table>
+<aside class="warning">
+To perform this operation, you must be authenticated by means of one of the following methods:
+basicAuth
</aside>
<h2 id="deployment-health">Deployment health</h2>
<p><a id="opIdDeployment health"></a></p>
@@ -3562,10 +3223,38 @@ curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments/{deploym
<td>successful operation</td>
<td><a href="#schemaservicehealth">serviceHealth</a></td>
</tr>
+<tr>
+<td>401</td>
+<td><a href="https://tools.ietf.org/html/rfc7235#section-3.1">Unauthorized</a></td>
+<td>Authentication information is missing or invalid</td>
+<td>None</td>
+</tr>
</tbody>
</table>
-<aside class="success">
-This operation does not require authentication
+<h3 id="response-headers">Response Headers</h3>
+<table>
+<thead>
+<tr>
+<th>Status</th>
+<th>Header</th>
+<th>Type</th>
+<th>Format</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>401</td>
+<td>WWW_Authenticate</td>
+<td>string</td>
+<td></td>
+<td>none</td>
+</tr>
+</tbody>
+</table>
+<aside class="warning">
+To perform this operation, you must be authenticated by means of one of the following methods:
+basicAuth
</aside>
<h2 id="deployment-inputs">Deployment Inputs</h2>
<p><a id="opIdDeployment Inputs"></a></p>
@@ -3651,11 +3340,39 @@ curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/deployments/{deploym
<td>Invalid status value</td>
<td>None</td>
</tr>
+<tr>
+<td>401</td>
+<td><a href="https://tools.ietf.org/html/rfc7235#section-3.1">Unauthorized</a></td>
+<td>Authentication information is missing or invalid</td>
+<td>None</td>
+</tr>
</tbody>
</table>
<h3 id="deployment-inputs-responseschema">Response Schema</h3>
-<aside class="success">
-This operation does not require authentication
+<h3 id="response-headers">Response Headers</h3>
+<table>
+<thead>
+<tr>
+<th>Status</th>
+<th>Header</th>
+<th>Type</th>
+<th>Format</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>401</td>
+<td>WWW_Authenticate</td>
+<td>string</td>
+<td></td>
+<td>none</td>
+</tr>
+</tbody>
+</table>
+<aside class="warning">
+To perform this operation, you must be authenticated by means of one of the following methods:
+basicAuth
</aside>
<h1 id="dcae-dashboard-api-tenants">Tenants</h1>
<p>Query Cloudify Tenants</p>
@@ -3719,6 +3436,12 @@ curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/tenants \
<td>Invalid status value</td>
<td>None</td>
</tr>
+<tr>
+<td>401</td>
+<td><a href="https://tools.ietf.org/html/rfc7235#section-3.1">Unauthorized</a></td>
+<td>Authentication information is missing or invalid</td>
+<td>None</td>
+</tr>
</tbody>
</table>
<h3 id="list-tenants-responseschema">Response Schema</h3>
@@ -3750,43 +3473,36 @@ curl -X GET https://dcae-dashboard:8080/ccsdk-app/nb-api/v2/tenants \
</tr>
</tbody>
</table>
-<aside class="success">
-This operation does not require authentication
-</aside>
-<h1 id="schemas">Schemas</h1>
-<h2 id="tocstenant">Tenant</h2>
-<p><a id="schematenant"></a></p>
-<pre class="highlight tab tab-json"><code>{
- <span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
-}
-
-</code></pre>
-<h3 id="properties">Properties</h3>
+<h3 id="response-headers">Response Headers</h3>
<table>
<thead>
<tr>
-<th>Name</th>
+<th>Status</th>
+<th>Header</th>
<th>Type</th>
-<th>Required</th>
-<th>Restrictions</th>
+<th>Format</th>
<th>Description</th>
</tr>
</thead>
<tbody>
<tr>
-<td>name</td>
+<td>401</td>
+<td>WWW_Authenticate</td>
<td>string</td>
-<td>false</td>
+<td></td>
<td>none</td>
-<td>cloudify tenant name</td>
</tr>
</tbody>
</table>
-<h2 id="tocscomponentinput">ComponentInput</h2>
-<p><a id="schemacomponentinput"></a></p>
+<aside class="warning">
+To perform this operation, you must be authenticated by means of one of the following methods:
+basicAuth
+</aside>
+<h1 id="schemas">Schemas</h1>
+<h2 id="tocstenant">Tenant</h2>
+<p><a id="schematenant"></a></p>
<pre class="highlight tab tab-json"><code>{
- <span class="hljs-attr">"cname"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"dname"</span>: <span class="hljs-string">"string"</span>
+ <span class="hljs-attr">"name"</span>: <span class="hljs-string">"string"</span>
}
</code></pre>
@@ -3803,90 +3519,28 @@ This operation does not require authentication
</thead>
<tbody>
<tr>
-<td>cname</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>component namespace name</td>
-</tr>
-<tr>
-<td>dname</td>
+<td>name</td>
<td>string</td>
<td>false</td>
<td>none</td>
-<td>component display name</td>
+<td>cloudify tenant name</td>
</tr>
</tbody>
</table>
<h2 id="tocsinlineresponse200">InlineResponse200</h2>
<p><a id="schemainlineresponse200"></a></p>
<pre class="highlight tab tab-json"><code>{
- <span class="hljs-attr">"links"</span>: {
- <span class="hljs-attr">"previousLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"nextLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- }
- },
- <span class="hljs-attr">"totalCount"</span>: <span class="hljs-number">0</span>,
+ <span class="hljs-attr">"totalItems"</span>: <span class="hljs-number">0</span>,
+ <span class="hljs-attr">"totalPages"</span>: <span class="hljs-number">0</span>,
<span class="hljs-attr">"items"</span>: [
{
<span class="hljs-attr">"owner"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"typeName"</span>: <span class="hljs-string">"string"</span>,
+ <span class="hljs-attr">"application"</span>: <span class="hljs-string">"string"</span>,
+ <span class="hljs-attr">"component"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"typeVersion"</span>: <span class="hljs-number">0</span>,
- <span class="hljs-attr">"blueprintTemplate"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"serviceIds"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"vnfTypes"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"serviceLocations"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"asdcServiceId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"asdcResourceId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"asdcServiceURL"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"typeId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"selfLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"created"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"deactivated"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>
+ <span class="hljs-attr">"created"</span>: <span class="hljs-string">"2020-08-20T00:20:10Z"</span>
}
]
}
@@ -3905,14 +3559,14 @@ This operation does not require authentication
</thead>
<tbody>
<tr>
-<td>links</td>
-<td><a href="#schemainlineresponse200links">InlineResponse200Links</a></td>
+<td>totalItems</td>
+<td>integer(int32)</td>
<td>false</td>
<td>none</td>
-<td>Pagination links</td>
+<td>none</td>
</tr>
<tr>
-<td>totalCount</td>
+<td>totalPages</td>
<td>integer(int32)</td>
<td>false</td>
<td>none</td>
@@ -3920,7 +3574,7 @@ This operation does not require authentication
</tr>
<tr>
<td>items</td>
-<td>[<a href="#schemadcaeservicetype">DCAEServiceType</a>]</td>
+<td>[<a href="#schemadcaeservicetypesummary">DCAEServiceTypeSummary</a>]</td>
<td>false</td>
<td>none</td>
<td>none</td>
@@ -4034,85 +3688,14 @@ This operation does not require authentication
</tr>
</tbody>
</table>
-<h2 id="tocsdcaeservice">DCAEService</h2>
-<p><a id="schemadcaeservice"></a></p>
+<h2 id="tocsdeployment">Deployment</h2>
+<p><a id="schemadeployment"></a></p>
<pre class="highlight tab tab-json"><code>{
- <span class="hljs-attr">"serviceId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"selfLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"created"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"modified"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"typeLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"vnfId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"vnfLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"vnfType"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"vnfLocation"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"deploymentRef"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"components"</span>: [
- {
- <span class="hljs-attr">"componentId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"componentLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"created"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"modified"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"componentType"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"componentSource"</span>: <span class="hljs-string">"DCAEController"</span>,
- <span class="hljs-attr">"status"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"location"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"shareable"</span>: <span class="hljs-number">0</span>
- }
- ],
- <span class="hljs-attr">"tenant"</span>: <span class="hljs-string">"string"</span>
+ <span class="hljs-attr">"id"</span>: <span class="hljs-string">"string"</span>,
+ <span class="hljs-attr">"blueprint_id"</span>: <span class="hljs-string">"string"</span>,
+ <span class="hljs-attr">"created_at"</span>: <span class="hljs-string">"2020-08-20T00:20:10Z"</span>,
+ <span class="hljs-attr">"updated_at"</span>: <span class="hljs-string">"2020-08-20T00:20:10Z"</span>,
+ <span class="hljs-attr">"tenant_name"</span>: <span class="hljs-string">"string"</span>
}
</code></pre>
@@ -4129,84 +3712,35 @@ This operation does not require authentication
</thead>
<tbody>
<tr>
-<td>serviceId</td>
+<td>id</td>
<td>string</td>
<td>false</td>
<td>none</td>
-<td>none</td>
+<td>cloudify deployment name</td>
</tr>
<tr>
-<td>selfLink</td>
-<td><a href="#schemalink">Link</a></td>
+<td>blueprint_id</td>
+<td>string</td>
<td>false</td>
<td>none</td>
-<td>Link.title is serviceId</td>
+<td>cloudify blueprint name</td>
</tr>
<tr>
-<td>created</td>
+<td>created_at</td>
<td>string(date-time)</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
-<td>modified</td>
+<td>updated_at</td>
<td>string(date-time)</td>
<td>false</td>
<td>none</td>
<td>none</td>
</tr>
<tr>
-<td>typeLink</td>
-<td><a href="#schemalink">Link</a></td>
-<td>false</td>
-<td>none</td>
-<td>Link.title is typeId</td>
-</tr>
-<tr>
-<td>vnfId</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>vnfLink</td>
-<td><a href="#schemalink">Link</a></td>
-<td>false</td>
-<td>none</td>
-<td>Link.title is vnfId</td>
-</tr>
-<tr>
-<td>vnfType</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>vnfLocation</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>Location information of the associated VNF</td>
-</tr>
-<tr>
-<td>deploymentRef</td>
-<td>string</td>
-<td>false</td>
-<td>none</td>
-<td>Reference to a Cloudify deployment</td>
-</tr>
-<tr>
-<td>components</td>
-<td>[<a href="#schemadcaeservicecomponent">DCAEServiceComponent</a>]</td>
-<td>false</td>
-<td>none</td>
-<td>none</td>
-</tr>
-<tr>
-<td>tenant</td>
+<td>tenant_name</td>
<td>string</td>
<td>false</td>
<td>none</td>
@@ -4250,82 +3784,11 @@ This operation does not require authentication
<span class="hljs-attr">"totalCount"</span>: <span class="hljs-number">0</span>,
<span class="hljs-attr">"items"</span>: [
{
- <span class="hljs-attr">"serviceId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"selfLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"created"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"modified"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"typeLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"vnfId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"vnfLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"vnfType"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"vnfLocation"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"deploymentRef"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"components"</span>: [
- {
- <span class="hljs-attr">"componentId"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"componentLink"</span>: {
- <span class="hljs-attr">"title"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"rel"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"uri"</span>: <span class="hljs-string">"http://example.com"</span>,
- <span class="hljs-attr">"uriBuilder"</span>: {},
- <span class="hljs-attr">"rels"</span>: [
- <span class="hljs-string">"string"</span>
- ],
- <span class="hljs-attr">"params"</span>: {
- <span class="hljs-attr">"property1"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"property2"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
- },
- <span class="hljs-attr">"created"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"modified"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"componentType"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"componentSource"</span>: <span class="hljs-string">"DCAEController"</span>,
- <span class="hljs-attr">"status"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"location"</span>: <span class="hljs-string">"string"</span>,
- <span class="hljs-attr">"shareable"</span>: <span class="hljs-number">0</span>
- }
- ],
- <span class="hljs-attr">"tenant"</span>: <span class="hljs-string">"string"</span>
+ <span class="hljs-attr">"id"</span>: <span class="hljs-string">"string"</span>,
+ <span class="hljs-attr">"blueprint_id"</span>: <span class="hljs-string">"string"</span>,
+ <span class="hljs-attr">"created_at"</span>: <span class="hljs-string">"2020-08-20T00:20:10Z"</span>,
+ <span class="hljs-attr">"updated_at"</span>: <span class="hljs-string">"2020-08-20T00:20:10Z"</span>,
+ <span class="hljs-attr">"tenant_name"</span>: <span class="hljs-string">"string"</span>
}
]
}
@@ -4359,7 +3822,7 @@ This operation does not require authentication
</tr>
<tr>
<td>items</td>
-<td>[<a href="#schemadcaeservice">DCAEService</a>]</td>
+<td>[<a href="#schemadeployment">Deployment</a>]</td>
<td>false</td>
<td>none</td>
<td>none</td>
@@ -4479,8 +3942,8 @@ This operation does not require authentication
},
<span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
},
- <span class="hljs-attr">"created"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"modified"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
+ <span class="hljs-attr">"created"</span>: <span class="hljs-string">"2020-08-20T00:20:10Z"</span>,
+ <span class="hljs-attr">"modified"</span>: <span class="hljs-string">"2020-08-20T00:20:10Z"</span>,
<span class="hljs-attr">"componentType"</span>: <span class="hljs-string">"string"</span>,
<span class="hljs-attr">"componentSource"</span>: <span class="hljs-string">"DCAEController"</span>,
<span class="hljs-attr">"status"</span>: <span class="hljs-string">"string"</span>,
@@ -4640,7 +4103,7 @@ This operation does not require authentication
<tr>
<td>application</td>
<td>string</td>
-<td>true</td>
+<td>false</td>
<td>none</td>
<td>controller application name</td>
</tr>
@@ -4649,7 +4112,7 @@ This operation does not require authentication
<td>string</td>
<td>true</td>
<td>none</td>
-<td>onboarding component name</td>
+<td>onboarding component name e.g. dcae</td>
</tr>
</tbody>
</table>
@@ -4687,8 +4150,8 @@ This operation does not require authentication
},
<span class="hljs-attr">"type"</span>: <span class="hljs-string">"string"</span>
},
- <span class="hljs-attr">"created"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>,
- <span class="hljs-attr">"deactivated"</span>: <span class="hljs-string">"2020-08-12T15:08:29Z"</span>
+ <span class="hljs-attr">"created"</span>: <span class="hljs-string">"2020-08-20T00:20:10Z"</span>,
+ <span class="hljs-attr">"deactivated"</span>: <span class="hljs-string">"2020-08-20T00:20:10Z"</span>
}
</code></pre>
@@ -4804,6 +4267,82 @@ This operation does not require authentication
</tr>
</tbody>
</table>
+<h2 id="tocsdcaeservicetypesummary">DCAEServiceTypeSummary</h2>
+<p><a id="schemadcaeservicetypesummary"></a></p>
+<pre class="highlight tab tab-json"><code>{
+ <span class="hljs-attr">"owner"</span>: <span class="hljs-string">"string"</span>,
+ <span class="hljs-attr">"typeName"</span>: <span class="hljs-string">"string"</span>,
+ <span class="hljs-attr">"application"</span>: <span class="hljs-string">"string"</span>,
+ <span class="hljs-attr">"component"</span>: <span class="hljs-string">"string"</span>,
+ <span class="hljs-attr">"typeVersion"</span>: <span class="hljs-number">0</span>,
+ <span class="hljs-attr">"typeId"</span>: <span class="hljs-string">"string"</span>,
+ <span class="hljs-attr">"created"</span>: <span class="hljs-string">"2020-08-20T00:20:10Z"</span>
+}
+
+</code></pre>
+<h3 id="properties">Properties</h3>
+<table>
+<thead>
+<tr>
+<th>Name</th>
+<th>Type</th>
+<th>Required</th>
+<th>Restrictions</th>
+<th>Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td>owner</td>
+<td>string</td>
+<td>true</td>
+<td>none</td>
+<td>none</td>
+</tr>
+<tr>
+<td>typeName</td>
+<td>string</td>
+<td>true</td>
+<td>none</td>
+<td>Descriptive name for this DCAE service type</td>
+</tr>
+<tr>
+<td>application</td>
+<td>string</td>
+<td>true</td>
+<td>none</td>
+<td>application name</td>
+</tr>
+<tr>
+<td>component</td>
+<td>string</td>
+<td>true</td>
+<td>none</td>
+<td>component name</td>
+</tr>
+<tr>
+<td>typeVersion</td>
+<td>integer(int32)</td>
+<td>true</td>
+<td>none</td>
+<td>Version number for this DCAE service type</td>
+</tr>
+<tr>
+<td>typeId</td>
+<td>string</td>
+<td>true</td>
+<td>none</td>
+<td>Unique identifier for this DCAE service type</td>
+</tr>
+<tr>
+<td>created</td>
+<td>string(date-time)</td>
+<td>true</td>
+<td>none</td>
+<td>Created timestamp for this DCAE service type in epoch time</td>
+</tr>
+</tbody>
+</table>
<h2 id="tocscloudifydeploymentupgraderequest">CloudifyDeploymentUpgradeRequest</h2>
<p><a id="schemacloudifydeploymentupgraderequest"></a></p>
<pre class="highlight tab tab-json"><code>{
@@ -4909,19 +4448,19 @@ This operation does not require authentication
<td>string</td>
<td>true</td>
<td>none</td>
-<td>tag to identify the deployment</td>
+<td>unique tag to identify the deployment. A non-unique value results in name conflict error</td>
</tr>
<tr>
<td>blueprintId</td>
<td>string</td>
-<td>false</td>
+<td>true</td>
<td>none</td>
-<td>typeId from inventory, a unique Id for the blueprint</td>
+<td>typeId from inventory, a unique Id for the blueprint, this can be replaced with blueprintName and blueprintVersion</td>
</tr>
<tr>
<td>blueprintName</td>
<td>string</td>
-<td>true</td>
+<td>false</td>
<td>none</td>
<td>Descriptive name for this DCAE service type</td>
</tr>
@@ -4930,7 +4469,7 @@ This operation does not require authentication
<td>integer(int32)</td>
<td>false</td>
<td>none</td>
-<td>Version number for this DCAE service type, optional. Defaults to latest version.</td>
+<td>Version number for this DCAE service type, optional. Defaults to 1.</td>
</tr>
<tr>
<td>tenant</td>
diff --git a/ccsdk-app-os/src/main/webapp/app/ccsdk/home/executions-view-controller.js b/ccsdk-app-os/src/main/webapp/app/ccsdk/home/executions-view-controller.js
index fd2dd79..46acecc 100644
--- a/ccsdk-app-os/src/main/webapp/app/ccsdk/home/executions-view-controller.js
+++ b/ccsdk-app-os/src/main/webapp/app/ccsdk/home/executions-view-controller.js
@@ -70,6 +70,7 @@ appDS2.controller('executionsViewController',
$scope.ecdapp.resetFilters = function() {
$scope.ecdapp.selectedTenant = '';
$scope.ecdapp.selectedStatus = '';
+ $scope.ecdapp.execId = '';
};
$scope.ecdapp.extendedfilterSrch = function() {
diff --git a/ccsdk-app-os/src/main/webapp/app/ccsdk/home/executions_view.html b/ccsdk-app-os/src/main/webapp/app/ccsdk/home/executions_view.html
index 09d9814..68eeb3b 100644
--- a/ccsdk-app-os/src/main/webapp/app/ccsdk/home/executions_view.html
+++ b/ccsdk-app-os/src/main/webapp/app/ccsdk/home/executions_view.html
@@ -77,7 +77,7 @@
<span class="b2b-title" > {{ecdapp.bpCount}} </span>
</div>
<div class="b2b-card-content"
- style="text-align: center;">
+ style="text-align: center; font-family: Arial;">
BLUEPRINTS
</div>
</a>
@@ -88,7 +88,7 @@
<span class="b2b-title" > {{ecdapp.bpCount}} </span>
</div>
<div class="b2b-card-content"
- style="text-align: center;">
+ style="text-align: center; font-family: Arial;">
BLUEPRINTS
</div>
</a>
@@ -124,7 +124,7 @@
<span class="b2b-title"> {{ecdapp.depCount}} </span>
</div>
<div class="b2b-card-content"
- style="text-align: center;">
+ style="text-align: center; font-family: Arial;">
DEPLOYMENTS
</div>
</a>
@@ -134,7 +134,7 @@
<span class="b2b-title"> {{ecdapp.depCount}} </span>
</div>
<div class="b2b-card-content"
- style="text-align: center;">
+ style="text-align: center; font-family: Arial;">
DEPLOYMENTS
</div>
</a>
@@ -169,7 +169,7 @@
<span class="b2b-title"> {{ecdapp.pluginCount}} </span>
</div>
<div class="b2b-card-content"
- style="text-align: center;">
+ style="text-align: center; font-family: Arial;">
PLUGINS
</div>
</a>
@@ -294,12 +294,12 @@
<button tabindex="-1" class="btn btn-small"
title="Reset Filters" type="button"
ng-click="ecdapp.resetFilters()">
- <i class="icon-arrows-update-refresh-sync"></i>
+ <i class="icon-arrows-replay-restart"></i>
</button>
<button tabindex="1" class="btn btn-small"
title="Filtered search" type="button"
ng-click="ecdapp.extendedfilterSrch()">
- <i class="icon-controls-magnifyingglass"></i>
+ <i class="ion-search"></i>
</button>
</div>
</div>
diff --git a/ccsdk-app-os/src/main/webapp/app/ccsdk/home/oom-style.css b/ccsdk-app-os/src/main/webapp/app/ccsdk/home/oom-style.css
index df3e489..81ef929 100644
--- a/ccsdk-app-os/src/main/webapp/app/ccsdk/home/oom-style.css
+++ b/ccsdk-app-os/src/main/webapp/app/ccsdk/home/oom-style.css
@@ -1,4 +1,30 @@
-/* Styles for ECOMP Controller Dashboard */
+/* Styles for DCAE Controller Dashboard */
+body, h1, h2, input, span, label, a, p, th, td {
+ font-family: Arial;
+}
+
+table td {
+ font-family: Arial;
+}
+
+.error-row {
+ color: #ff0000;
+ font-weight: bolder;
+}
+
+.normal-row {
+ color: #000000;
+ font-weight: normal;
+}
+
+input::placeholder {
+ font-family: Arial;
+}
+
+.btn, .btn-slider-on, .btn-slider-off, .b2b-card-content, .popover-title,
+ .popover-content span, .b2b-footer-wrapper .copyright-text {
+ font-family: Arial;
+}
.content-container {
min-height: 650px;
@@ -25,21 +51,25 @@
}
.selected {
- background-color:#abb5e6;
- color:black;
- font-weight:bold;
+ background-color: #abb5e6;
+ color: black;
+ font-weight: bold;
}
+
.red-background {
- background-color: #ff0000b3;
- }
+ background-color: #ff0000b3;
+}
+
.green-background {
- background-color: #bbf0bb;
- }
+ background-color: #bbf0bb;
+}
+
.td-error {
- border-top: 2px dotted red;
- border-bottom: 2px dotted red;
- background-color: rgb(210, 190, 190);
- }
+ border-top: 2px dotted red;
+ border-bottom: 2px dotted red;
+ background-color: rgb(210, 190, 190);
+}
+
.menu {
display: none;
z-index: 1000;
@@ -50,9 +80,9 @@
background: azure;
position: fixed;
overflow: scroll;
- background: slategray;
- color: white;
- right: 20px;
+ background: #abb5e6;
+ color: black;
+ right: 20px;
}
.show-menu {
@@ -165,12 +195,13 @@
font-size: 1.0em;
margin-left: 10px;
}
+
.advanced-search {
display: block;
position: relative;
}
-.advanced-search .btn{
+.advanced-search .btn {
box-shadow: none;
position: absolute;
top: 5px;
@@ -179,7 +210,6 @@
width: 25px;
height: 25px;
padding: 1px 1px 1px 1px;
-
}
.advanced-search i {
@@ -193,145 +223,158 @@
}
.advanced-search-input {
- padding: 10px 19px 9px 18px;
- font-size: 1.5rem;
- border-radius: 8px;
- width: 100%;
+ padding: 10px 19px 9px 18px;
+ font-size: 1.5rem;
+ border-radius: 8px;
+ width: 100%;
}
-td > .btn-group {
+
+td>.btn-group {
min-width: 0;
width: auto;
}
-.dropup,
-.dropdown {
- position: relative;
+.dropup, .dropdown {
+ position: relative;
}
+
.dropdown-toggle:focus {
- outline: 0;
+ outline: 0;
}
+
.dropdown-menu {
- position: absolute;
- z-index: 1000;
- display: none;
- min-width: 160px;
- padding: 5px 0;
- margin: 2px 0 0;
- text-align: left;
- list-style: none;
- background-color: #fff;
- -webkit-background-clip: padding-box;
- background-clip: padding-box;
- border: 1px solid #ccc;
- border: 1px solid rgba(0, 0, 0, .15);
- border-radius: 4px;
- -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
- box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
- top: 30px;
- left: -10px;
+ position: absolute;
+ z-index: 1000;
+ display: none;
+ min-width: 160px;
+ padding: 5px 0;
+ margin: 2px 0 0;
+ text-align: left;
+ list-style: none;
+ background-color: #fff;
+ -webkit-background-clip: padding-box;
+ background-clip: padding-box;
+ border: 1px solid #ccc;
+ border: 1px solid rgba(0, 0, 0, .15);
+ border-radius: 4px;
+ -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
+ box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
+ top: 30px;
+ left: -10px;
}
+
.dropdown-menu.pull-right {
- right: 0;
- left: auto;
+ right: 0;
+ left: auto;
}
+
.dropdown-menu .divider {
- height: 1px;
- margin: 9px 0;
- overflow: hidden;
- background-color: #e5e5e5;
-}
-.dropdown-menu > li > a {
- display: block;
- padding: 3px 20px;
- clear: both;
- font-weight: normal;
- line-height: 1.42857143;
- color: #333;
- white-space: nowrap;
-}
-.dropdown-menu > li > a:hover,
-.dropdown-menu > li > a:focus {
- color: #262626;
- text-decoration: none;
- background-color: #f5f5f5;
-}
-.dropdown-menu > .active > a,
-.dropdown-menu > .active > a:hover,
-.dropdown-menu > .active > a:focus {
- color: #fff;
- text-decoration: none;
- background-color: #337ab7;
- outline: 0;
-}
-.dropdown-menu > .disabled > a,
-.dropdown-menu > .disabled > a:hover,
-.dropdown-menu > .disabled > a:focus {
- color: #777;
-}
-.dropdown-menu > .disabled > a:hover,
-.dropdown-menu > .disabled > a:focus {
- text-decoration: none;
- cursor: not-allowed;
- background-color: transparent;
- background-image: none;
- filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
-}
-.open > .dropdown-menu {
- display: block;
-}
-.open > a {
- outline: 0;
+ height: 1px;
+ margin: 9px 0;
+ overflow: hidden;
+ background-color: #e5e5e5;
}
+
+.dropdown-menu>li>a {
+ display: block;
+ padding: 3px 20px;
+ clear: both;
+ font-weight: normal;
+ line-height: 1.42857143;
+ color: #333;
+ white-space: nowrap;
+}
+
+.dropdown-menu>li>a:hover, .dropdown-menu>li>a:focus {
+ color: #262626;
+ text-decoration: none;
+ background-color: #f5f5f5;
+}
+
+.dropdown-menu>.active>a, .dropdown-menu>.active>a:hover, .dropdown-menu>.active>a:focus
+ {
+ color: #fff;
+ text-decoration: none;
+ background-color: #337ab7;
+ outline: 0;
+}
+
+.dropdown-menu>.disabled>a, .dropdown-menu>.disabled>a:hover,
+ .dropdown-menu>.disabled>a:focus {
+ color: #777;
+}
+
+.dropdown-menu>.disabled>a:hover, .dropdown-menu>.disabled>a:focus {
+ text-decoration: none;
+ cursor: not-allowed;
+ background-color: transparent;
+ background-image: none;
+ filter: progid:DXImageTransform.Microsoft.gradient(enabled= false);
+}
+
+.open>.dropdown-menu {
+ display: block;
+}
+
+.open>a {
+ outline: 0;
+}
+
.dropdown-menu-right {
- right: 0;
- left: auto;
+ right: 0;
+ left: auto;
}
+
.dropdown-menu-left {
- right: auto;
- left: 0;
+ right: auto;
+ left: 0;
}
+
.dropdown-header {
- display: block;
- padding: 3px 20px;
- font-size: 12px;
- line-height: 1.42857143;
- color: #777;
- white-space: nowrap;
+ display: block;
+ padding: 3px 20px;
+ font-size: 12px;
+ line-height: 1.42857143;
+ color: #777;
+ white-space: nowrap;
}
+
.dropdown-backdrop {
- position: fixed;
- top: 0;
- right: 0;
- bottom: 0;
- left: 0;
- z-index: 990;
-}
-.pull-right > .dropdown-menu {
- right: 0;
- left: auto;
-}
-.dropup .caret,
-.navbar-fixed-bottom .dropdown .caret {
- content: "";
- border-top: 0;
- border-bottom: 4px dashed;
- border-bottom: 4px solid \9;
-}
-.dropup .dropdown-menu,
-.navbar-fixed-bottom .dropdown .dropdown-menu {
- top: auto;
- bottom: 100%;
- margin-bottom: 2px;
-}
-@media (min-width: 768px) {
- .navbar-right .dropdown-menu {
- right: 0;
- left: auto;
- }
- .navbar-right .dropdown-menu-left {
- right: auto;
- left: 0;
- }
+ position: fixed;
+ top: 0;
+ right: 0;
+ bottom: 0;
+ left: 0;
+ z-index: 990;
+}
+
+.pull-right>.dropdown-menu {
+ right: 0;
+ left: auto;
+}
+
+.dropup .caret, .navbar-fixed-bottom .dropdown .caret {
+ content: "";
+ border-top: 0;
+ border-bottom: 4px dashed;
+ border-bottom: 4px solid \9;
+}
+
+.dropup .dropdown-menu, .navbar-fixed-bottom .dropdown .dropdown-menu {
+ top: auto;
+ bottom: 100%;
+ margin-bottom: 2px;
+}
+
+@media ( min-width : 768px) {
+ .navbar-right .dropdown-menu {
+ right: 0;
+ left: auto;
+ }
+ .navbar-right .dropdown-menu-left {
+ right: auto;
+ left: 0;
+ }
}
.dropdown-menu li {
@@ -346,16 +389,16 @@ td > .btn-group {
margin-right: 5px;
}
-td > .btn-group > .btn {
+td>.btn-group>.btn {
min-width: 0;
color: #0568ae;
}
-td > .btn-group > .btn> i {
+td>.btn-group>.btn>i {
font-size: 30px;
}
-li > a.active {
+li>a.active {
font-weight: bolder;
outline: thin dotted #666;
}
@@ -369,96 +412,99 @@ tr:focus {
}
.modalwrapper.modal-docked .modal-jumbo {
- max-height: 100%;
- height: 100%;
- overflow: hidden;
- top: 0;
- width: 100%;
- max-width: 100%;
+ max-height: 100%;
+ height: 100%;
+ overflow: hidden;
+ top: 0;
+ width: 100%;
+ max-width: 100%;
}
#addAppDiv {
padding-left: 10px;
- background: lightgray;
- border-radius: 5px;
- padding-bottom: 15px;
+ background: lightgray;
+ border-radius: 5px;
+ padding-bottom: 15px;
}
.field-group.error .error-msg {
color: red;
- display: block;
- font-size: 14px;
- line-height: 14px;
- font-family: "Omnes-ATT-W02-Medium";
- position: relative;
- padding-left: 18px;
- margin-top: 10px;
+ display: block;
+ font-size: 14px;
+ line-height: 14px;
+ font-family: "Omnes-ATT-W02-Medium";
+ position: relative;
+ padding-left: 18px;
+ margin-top: 10px;
}
.heading-page {
margin-bottom: 20px;
+ font-family: Arial;
}
.footer-container {
top: 25px;
}
+
.b2b-dragdrop {
padding: 10px;
}
.my-tooltip {
- position: relative;
- display: inline;
+ position: relative;
+ display: inline;
}
.id-tooltip {
- position: relative;
- display: inline;
+ position: relative;
+ display: inline;
}
-.id-tooltip > .id-tooltiptext, .id-tooltip > .wrapper {
+.id-tooltip>.id-tooltiptext, .id-tooltip>.wrapper {
display: flex;
- visibility: hidden;
- width: 400px;
- background-color: #dbdde3;
- white-space: pre-line;
- border-radius: 6px;
- padding: 10px;
- position: absolute;
- bottom: 25%;
- left: 80%;
- transition: opacity 0.3s;
- border: 1px solid gray;
-}
-
-.id-tooltip:hover > .id-tooltiptext, .id-tooltip:hover > .wrapper {
- pointer-events: auto;
- visibility: visible;
- opacity: 1;
-}
-.wrapper > .id-tooltiptext {
- overflow-y: auto;
- max-height: 400px;
- display: block;
- clear: both;
-}
+ visibility: hidden;
+ width: 400px;
+ background-color: #dbdde3;
+ white-space: pre-line;
+ border-radius: 6px;
+ padding: 10px;
+ position: absolute;
+ bottom: 25%;
+ left: 80%;
+ transition: opacity 0.3s;
+ border: 1px solid gray;
+}
+
+.id-tooltip:hover>.id-tooltiptext, .id-tooltip:hover>.wrapper {
+ pointer-events: auto;
+ visibility: visible;
+ opacity: 1;
+}
+
+.wrapper>.id-tooltiptext {
+ overflow-y: auto;
+ max-height: 400px;
+ display: block;
+ clear: both;
+}
.id-tooltip .id-tooltiptext::after {
- content: "";
- position: absolute;
- top: 40%;
- right: 100%;
- margin-left: -5px;
- border-width: 5px;
- border-style: solid;
- border-color: transparent #544f4f transparent transparent;
+ content: "";
+ position: absolute;
+ top: 40%;
+ right: 100%;
+ margin-left: -5px;
+ border-width: 5px;
+ border-style: solid;
+ border-color: transparent #544f4f transparent transparent;
}
.wrapper {
- position:relative;
+ position: relative;
}
-.my-tooltip > .my-tooltiptext, .my-tooltip > .wrapper {
+.my-tooltip>.my-tooltiptext, .my-tooltip>.wrapper {
visibility: hidden;
width: 600px;
background-color: #647dd6;
@@ -472,36 +518,37 @@ tr:focus {
left: -5%;
opacity: 0;
transition: opacity 0.3s;
- overflow: visible;
+ overflow: visible;
}
.my-tooltip .my-tooltiptext::after {
- content: "";
- position: absolute;
- top: 100%;
- left: 50%;
- margin-left: -5px;
- border-width: 5px;
- border-style: solid;
- border-color: #555 transparent transparent transparent;
-}
-
-.my-tooltip:hover > .my-tooltiptext, .my-tooltip:hover > .wrapper {
- pointer-events: auto;
- visibility: visible;
- opacity: 1;
-}
-.wrapper > .my-tooltiptext {
- overflow-y: auto;
- max-height: 400px;
- display: block;
- clear: both;
-}
+ content: "";
+ position: absolute;
+ top: 100%;
+ left: 50%;
+ margin-left: -5px;
+ border-width: 5px;
+ border-style: solid;
+ border-color: #555 transparent transparent transparent;
+}
+
+.my-tooltip:hover>.my-tooltiptext, .my-tooltip:hover>.wrapper {
+ pointer-events: auto;
+ visibility: visible;
+ opacity: 1;
+}
+
+.wrapper>.my-tooltiptext {
+ overflow-y: auto;
+ max-height: 400px;
+ display: block;
+ clear: both;
+}
.stat_tooltip {
- position: relative;
- display: inline-block;
- top: -10px;
+ position: relative;
+ display: inline-block;
+ top: -10px;
}
.gen_tooltip {
@@ -510,89 +557,89 @@ tr:focus {
}
.gen_tooltip .gen_tooltiptext_r {
- visibility: hidden;
- width: 250px;
- background-color: #647dd6;
- color: #000;
- text-align: center;
- border-radius: 2px;
- border: 1px solid rgba(0, 0, 0, .15);
- padding: 5px 0;
- position: absolute;
- z-index: 100;
- left: 110%;
- top: -50%;
+ visibility: hidden;
+ width: 250px;
+ background-color: #647dd6;
+ color: #000;
+ text-align: center;
+ border-radius: 2px;
+ border: 1px solid rgba(0, 0, 0, .15);
+ padding: 5px 0;
+ position: absolute;
+ z-index: 100;
+ left: 110%;
+ top: -50%;
}
.gen_tooltip .gen_tooltiptext_r::after {
- content: "";
- position: absolute;
- top: 50%;
- right: 100%; /* to the left of tooltip */
- margin-left: -5px;
- border-width: 5px;
- border-style: solid;
- border-color: transparent #fff transparent transparent;
+ content: "";
+ position: absolute;
+ top: 50%;
+ right: 100%; /* to the left of tooltip */
+ margin-left: -5px;
+ border-width: 5px;
+ border-style: solid;
+ border-color: transparent #fff transparent transparent;
}
.gen_tooltip:hover .gen_tooltiptext_r {
- visibility: visible;
+ visibility: visible;
}
.stat_tooltip .stat_tooltiptext, .stat_tooltip .wrapper {
- visibility: hidden;
- width: 500px;
- background-color: #c8d1f0;
- color: #000;
- text-align: left;
- border-radius: 6px;
- border: 1px solid rgba(0, 0, 0, .15);
- padding: 5px 0;
- position: absolute;
- z-index: 100;
- bottom: 100%;
- height: 200px;
+ visibility: hidden;
+ width: 500px;
+ background-color: #c8d1f0;
+ color: #000;
+ text-align: left;
+ border-radius: 6px;
+ border: 1px solid rgba(0, 0, 0, .15);
+ padding: 5px 0;
+ position: absolute;
+ z-index: 100;
+ bottom: 100%;
+ height: 200px;
}
.stat_tooltip .stat_tooltiptext::after, .stat_tooltip .wrapper::after {
- content: "";
- position: absolute;
- top: 100%;
- left: 4%;
- margin-left: -5px;
- border-width: 5px;
- border-style: solid;
- border-color: rgba(0, 0, 0, .15) transparent transparent transparent;
+ content: "";
+ position: absolute;
+ top: 100%;
+ left: 4%;
+ margin-left: -5px;
+ border-width: 5px;
+ border-style: solid;
+ border-color: rgba(0, 0, 0, .15) transparent transparent transparent;
}
.stat_tooltip:hover .stat_tooltiptext, .stat_tooltip:hover .wrapper {
- visibility: visible;
+ visibility: visible;
}
.stat_tooltip .wrapper .clip-btn-div {
- display: inline;
- left: 50px;
- top: 80px;
+ display: inline;
+ left: 50px;
+ top: 80px;
}
.b2b-card-container {
- background-color: #ffffff;
+ background-color: #ffffff;
}
.b2b-cards {
transition: .5s;
opacity: .7;
}
+
.b2b-cards a {
- text-decoration: none;
+ text-decoration: none;
}
.b2b-cards:hover {
- box-shadow: 0px 0px 20px 10px #eccc5e;
- text-shadow: none !important;
- background-color: #ffffff !important;
- opacity: 1;
-
+ box-shadow: 0px 0px 20px 10px #eccc5e;
+ text-shadow: none !important;
+ background-color: #ffffff !important;
+ opacity: 1;
}
.b2b-cards .tooltip {
@@ -610,49 +657,51 @@ tr:focus {
.b2b-cards:hover .b2b-card-footer-flyout {
visibility: visible;
}
+
.b2b-card-header {
- text-align: center;
+ text-align: center;
}
.b2b-card-header i {
font-size: 35px;
}
+
.b2b-card-container .b2b-title {
font-size: 50px;
}
+
.b2b-card-content {
text-align: center;
}
.collapsible {
- color: #2196F3;
- cursor: pointer;
- padding: 18px;
- width: 100%;
- border: none;
- outline: none;
- font-size: 25px;
- font-weight: bolder;
- background-color: #ffffff;
- height: 2px;
- margin-top: -30px;
+ color: #2196F3;
+ cursor: pointer;
+ padding: 18px;
+ width: 100%;
+ border: none;
+ outline: none;
+ font-size: 25px;
+ font-weight: bolder;
+ background-color: #ffffff;
+ height: 2px;
+ margin-top: -30px;
}
.collapsible:after {
- content: "\2796";
- color: #2196F3;
- float: right;
- margin-left: 5px;
+ content: "\2796";
+ color: #2196F3;
+ float: right;
+ margin-left: 5px;
}
.collapsible.active:after {
- content: '\02795';
+ content: '\02795';
}
.content {
- padding: 0 18px;
- height: auto;
- display: block;
- transition: max-height 0.2s ease-out;
-
-}
+ padding: 0 18px;
+ height: auto;
+ display: block;
+ transition: max-height 0.2s ease-out;
+} \ No newline at end of file