| name: Docker Build & Test |
| |
| on: |
| pull_request: |
| branches: |
| - 'master' |
| paths: |
| - '.github/workflows/docker-test.yml' |
| - 'solr/bin/**' |
| - 'solr/contrib/prometheus-exporter/bin/**' |
| - 'solr/docker/**' |
| - 'solr/packaging/**' |
| |
| jobs: |
| test: |
| name: Build and test Docker image |
| |
| runs-on: ubuntu-latest |
| |
| steps: |
| # Setup |
| - uses: actions/checkout@v2 |
| - name: Set up JDK 11 |
| uses: actions/setup-java@v1 |
| with: |
| java-version: 11 |
| - name: Grant execute permission for gradlew |
| run: chmod +x gradlew |
| - uses: actions/cache@v2 |
| with: |
| path: | |
| ~/.gradle/caches |
| key: ${{ runner.os }}-gradle-docker-${{ hashFiles('versions.lock') }} |
| restore-keys: | |
| ${{ runner.os }}-gradle-docker- |
| ${{ runner.os }}-gradle- |
| - name: Build Docker image with Gradle |
| run: ./gradlew solr:docker:docker |
| - name: Run tests on Docker image |
| run: ./gradlew solr:docker:testDocker |