Skip to content

Update to generator-jhipster v8 #2287

Update to generator-jhipster v8

Update to generator-jhipster v8 #2287

Workflow file for this run

name: Ionic
on: [push, pull_request]
env:
JHIPSTER_INSTALL: ${{ github.workspace }}/generator-jhipster-ionic/test-integration/install
JHIPSTER_SAMPLES: ${{ github.workspace }}/generator-jhipster-ionic/test-integration/jdl
#environment properties
TZ: America/Denver
SPRING_OUTPUT_ANSI_ENABLED: ALWAYS
SPRING_JPA_SHOW_SQL: false
NG_CLI_ANALYTICS: false
# https://github.com/cypress-io/cypress/issues/27962#issuecomment-1746294247
NODE_OPTIONS: --dns-result-order=ipv4first
jobs:
build:
name: ${{ matrix.jdl }}
runs-on: ${{ matrix.os }}
if: "!contains(github.event.head_commit.message, '[ci skip]') && !contains(github.event.head_commit.message, '[skip ci]') && !contains(github.event.pull_request.title, '[skip ci]') && !contains(github.event.pull_request.title, '[ci skip]') && !contains(github.event.ref_type, '[tag]')"
timeout-minutes: 40
defaults:
run:
working-directory: ${{ github.workspace }}/backend
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest]
jdl:
- monolith-jwt
- monolith-oauth2
- gateway-oauth2
- reactive-oauth2
- 21-points
include:
- jdl: monolith-jwt
e2e: 1
- jdl: monolith-oauth2
e2e: 1
- jdl: gateway-oauth2
e2e: 1
- jdl: reactive-oauth2
e2e: 1
- jdl: 21-points
e2e: 1
steps:
#----------------------------------------------------------------------
# Install all tools and check configuration
#----------------------------------------------------------------------
- name: Create backend folder
run: mkdir backend
working-directory: ${{ github.workspace }}
- uses: actions/checkout@v4
with:
path: generator-jhipster-ionic
- name: Link Ionic blueprint
run: |
npm ci
npm link
working-directory: ${{ github.workspace }}/generator-jhipster-ionic
- uses: actions/setup-node@v3
with:
node-version: 18
- uses: actions/setup-java@v3
with:
distribution: 'adopt'
java-version: 17
- name: Check Version
run: $JHIPSTER_INSTALL/02-checkVersion.sh
#----------------------------------------------------------------------
# Script
#----------------------------------------------------------------------
- name: Generate Project
run: 'jhipster-ionic generate-sample ${{ matrix.jdl }} --force --no-insight --skip-checks --skip-git --skip-commit-hook --skip-install --skip-jhipster-dependencies'
- name: Ionic tests
run: cat package.json; npm install; npm test
working-directory: ${{ github.workspace }}/ionic4j
- name: Build application docker image
run: npm run java:docker:prod
- name: Modify /etc/hosts
run: |
echo '127.0.0.1 keycloak' | sudo tee -a /etc/hosts
cat /etc/hosts
- name: Launch backend application
run: npm run app:up
- name: Wait for backend to start
run: npm run ci:server:await
- name: Launch ionic e2e test
id: e2e
if: ${{ matrix.e2e == 1 }}
uses: cypress-io/github-action@v6
with:
browser: chrome
command: npm run e2e:ci
working-directory: ${{ github.workspace }}/ionic4j
- name: 'E2E: Store failure screenshots'
uses: actions/upload-artifact@v3
if: always() && steps.e2e.outcome == 'failure'
with:
name: screenshots-${{ matrix.jdl }}
path: ${{ github.workspace }}/ionic4j/cypress/screenshots
- name: 'E2E: Store failure videos'
uses: actions/upload-artifact@v3
if: always() && steps.e2e.outcome == 'failure'
with:
name: videos-${{ matrix.jdl }}
path: ${{ github.workspace }}/ionic4j/cypress/videos
- name: Dump docker logs on failure
if: failure()
uses: jwalton/gh-docker-logs@v2