This is to simplify the query pane on the frontend client. The client doesn't need to have separate interfaces for sql and non-sql plugins. All queries will be sent to the server in the form of a String that is parsed in different formats based on the plugin. Also adding test cases for PostgresPlugin. Used TestContainers to simulate the postgres db in Docker inside the Java test itself. Very useful.
76 lines
1.9 KiB
YAML
76 lines
1.9 KiB
YAML
.only-default: &only-default
|
|
only:
|
|
- release
|
|
- master
|
|
- merge_requests
|
|
|
|
image: docker:latest
|
|
|
|
cache:
|
|
paths:
|
|
- ./.m2/repository
|
|
|
|
variables:
|
|
DOCKER_DRIVER: overlay2
|
|
SPRING_PROFILES_ACTIVE: test
|
|
MAVEN_OPTS: "-Djava.awt.headless=true -Dmaven.repo.local=./.m2/repository"
|
|
MAVEN_CLI_OPTS: "--batch-mode --errors --fail-at-end --show-version"
|
|
DOCKER_IMAGE_NAME: $CI_REGISTRY/$CI_PROJECT_NAMESPACE/$CI_PROJECT_NAME:$CI_COMMIT_SHORT_SHA
|
|
# Instruct Testcontainers to use the daemon of DinD.
|
|
DOCKER_HOST: "tcp://docker:2375"
|
|
|
|
stages:
|
|
- build
|
|
- package
|
|
- deploy
|
|
|
|
maven-build:
|
|
image: maven:3-jdk-11-slim
|
|
stage: build
|
|
services:
|
|
- redis
|
|
- docker:dind
|
|
script:
|
|
- mvn package -B -Dspring.profiles.active=$SPRING_PROFILES_ACTIVE
|
|
artifacts:
|
|
paths:
|
|
- appsmith-server/target/*.jar
|
|
- appsmith-plugins/*/target/*.jar
|
|
only:
|
|
- release
|
|
- master
|
|
- merge_requests
|
|
|
|
docker-package:
|
|
image: docker:dind
|
|
services:
|
|
- docker:19.03.5-dind #change this back to docker-dind
|
|
stage: package
|
|
script:
|
|
- docker build -t appsmith/appsmith-server:release .
|
|
- docker login -u $DOCKER_HUB_USERNAME -p $DOCKER_HUB_ACCESS_TOKEN
|
|
- docker push appsmith/appsmith-server:release
|
|
only:
|
|
- release
|
|
|
|
docker-package-master:
|
|
image: docker:dind
|
|
services:
|
|
- docker:19.03.5-dind #change this back to docker-dind
|
|
stage: package
|
|
script:
|
|
- docker build -t appsmith/appsmith-server:latest .
|
|
- docker build -t appsmith/appsmith-server:$CI_COMMIT_SHORT_SHA .
|
|
- docker login -u $DOCKER_HUB_USERNAME -p $DOCKER_HUB_ACCESS_TOKEN
|
|
# If we don't add the tag to the `docker push` command, all the tags for this image will be pushed
|
|
- docker push appsmith/appsmith-server
|
|
only:
|
|
- master
|
|
|
|
heroku-deploy:
|
|
stage: deploy
|
|
image: tmaier/dpl:latest
|
|
script:
|
|
- dpl --provider=heroku --app=appsmith-test --api-key=$HEROKU_API_KEY
|
|
only:
|
|
- release |