Merge pull request #157 from ptkis/adminsdk-key #86
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This workflow will build a Java project with Gradle | |
# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-gradle | |
name: Publish and Deploy with Docker | |
on: | |
push: | |
branches: [ main, master ] | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.actor }} | |
cancel-in-progress: false | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
timeout-minutes: 120 | |
permissions: | |
checks: write | |
contents: read | |
issues: read | |
pull-requests: write | |
steps: | |
- uses: actions/checkout@v3 | |
- name: Set up JDK | |
uses: actions/setup-java@v3 | |
with: | |
java-version: 17 | |
distribution: temurin | |
- name: Install docker | |
run: | | |
command docker -v || curl -fsSL get.docker.com | sudo bash | |
- name: Remove Rabbit MQ | |
run: docker rm -f rabbitmq || true | |
- name: Start Rabbit MQ | |
run: docker run -d --name=rabbitmq -p 5672:5672 -e RABBITMQ_NODE_PORT=5672 ptkis/rabbitmq-federated:10-mining-amd64 | |
- name: Grant execute permission for gradlew | |
run: chmod +x gradlew | |
- run: echo "$APPLICATION_SECRET_PROPERTIES" > src/test/resources/application-secret.properties | |
env: | |
APPLICATION_SECRET_PROPERTIES: ${{ secrets.APPLICATION_SECRET_PROPERTIES }} | |
- name: Get FIREBASE_JSON from secrets | |
run: | | |
echo $FIREBASE_JSON > src/main/resources/banyuwangi-dashboard-firebase-adminsdk.json | |
env: | |
FIREBASE_JSON: ${{ secrets.FIREBASE_JSON }} | |
- name: Test and assemble with Gradle | |
run: ./gradlew assemble | |
env: | |
DOCKER_HUB_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }} | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- run: chmod +x deploy.sh | |
- name: Deploy to docker | |
run: ./deploy.sh | |
env: | |
DOCKER_HUB_PASSWORD: ${{ secrets.DOCKER_HUB_PASSWORD }} | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- name: Publish Test Report | |
uses: mikepenz/action-junit-report@v3 | |
with: | |
report_paths: '**/build/test-results/test/TEST-*.xml' | |
if: always() | |
- name: Remove application-secret.properties | |
run: rm -f src/test/resources/application-secret.properties || true | |
if: always() | |
- name: Remove Rabbit MQ | |
run: docker rm -f --volumes rabbitmq || true | |
if: always() | |
- name: Upload openapi artifacts | |
uses: actions/upload-artifact@v2 | |
with: | |
name: openapi | |
path: build/openapi.json |