Skip to content
GitLab
Menu
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
Open Subsurface Data Universe Software
Platform
System
Schema
Commits
e731fabb
Commit
e731fabb
authored
Aug 24, 2021
by
Aman Verma
Browse files
resolving merge conflict
parents
0a32d7f2
305a1a16
Pipeline
#60451
failed with stages
in 82 minutes and 36 seconds
Changes
27
Pipelines
5
Show whitespace changes
Inline
Side-by-side
NOTICE
View file @
e731fabb
...
...
@@ -469,21 +469,6 @@ The following software have components provided under the terms of this license:
- Spring AOP (from https://github.com/spring-projects/spring-framework)
- Spring Beans (from https://github.com/spring-projects/spring-framework)
- Spring Beans (from https://github.com/spring-projects/spring-framework)
- Spring Boot (from https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot)
- Spring Boot (from https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot)
- Spring Boot AutoConfigure (from https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot-autoconfigure)
- Spring Boot AutoConfigure (from https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot-autoconfigure)
- Spring Boot Dependencies (from https://projects.spring.io/spring-boot/#)
- Spring Boot Dependencies (from https://projects.spring.io/spring-boot/#)
- Spring Boot Logging Starter (from https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot-starters/spring-boot-starter-logging)
- Spring Boot Starter (from https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot-starters/spring-boot-starter)
- Spring Boot Starter (from https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot-starters/spring-boot-starter)
- Spring Boot Test (from https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot-test)
- Spring Boot Test (from https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot-test)
- Spring Boot Test Auto-Configure (from https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot-test-autoconfigure)
- Spring Boot Test Auto-Configure (from https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot-test-autoconfigure)
- Spring Boot Test Starter (from https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot-starters/spring-boot-starter-test)
- Spring Boot Test Starter (from https://projects.spring.io/spring-boot/#/spring-boot-parent/spring-boot-starters/spring-boot-starter-test)
- Spring Commons Logging Bridge (from https://github.com/spring-projects/spring-framework)
- Spring Commons Logging Bridge (from https://github.com/spring-projects/spring-framework)
- Spring Context (from https://github.com/spring-projects/spring-framework)
...
...
@@ -527,7 +512,7 @@ The following software have components provided under the terms of this license:
- elasticsearch-x-content (from https://github.com/elastic/elasticsearch)
- error-prone annotations (from https://repo1.maven.org/maven2/com/google/errorprone/error_prone_annotations)
- error-prone annotations (from https://repo1.maven.org/maven2/com/google/errorprone/error_prone_annotations)
- google-auth (from https://github.com/
G
oogle
CloudPlatform
/google-auth-library-python)
- google-auth (from https://github.com/
g
oogle
apis
/google-auth-library-python)
- grpc-google-cloud-pubsub-v1 (from https://repo1.maven.org/maven2/com/google/api/grpc/grpc-google-cloud-pubsub-v1)
- io.grpc:grpc-alts (from https://github.com/grpc/grpc-java)
- io.grpc:grpc-api (from https://github.com/grpc/grpc-java)
...
...
@@ -576,18 +561,29 @@ The following software have components provided under the terms of this license:
- rest-high-level (from https://github.com/elastic/elasticsearch)
- rxjava (from https://github.com/ReactiveX/RxJava)
- server (from https://github.com/elastic/elasticsearch)
- spring-boot (from https://spring.io/projects/spring-boot)
- spring-boot (from https://spring.io/projects/spring-boot)
- spring-boot-actuator (from https://spring.io/projects/spring-boot)
- spring-boot-actuator (from https://spring.io/projects/spring-boot)
- spring-boot-actuator-autoconfigure (from https://spring.io/projects/spring-boot)
- spring-boot-actuator-autoconfigure (from https://spring.io/projects/spring-boot)
- spring-boot-autoconfigure (from https://spring.io/projects/spring-boot)
- spring-boot-autoconfigure (from https://spring.io/projects/spring-boot)
- spring-boot-dependencies (from https://spring.io/projects/spring-boot)
- spring-boot-dependencies (from https://spring.io/projects/spring-boot)
- spring-boot-starter (from https://spring.io/projects/spring-boot)
- spring-boot-starter (from https://spring.io/projects/spring-boot)
- spring-boot-starter-actuator (from https://spring.io/projects/spring-boot)
- spring-boot-starter-actuator (from https://spring.io/projects/spring-boot)
- spring-boot-starter-json (from https://spring.io/projects/spring-boot)
- spring-boot-starter-json (from https://spring.io/projects/spring-boot)
- spring-boot-starter-log4j2 (from https://spring.io/projects/spring-boot)
- spring-boot-starter-logging (from https://spring.io/projects/spring-boot)
- spring-boot-starter-reactor-netty (from https://spring.io/projects/spring-boot)
- spring-boot-starter-security (from https://spring.io/projects/spring-boot)
- spring-boot-starter-security (from https://spring.io/projects/spring-boot)
- spring-boot-starter-test (from https://spring.io/projects/spring-boot)
- spring-boot-starter-test (from https://spring.io/projects/spring-boot)
- spring-boot-starter-tomcat (from https://spring.io/projects/spring-boot)
- spring-boot-starter-tomcat (from https://spring.io/projects/spring-boot)
- spring-boot-starter-validation (from https://spring.io/projects/spring-boot)
...
...
@@ -595,6 +591,10 @@ The following software have components provided under the terms of this license:
- spring-boot-starter-web (from https://spring.io/projects/spring-boot)
- spring-boot-starter-web (from https://spring.io/projects/spring-boot)
- spring-boot-starter-webflux (from https://spring.io/projects/spring-boot)
- spring-boot-test (from https://spring.io/projects/spring-boot)
- spring-boot-test (from https://spring.io/projects/spring-boot)
- spring-boot-test-autoconfigure (from https://spring.io/projects/spring-boot)
- spring-boot-test-autoconfigure (from https://spring.io/projects/spring-boot)
- spring-security-config (from http://spring.io/spring-security)
- spring-security-config (from http://spring.io/spring-security)
- spring-security-core (from http://spring.io/spring-security)
...
...
@@ -653,7 +653,8 @@ The following software have components provided under the terms of this license:
- Hamcrest (from http://hamcrest.org/JavaHamcrest/)
- Hamcrest Core (from http://hamcrest.org/)
- HdrHistogram (from http://hdrhistogram.github.io/HdrHistogram/)
- JavaBeans Activation Framework API jar (from )
- Jakarta Activation API (from https://github.com/eclipse-ee4j/jaf)
- Jakarta XML Binding API (from https://repo1.maven.org/maven2/jakarta/xml/bind/jakarta.xml.bind-api)
- Lucene Common Analyzers (from https://repo1.maven.org/maven2/org/apache/lucene/lucene-analyzers-common)
- Lucene Core (from https://repo1.maven.org/maven2/org/apache/lucene/lucene-core)
- Lucene Suggest (from https://repo1.maven.org/maven2/org/apache/lucene/lucene-suggest)
...
...
@@ -671,7 +672,6 @@ The following software have components provided under the terms of this license:
- Spring Core (from https://github.com/spring-projects/spring-framework)
- ThreeTen backport (from https://www.threeten.org/threetenbp)
- google (from http://breakingcode.wordpress.com/)
- jakarta.xml.bind-api (from )
========================================================================
CC-BY-2.5
...
...
@@ -968,8 +968,8 @@ PHP-3.01
========================================================================
The following software have components provided under the terms of this license:
- Ja
vaBeans
Activation
Framework API jar (from
)
- jakarta.xml.bind-api
(from
)
- Ja
karta
Activation
API (from https://github.com/eclipse-ee4j/jaf
)
-
Jakarta XML Binding API (from https://repo1.maven.org/maven2/jakarta/xml/bind/
jakarta.xml.bind-api)
========================================================================
Public-Domain
...
...
@@ -983,7 +983,7 @@ Python-2.0
========================================================================
The following software have components provided under the terms of this license:
- google-auth (from https://github.com/
G
oogle
CloudPlatform
/google-auth-library-python)
- google-auth (from https://github.com/
g
oogle
apis
/google-auth-library-python)
========================================================================
SPL-1.0
...
...
@@ -1066,8 +1066,8 @@ The following software have components provided under the terms of this license:
- JUnit Platform Engine API (from https://junit.org/junit5/)
- JUnit Platform Engine API (from https://junit.org/junit5/)
- JUnit Vintage Engine (from https://junit.org/junit5/)
- JavaBeans Activation Framework API jar (from )
- Jakarta Activation API (from https://github.com/eclipse-ee4j/jaf)
- Jakarta XML Binding API (from https://repo1.maven.org/maven2/jakarta/xml/bind/jakarta.xml.bind-api)
- Spongy Castle (from http://rtyley.github.io/spongycastle/)
- jakarta.xml.bind-api (from )
README.md
View file @
e731fabb
devops/azure/chart/templates/auth.yaml
View file @
e731fabb
...
...
@@ -29,5 +29,5 @@ spec:
to
:
-
operation
:
notPaths
:
[
"
/"
,
"
*/swagger-resources"
,
"
*/swagger"
,
"
/api/schema-service/v1/webjars/*"
,
"
*/v2/api-docs"
,
"
/api/schema-service/v1/swagger-resources/*"
,
"
*/swagger-ui.html"
,
"
*/actuator/health"
]
"
/api/schema-service/v1/swagger-resources/*"
,
"
*/swagger-ui.html"
,
"
*/actuator/health"
,
"
/api/schema-service/v1/info"
]
docs/SchemaService-OSDU.md
View file @
e731fabb
...
...
@@ -5,6 +5,7 @@
-
[
How to use this service?
](
#using_this_service
)
-
[
Current limitation
](
#limitation
)
-
[
Schema Validation
](
#schema-validation
)
-
[
Version info endpoint
](
#version-info-endpoint
)
## Introduction <a name="introduction"></a>
...
...
@@ -312,3 +313,38 @@ Following table gives you error message when breaking change is introduced at an
Note: The above array message would contain given schema version and existing schema in the system
## Version info endpoint
For deployment available public
`/info`
endpoint, which provides build and git related information.
#### Example response:
```
json
{
"groupId"
:
"org.opengroup.osdu"
,
"artifactId"
:
"storage-gcp"
,
"version"
:
"0.10.0-SNAPSHOT"
,
"buildTime"
:
"2021-07-09T14:29:51.584Z"
,
"branch"
:
"feature/GONRG-2681_Build_info"
,
"commitId"
:
"7777"
,
"commitMessage"
:
"Added copyright to version info properties file"
,
"connectedOuterServices"
:
[
{
"name"
:
"elasticSearch"
,
"version"
:
"..."
},
{
"name"
:
"postgresSql"
,
"version"
:
"..."
},
{
"name"
:
"redis"
,
"version"
:
"..."
}
]
}
```
This endpoint takes information from files, generated by
`spring-boot-maven-plugin`
,
`git-commit-id-plugin`
plugins. Need to specify paths for generated files to matching
properties:
-
`version.info.buildPropertiesPath`
-
`version.info.gitPropertiesPath`
[
Back to table of contents
](
#TOC
)
docs/api/schema.yaml
View file @
e731fabb
...
...
@@ -7,6 +7,8 @@ info:
tags
:
-
name
:
Schema
description
:
Core Schema Service related methods
-
name
:
info
description
:
"
Version
info
endpoint"
security
:
-
bearer
:
[]
paths
:
...
...
@@ -324,6 +326,21 @@ paths:
security
:
-
bearer
:
[]
deprecated
:
false
/info
:
get
:
tags
:
-
info
summary
:
"
Version
info"
description
:
"
For
deployment
available
public
`/info`
endpoint,
\
\
which
provides
build
and
git
related
information."
operationId
:
"
Version
info"
responses
:
"
200"
:
description
:
"
Version
info."
content
:
application/json
:
schema
:
$ref
:
"
#/components/schemas/VersionInfo"
servers
:
-
url
:
VALID_SCHEMA_SERVICE_BASE_URL
...
...
@@ -483,3 +500,44 @@ components:
schemaVersionPatch
:
0
status
:
PUBLISHED
schema
:
{}
VersionInfo
:
type
:
"
object"
properties
:
groupId
:
type
:
"
string"
description
:
"
Maven
artifact
group
ID."
actifactId
:
type
:
"
string"
description
:
"
Maven
artifact
ID."
version
:
type
:
"
string"
description
:
"
Maven
artifact
version"
buildTime
:
type
:
"
string"
description
:
"
Maven
artifact
build
time"
branch
:
type
:
"
string"
description
:
"
Current
git
branch"
commitId
:
type
:
"
string"
description
:
"
Latest
commit
hash"
commitMessage
:
type
:
"
string"
description
:
"
Latest
commit
message"
connectedOuterServices
:
type
:
"
array"
description
:
"
Connected
outer
services
information"
items
:
$ref
:
"
#/components/schemas/ConnectedOuterService"
description
:
"
Version
info."
ConnectedOuterService
:
type
:
"
object"
properties
:
name
:
type
:
"
string"
description
:
"
Connected
outer
service
name."
version
:
type
:
"
string"
description
:
"
Connected
outer
service
version."
description
:
"
Connected
outer
service
information."
\ No newline at end of file
pom.xml
View file @
e731fabb
...
...
@@ -81,4 +81,39 @@
</profile>
</profiles>
<build>
<plugins>
<plugin>
<groupId>
org.springframework.boot
</groupId>
<artifactId>
spring-boot-maven-plugin
</artifactId>
<executions>
<execution>
<id>
build-info
</id>
<goals>
<goal>
build-info
</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>
pl.project13.maven
</groupId>
<artifactId>
git-commit-id-plugin
</artifactId>
<version>
4.0.5
</version>
<executions>
<execution>
<goals>
<goal>
revision
</goal>
</goals>
</execution>
</executions>
<configuration>
<verbose>
true
</verbose>
<dateFormat>
yyyy-MM-dd'T'HH:mm:ssZ
</dateFormat>
<generateGitPropertiesFile>
true
</generateGitPropertiesFile>
<generateGitPropertiesFilename>
${project.build.outputDirectory}/git.properties
</generateGitPropertiesFilename>
</configuration>
</plugin>
</plugins>
</build>
</project>
provider/schema-azure/pom.xml
View file @
e731fabb
...
...
@@ -31,7 +31,7 @@
<properties>
<azure.version>
2.1.7
</azure.version>
<osdu.corelibazure.version>
0.10.1
</osdu.corelibazure.version>
<osdu.oscorecommon.version>
0.1
0
.0
</osdu.oscorecommon.version>
<osdu.oscorecommon.version>
0.1
1
.0
-rc4
</osdu.oscorecommon.version>
<osdu.os-schema-core.version>
0.10.0-SNAPSHOT
</osdu.os-schema-core.version>
<mockito.version>
1.10.19
</mockito.version>
<cucumber.version>
5.4.0
</cucumber.version>
...
...
provider/schema-azure/src/main/java/org/opengroup/osdu/schema/security/AADSecurityConfig.java
View file @
e731fabb
...
...
@@ -45,6 +45,7 @@ public class AADSecurityConfig extends WebSecurityConfigurerAdapter {
"/configuration/security"
,
"/swagger"
,
"/swagger-ui.html"
,
"/info"
,
"/webjars/**"
).
permitAll
()
.
anyRequest
().
authenticated
()
.
and
()
...
...
provider/schema-azure/src/main/java/org/opengroup/osdu/schema/security/AADSecurityConfigWithIstioEnabled.java
View file @
e731fabb
...
...
@@ -31,6 +31,7 @@ public class AADSecurityConfigWithIstioEnabled extends WebSecurityConfigurerAdap
"/configuration/security"
,
"/swagger"
,
"/swagger-ui.html"
,
"/info"
,
"/schema"
,
"/schema/**"
,
"/webjars/**"
).
permitAll
()
...
...
provider/schema-gcp/src/main/resources/application.properties
View file @
e731fabb
...
...
@@ -6,6 +6,7 @@ AUTHORIZE_API_KEY=
management.health.elasticsearch.enabled
=
false
management.endpoints.web.base-path
=
/
management.endpoints.web.path-mapping.health
=
health
management.endpoint.info.enabled
=
false
LOG_PREFIX
=
schema
# Use this property to name your shared tenant name
...
...
provider/schema-ibm/src/main/java/org/opengroup/osdu/schema/provider/ibm/security/SecurityConfig.java
View file @
e731fabb
...
...
@@ -23,6 +23,7 @@ public class SecurityConfig extends WebSecurityConfigurerAdapter {
"/swagger-resources/**"
,
"/configuration/security"
,
"/swagger-ui.html"
,
"/info"
,
"/webjars/**"
).
permitAll
()
.
anyRequest
().
authenticated
().
and
().
oauth2ResourceServer
().
jwt
();
}
...
...
schema-core/pom.xml
View file @
e731fabb
...
...
@@ -13,7 +13,7 @@
<properties>
<springfox-version>
2.7.0
</springfox-version>
<os-core-common.version>
0.1
0
.0
</os-core-common.version>
<os-core-common.version>
0.1
1
.0
-rc4
</os-core-common.version>
</properties>
<dependencies>
...
...
schema-core/src/main/java/org/opengroup/osdu/schema/api/InfoApi.java
0 → 100644
View file @
e731fabb
/*
* Copyright 2021 Google LLC
* Copyright 2021 EPAM Systems, Inc
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package
org.opengroup.osdu.schema.api
;
import
java.io.IOException
;
import
org.opengroup.osdu.core.common.info.VersionInfoBuilder
;
import
org.opengroup.osdu.core.common.model.info.VersionInfo
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.http.MediaType
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RestController
;
@RestController
@RequestMapping
public
class
InfoApi
{
@Autowired
private
VersionInfoBuilder
versionInfoBuilder
;
@GetMapping
(
value
=
"/info"
,
produces
=
MediaType
.
APPLICATION_JSON_VALUE
)
public
VersionInfo
info
()
throws
IOException
{
return
versionInfoBuilder
.
buildVersionInfo
();
}
}
schema-core/src/main/java/org/opengroup/osdu/schema/provider/interfaces/messagebus/IMessageBus.java
View file @
e731fabb
...
...
@@ -15,7 +15,7 @@
*/
package
org.opengroup.osdu.schema.provider.interfaces.messagebus
;
import
sun.reflect.generics.reflectiveObjects
.NotImplementedException
;
import
org.apache.commons.lang3
.NotImplementedException
;
public
interface
IMessageBus
{
void
publishMessage
(
String
schemaId
,
String
eventType
);
...
...
schema-core/src/main/java/org/opengroup/osdu/schema/provider/interfaces/schemainfostore/IAuthorityStore.java
View file @
e731fabb
...
...
@@ -4,7 +4,7 @@ import org.opengroup.osdu.schema.exceptions.ApplicationException;
import
org.opengroup.osdu.schema.exceptions.BadRequestException
;
import
org.opengroup.osdu.schema.exceptions.NotFoundException
;
import
org.opengroup.osdu.schema.model.Authority
;
import
sun.reflect.generics.reflectiveObjects
.NotImplementedException
;
import
org.apache.commons.lang3
.NotImplementedException
;
public
interface
IAuthorityStore
{
...
...
schema-core/src/main/java/org/opengroup/osdu/schema/provider/interfaces/schemainfostore/IEntityTypeStore.java
View file @
e731fabb
...
...
@@ -4,7 +4,7 @@ import org.opengroup.osdu.schema.exceptions.ApplicationException;
import
org.opengroup.osdu.schema.exceptions.BadRequestException
;
import
org.opengroup.osdu.schema.exceptions.NotFoundException
;
import
org.opengroup.osdu.schema.model.EntityType
;
import
sun.reflect.generics.reflectiveObjects
.NotImplementedException
;
import
org.apache.commons.lang3
.NotImplementedException
;
public
interface
IEntityTypeStore
{
...
...
schema-core/src/main/java/org/opengroup/osdu/schema/provider/interfaces/schemainfostore/ISchemaInfoStore.java
View file @
e731fabb
...
...
@@ -9,7 +9,7 @@ import org.opengroup.osdu.schema.exceptions.NotFoundException;
import
org.opengroup.osdu.schema.model.QueryParams
;
import
org.opengroup.osdu.schema.model.SchemaInfo
;
import
org.opengroup.osdu.schema.model.SchemaRequest
;
import
sun.reflect.generics.reflectiveObjects
.NotImplementedException
;
import
org.apache.commons.lang3
.NotImplementedException
;
public
interface
ISchemaInfoStore
{
...
...
schema-core/src/main/java/org/opengroup/osdu/schema/provider/interfaces/schemainfostore/ISourceStore.java
View file @
e731fabb
...
...
@@ -4,7 +4,7 @@ import org.opengroup.osdu.schema.exceptions.ApplicationException;
import
org.opengroup.osdu.schema.exceptions.BadRequestException
;
import
org.opengroup.osdu.schema.exceptions.NotFoundException
;
import
org.opengroup.osdu.schema.model.Source
;
import
sun.reflect.generics.reflectiveObjects
.NotImplementedException
;
import
org.apache.commons.lang3
.NotImplementedException
;
public
interface
ISourceStore
{
...
...
schema-core/src/main/java/org/opengroup/osdu/schema/provider/interfaces/schemastore/ISchemaStore.java
View file @
e731fabb
...
...
@@ -2,7 +2,7 @@ package org.opengroup.osdu.schema.provider.interfaces.schemastore;
import
org.opengroup.osdu.schema.exceptions.ApplicationException
;
import
org.opengroup.osdu.schema.exceptions.NotFoundException
;
import
sun.reflect.generics.reflectiveObjects
.NotImplementedException
;
import
org.apache.commons.lang3
.NotImplementedException
;
public
interface
ISchemaStore
{
...
...
testing/schema-test-azure/src/test/java/org/opengroup/osdu/schema/constants/TestConstants.java
View file @
e731fabb
...
...
@@ -7,6 +7,7 @@ public class TestConstants {
public
static
final
String
GET_LIST_ENDPOINT
=
"/api/schema-service/v1/schema"
;
public
static
final
String
GET_ENDPOINT
=
"/api/schema-service/v1/schema/"
;
public
static
final
String
GET_FLATTENED_ENDPOINT
=
"/api/schema-service/v1/schema/{id}/IndexerSchemaV1"
;
public
static
final
String
GET_INFO_ENDPOINT
=
"/api/schema-service/v1/info"
;
//public static final String HOST = "http://localhost:8080";
public
static
final
String
INTERNAL_SERVER_ERROR
=
"internal server error"
;
public
static
final
String
INTERNAL
=
"INTERNAL"
;
...
...
Prev
1
2
Next
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment