hintergrund #67
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
on: | |
- push | |
jobs: | |
app-backend: | |
env: | |
REGISTRY: ghcr.io | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
working-directory: ./app | |
steps: | |
- name: Log in to the Container registry | |
uses: docker/login-action@65b78e6e13532edd9afa3aa52ac7964289d1a9c1 | |
with: | |
registry: ${{ env.REGISTRY }} | |
username: ${{ github.actor }} | |
password: ${{ secrets.GITHUB_TOKEN }} | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install JDK17 | |
uses: actions/setup-java@v3 | |
with: | |
distribution: "temurin" # See 'Supported distributions' for available options | |
java-version: "17" | |
- run: ./gradlew build | |
- run: ./gradlew -Ppubly_docker_username=${{ github.actor }} -Ppubly_docker_secret=${{ secrets.GITHUB_TOKEN }} :publy-backend:bootBuildImage --publishImage | |
app-frontend: | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
working-directory: ./app/publy-frontend | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 16 | |
- uses: pnpm/[email protected] | |
name: Install pnpm | |
id: pnpm-install | |
with: | |
version: 7 | |
run_install: false | |
- name: Install dependencies | |
run: pnpm install | |
- name: Run Codegen | |
run: pnpm run codegen | |
- name: Check Prettier | |
run: pnpm run prettier:check | |
- name: Build application | |
run: pnpm build | |
ws-backend: | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
working-directory: ./workspace | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install JDK17 | |
uses: actions/setup-java@v3 | |
with: | |
distribution: "temurin" # See 'Supported distributions' for available options | |
java-version: "17" | |
- run: ./gradlew clean build -x :hello-graphql-java:test | |
ws-backend-steps: | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
working-directory: ./workspace | |
strategy: | |
matrix: | |
backend_step: | |
- "00_initial" | |
- "01_schema" | |
- "10_handler-function" | |
- "15_schema-mapping" | |
- "17_mutations" | |
- "18_subscriptions" | |
- "20_dataloader" | |
- "25_batchmapping" | |
- "30_error_handling" | |
- "40_security" | |
- "50_test" | |
- "70_complete" | |
fail-fast: false | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install JDK17 | |
uses: actions/setup-java@v3 | |
with: | |
distribution: "temurin" # See 'Supported distributions' for available options | |
java-version: "17" | |
- name: Copy Backend Step ${{ matrix.backend_step }} | |
run: | | |
cp -r ./steps/${{ matrix.backend_step }}/src/ ./publy-backend | |
- name: Build step | |
run: ./gradlew clean build -x :hello-graphql-java:test | |
ws-frontend: | |
runs-on: ubuntu-latest | |
defaults: | |
run: | |
working-directory: ./workspace/publy-frontend | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 16 | |
- uses: pnpm/[email protected] | |
name: Install pnpm | |
id: pnpm-install | |
with: | |
version: 7 | |
run_install: false | |
- name: Install dependencies | |
run: pnpm install | |
- name: Run Codegen | |
run: pnpm run codegen | |
- name: Check Prettier | |
run: pnpm run prettier:check | |
- name: Build application | |
run: pnpm build | |
ws-frontend-steps: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
frontend_step: | |
- "01_initial_uebungen" | |
- "10_useQuery" | |
- "15_useQuery-fetchMore" | |
- "20_useMutation" | |
- "30_useQuery_subscribeToMore" | |
- "80_complete" | |
defaults: | |
run: | |
working-directory: ./workspace/publy-frontend | |
steps: | |
- name: Checkout | |
uses: actions/checkout@v3 | |
- name: Install Node.js | |
uses: actions/setup-node@v3 | |
with: | |
node-version: 16 | |
- uses: pnpm/[email protected] | |
name: Install pnpm | |
id: pnpm-install | |
with: | |
version: 7 | |
run_install: false | |
- name: Copy Backend Step | |
run: | | |
rm -rf ../publy-backend/src | |
cp -r ../steps/90_app/src/ ../publy-backend | |
- name: Copy Frontend Step ${{ matrix.frontend_step }} | |
run: | | |
rm -rf src | |
cp -r ../steps-frontend/${{ matrix.frontend_step }}/src/ . | |
- name: Install dependencies | |
run: pnpm install | |
- name: Run Codegen | |
run: pnpm run codegen | |
- name: Check Prettier | |
run: pnpm run prettier:check | |
- name: Build application | |
run: pnpm build |