Skip to content
Commits on Source (4)
...@@ -3,10 +3,18 @@ stages: ...@@ -3,10 +3,18 @@ stages:
- test - test
- deploy - deploy
build_gms_client: .gms_client:
stage: build
tags: tags:
- docker - docker
rules:
- if: '$CI_COMMIT_BRANCH != "master"'
when: never
- changes:
- gms-client/gms-client/*
build_gms_client:
extends: .gms_client
stage: build
script: script:
- cd gms-client/gms-client - cd gms-client/gms-client
- mvn clean package -DskipTests -DfinalName=gms-client - mvn clean package -DskipTests -DfinalName=gms-client
...@@ -15,28 +23,66 @@ build_gms_client: ...@@ -15,28 +23,66 @@ build_gms_client:
- gms-client/gms-client/target/gms-client.jar - gms-client/gms-client/target/gms-client.jar
- gms-client/gms-client/pom.xml - gms-client/gms-client/pom.xml
expire_in: 7 days expire_in: 7 days
only:
- master
test_gms_client: test_gms_client:
extends: .gms_client
stage: test
script:
- cd gms-client/gms-client
- mvn clean test
test_gms:
stage: test stage: test
tags: tags:
- docker - docker
image: git.ia2.inaf.it:5050/ia2/ia2-devops/maven-otj-pg-embedded
script: script:
- cd gms-client/gms-client - cd gms
- mvn clean test - mvn clean test
only: - awk -F"," '{ instructions += $4 + $5; covered += $5 } END { print "coverage=" 100*covered/instructions }' target/site/jacoco/jacoco.csv
- master coverage: '/coverage=\d+\.\d+/'
rules:
- if: '$CI_COMMIT_BRANCH != "master"'
when: never
- changes:
- gms/*
deploy_gms_client: deploy_gms_client:
extends: .gms_client
stage: deploy stage: deploy
tags:
- docker
script: script:
- mvn deploy:deploy-file - mvn deploy:deploy-file
-Dfile=gms-client/gms-client/target/gms-client.jar -Dfile=gms-client/gms-client/target/gms-client.jar
-DrepositoryId=ia2.snapshots -DrepositoryId=ia2.snapshots
-DpomFile=gms-client/gms-client/pom.xml -DpomFile=gms-client/gms-client/pom.xml
-Durl=${IA2_MVN_REPO_SNAPSHOTS} -Durl=${IA2_MVN_REPO_SNAPSHOTS}
only:
- master dockerize_db:
stage: deploy
tags:
- shell
script:
- docker login -u "${CI_REGISTRY_USER}" -p "${CI_REGISTRY_PASSWORD}" "${CI_REGISTRY}"
- docker build -t "${CI_REGISTRY_IMAGE}/database" -f database/Dockerfile .
- docker push "${CI_REGISTRY_IMAGE}/database"
rules:
- if: '$CI_COMMIT_BRANCH != "master"'
when: never
- changes:
- database/*
- gms/src/main/resources/sql/*
dockerize_gms:
stage: deploy
tags:
- shell
script:
- docker login -u "${CI_REGISTRY_USER}" -p "${CI_REGISTRY_PASSWORD}" "${CI_REGISTRY}"
- docker build -t "${CI_REGISTRY_IMAGE}" -f gms/Dockerfile .
- docker push "${CI_REGISTRY_IMAGE}"
rules:
- if: '$CI_COMMIT_BRANCH != "master"'
when: never
- changes:
- gms/*
- gms-ui/*
This diff is collapsed.
# IA2 GMS # IA2 GMS
## Database Docker image ## Docker images
To build the image run **from current directory**: Docker images are available on [container registry page](https://www.ict.inaf.it/gitlab/ia2/ia2-gms/container_registry).
docker build -f database/Dockerfile --tag gms-db . A working demo using Docker Compose is available on [RAP repository](https://www.ict.inaf.it/gitlab/ia2/rap-ia2).
To start the image and use the database:
docker run -d -p 5432:5432 -i -t gms-db:latest
## GMS Docker image
To build the image:
mvn clean package dockerfile:build -DskipTests
To run:
docker run --env-file docker-env -d -p 8081:8081 -i -t gms:latest
## Create the first super-admin ## Create the first super-admin
......
SPRING_DATASOURCE_URL=jdbc:postgresql://140.105.79.115:5432/postgres
SECURITY_OAUTH2_CLIENT_ACCESS-TOKEN-URI=http://140.105.79.115/rap-ia2/auth/oauth2/token
SECURITY_OAUTH2_CLIENT_USER-AUTHORIZATION-URI=http://localhost/rap-ia2/auth/oauth2/authorize
SECURITY_OAUTH2_RESOURCE_TOKEN-INFO-URI=http://140.105.79.115/rap-ia2/auth/oauth2/check_token
SECURITY_OAUTH2_RESOURCE_JWK_KEY-SET-URI=http://140.105.79.115/rap-ia2/auth/oidc/jwks
RAP_WS-URL=http://140.105.79.115/rap-ia2/ws
SPRING_PROFILES_ACTIVE=prod
/*
* Copyright (C) 2021 Istituto Nazionale di Astrofisica
* SPDX-License-Identifier: GPL-3.0-or-later
*/
package it.inaf.ia2.gms.cli; package it.inaf.ia2.gms.cli;
import it.inaf.ia2.client.ClientException; import it.inaf.ia2.client.ClientException;
......
/*
* This file is part of gms-client
* Copyright (C) 2021 Istituto Nazionale di Astrofisica
* SPDX-License-Identifier: GPL-3.0-or-later
*/
package it.inaf.ia2.gms.client; package it.inaf.ia2.gms.client;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
......
/*
* This file is part of gms-client
* Copyright (C) 2021 Istituto Nazionale di Astrofisica
* SPDX-License-Identifier: GPL-3.0-or-later
*/
package it.inaf.ia2.gms.client.call; package it.inaf.ia2.gms.client.call;
import it.inaf.ia2.client.BaseCall; import it.inaf.ia2.client.BaseCall;
......
/*
* This file is part of gms-client
* Copyright (C) 2021 Istituto Nazionale di Astrofisica
* SPDX-License-Identifier: GPL-3.0-or-later
*/
package it.inaf.ia2.gms.client.call; package it.inaf.ia2.gms.client.call;
import it.inaf.ia2.client.BaseCall; import it.inaf.ia2.client.BaseCall;
......
/*
* This file is part of gms-client
* Copyright (C) 2021 Istituto Nazionale di Astrofisica
* SPDX-License-Identifier: GPL-3.0-or-later
*/
package it.inaf.ia2.gms.client.call; package it.inaf.ia2.gms.client.call;
import it.inaf.ia2.client.BaseCall; import it.inaf.ia2.client.BaseCall;
......
/*
* This file is part of gms-client
* Copyright (C) 2021 Istituto Nazionale di Astrofisica
* SPDX-License-Identifier: GPL-3.0-or-later
*/
package it.inaf.ia2.gms.client.call; package it.inaf.ia2.gms.client.call;
import it.inaf.ia2.client.BaseCall; import it.inaf.ia2.client.BaseCall;
......
/*
* This file is part of gms-client
* Copyright (C) 2021 Istituto Nazionale di Astrofisica
* SPDX-License-Identifier: GPL-3.0-or-later
*/
package it.inaf.ia2.gms.client.call; package it.inaf.ia2.gms.client.call;
import it.inaf.ia2.client.BaseCall; import it.inaf.ia2.client.BaseCall;
......
/*
* This file is part of gms-client
* Copyright (C) 2021 Istituto Nazionale di Astrofisica
* SPDX-License-Identifier: GPL-3.0-or-later
*/
package it.inaf.ia2.gms.client.call; package it.inaf.ia2.gms.client.call;
import it.inaf.ia2.client.BaseCall; import it.inaf.ia2.client.BaseCall;
......
/*
* This file is part of gms-client
* Copyright (C) 2021 Istituto Nazionale di Astrofisica
* SPDX-License-Identifier: GPL-3.0-or-later
*/
package it.inaf.ia2.gms.client.call; package it.inaf.ia2.gms.client.call;
import it.inaf.ia2.client.BaseCall; import it.inaf.ia2.client.BaseCall;
......
/*
* This file is part of gms-client
* Copyright (C) 2021 Istituto Nazionale di Astrofisica
* SPDX-License-Identifier: GPL-3.0-or-later
*/
package it.inaf.ia2.gms.client.call; package it.inaf.ia2.gms.client.call;
import it.inaf.ia2.client.BaseCall; import it.inaf.ia2.client.BaseCall;
......
/*
* This file is part of gms-client
* Copyright (C) 2021 Istituto Nazionale di Astrofisica
* SPDX-License-Identifier: GPL-3.0-or-later
*/
package it.inaf.ia2.gms.client.call; package it.inaf.ia2.gms.client.call;
import it.inaf.ia2.client.BaseCall; import it.inaf.ia2.client.BaseCall;
......
/*
* This file is part of gms-client
* Copyright (C) 2021 Istituto Nazionale di Astrofisica
* SPDX-License-Identifier: GPL-3.0-or-later
*/
package it.inaf.ia2.gms.client.call; package it.inaf.ia2.gms.client.call;
import it.inaf.ia2.client.BaseCall; import it.inaf.ia2.client.BaseCall;
......
/*
* This file is part of gms-client
* Copyright (C) 2021 Istituto Nazionale di Astrofisica
* SPDX-License-Identifier: GPL-3.0-or-later
*/
package it.inaf.ia2.gms.client.call; package it.inaf.ia2.gms.client.call;
import it.inaf.ia2.client.BaseCall; import it.inaf.ia2.client.BaseCall;
......
/*
* This file is part of gms-client
* Copyright (C) 2021 Istituto Nazionale di Astrofisica
* SPDX-License-Identifier: GPL-3.0-or-later
*/
package it.inaf.ia2.gms.client.call; package it.inaf.ia2.gms.client.call;
import it.inaf.ia2.client.BaseCall; import it.inaf.ia2.client.BaseCall;
......
/*
* This file is part of gms-client
* Copyright (C) 2021 Istituto Nazionale di Astrofisica
* SPDX-License-Identifier: GPL-3.0-or-later
*/
package it.inaf.ia2.gms.client.call; package it.inaf.ia2.gms.client.call;
import it.inaf.ia2.client.BaseCall; import it.inaf.ia2.client.BaseCall;
......
/*
* This file is part of gms-client
* Copyright (C) 2021 Istituto Nazionale di Astrofisica
* SPDX-License-Identifier: GPL-3.0-or-later
*/
package it.inaf.ia2.gms.client.call; package it.inaf.ia2.gms.client.call;
import it.inaf.ia2.client.BaseCall; import it.inaf.ia2.client.BaseCall;
......