diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
new file mode 100644
index 000000000..bdab1f171
--- /dev/null
+++ b/.github/workflows/ci.yml
@@ -0,0 +1,64 @@
+name: querydsl
+
+on:
+ push:
+ branches:
+ - '*'
+ paths-ignore:
+ - README.md
+
+ pull_request:
+ branches:
+ - '*'
+ paths-ignore:
+ - README.md
+
+jobs:
+ build:
+ env:
+ MAVEN_OPTS: -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn
+
+ strategy:
+ matrix:
+ maven-args:
+ - --activate-profiles all,travis,examples --projects !querydsl-scala
+ - --activate-profiles jpa,hibernate5,travis,examples --projects !querydsl-jpa-codegen
+ - --activate-profiles all,travis --projects querydsl-scala --resume-from querydsl-scala
+
+ runs-on: ubuntu-latest
+ steps:
+ - name: Check out code
+ uses: actions/checkout@v2
+
+ - name: Set up JDK 1.8
+ uses: actions/setup-java@v1
+ with:
+ java-version: 1.8
+
+ - name: Start test databases
+ run: docker-compose --file travis/docker-compose.yml up --detach mysql postgresql mongo
+
+ - name: Initialize cache
+ uses: actions/cache@v1
+ with:
+ path: ~/.m2/repository
+ key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
+
+ - name: Run tests
+ run: mvn --batch-mode install -am jacoco:report ${{ matrix.maven-args }}
+
+ - name: Report coverage
+ if: ${{ github.event_name == 'push' && github.ref == 'master' }}
+ env:
+ COVERALLS_REPO_TOKEN: ${{ secrets.COVERALLS_REPO_TOKEN }}
+ run: mvn --batch-mode coveralls:report
+
+ - name: Deploy snapshot 🚀
+ if: ${{ github.event_name == 'push' && github.ref == 'master' }}
+ env:
+ NEXUS_USERNAME: ${{ secrets.NEXUS_USERNAME }}
+ NEXUS_PASSWORD: ${{ secrets.NEXUS_PASSWORD }}
+ run: mvn deploy --settings deploy/.m2/settings.xml -DskipTests
+
+ - name: Clean up before caching
+ run: rm -rf ~/.m2/repository/com/querydsl/
\ No newline at end of file
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644
index ce24978ae..000000000
--- a/.travis.yml
+++ /dev/null
@@ -1,33 +0,0 @@
-dist: xenial
-language: java
-jdk:
- - openjdk8
-services:
- - docker
-env:
- matrix:
- - ARGS='--activate-profiles all,travis,examples --projects !querydsl-scala'
- - ARGS='--activate-profiles jpa,hibernate5,travis,examples --projects !querydsl-jpa-codegen'
- - ARGS='--activate-profiles all,travis --projects querydsl-scala --resume-from querydsl-scala'
- global:
- - secure: nmokASh/5D4hXXHKDk+nm1VZO9oXm5ZGPVty3guRCOAnx8tGhD+AszyuhHPuD2XNFVEDrCReg/mQXxE2lPph32gXw23/AM/f8qpubv8x4kR6C7xwshpgA14EJ+ssc0Wv0k6ZCveF/OWlf/LHGaIuROCfrTjD4GQkZXf5tkqU30Y=
- - secure: N1ysx2ZX6sZrBk2UWIdP6MDVyAvenD6R4ghUQkzkkRjF//LOKwSTFImE63ChXTy/e3VjC338NbZo+KQkAviJIGIhDXau/daYSd9mH9tOROJlJf7kJBJAiUWOV8vrwomRplmkkZdzgpS/5O9nxKloanFLR799UIYDKF8FwMJo5x4=
-install: mvn clean install -DskipTests
-before_script:
- - docker-compose --file travis/docker-compose.yml up --detach mysql postgresql mongo
-script:
- - mvn --batch-mode verify -am jacoco:report ${ARGS}
-deploy:
- - provider: script
- skip_cleanup: true
- script: mvn deploy --settings deploy/.m2/settings.xml -DskipTests
- on:
- branch: master
-
-after_success:
- - mvn coveralls:report
-before_cache:
- - rm -rf $HOME/.m2/repository/com/querydsl/
-cache:
- directories:
- - "$HOME/.m2"
diff --git a/pom.xml b/pom.xml
index cf564896c..0ba946ced 100644
--- a/pom.xml
+++ b/pom.xml
@@ -314,6 +314,9 @@
org.eluder.coveralls
coveralls-maven-plugin
4.0.0
+
+ ${env.COVERALLS_REPO_TOKEN}
+
org.jacoco