feat(auth): Take Over bl-web and bl-admin Authentication #835
Workflow file for this run
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
name: CI | |
on: | |
pull_request: | |
push: | |
branches: [main, develop] | |
workflow_dispatch: | |
jobs: | |
install: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: "20" | |
cache: "yarn" | |
- name: Install dependencies | |
run: yarn install --frozen-lockfile | |
- name: Cache install | |
uses: actions/cache@v4 | |
with: | |
path: ./node_modules/ | |
key: ${{ github.sha }}-install | |
- name: Cache Cypress | |
uses: actions/cache@v4 | |
with: | |
path: ~/.cache/Cypress/ | |
key: ${{ github.sha }}-cypress | |
code_style: | |
runs-on: ubuntu-latest | |
needs: install | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Retrive install cache | |
uses: actions/cache@v4 | |
with: | |
path: ./node_modules/ | |
key: ${{ github.sha }}-install | |
- name: prettier | |
run: yarn prettier:check | |
lint: | |
runs-on: ubuntu-latest | |
needs: install | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Retrive install cache | |
uses: actions/cache@v4 | |
with: | |
path: ./node_modules/ | |
key: ${{ github.sha }}-install | |
- name: eslint | |
run: yarn lint | |
# setup_backend: | |
# runs-on: ubuntu-latest | |
# steps: | |
# - uses: actions/checkout@v4 | |
# with: | |
# path: "./bl-api" | |
# repository: boklisten/bl-api | |
# - name: Compile | |
# run: | | |
# cd bl-api | |
# yarn install --frozen-lockfile | |
# yarn build | |
# - name: Cache backend | |
# uses: actions/cache@v4 | |
# with: | |
# path: ./bl-api/ | |
# key: ${{ github.sha }}-backend | |
build: | |
runs-on: ubuntu-latest | |
needs: [install] #, setup_backend] | |
steps: | |
- uses: actions/checkout@v4 | |
- name: Retrive Install Cache | |
uses: actions/cache@v4 | |
with: | |
path: ./node_modules/ | |
key: ${{ github.sha }}-install | |
- name: Retrive Next cache | |
uses: actions/cache@v4 | |
with: | |
path: ${{ github.workspace }}/.next/cache | |
# Generate a new cache whenever packages or source files change. | |
key: ${{ runner.os }}-nextjs-${{ hashFiles('**/yarn.lock') }}-${{ hashFiles('**.[jt]s', '**.[jt]sx') }} | |
# If source files changed but packages didn't, rebuild from a prior cache. | |
restore-keys: | | |
${{ runner.os }}-nextjs-${{ hashFiles('**/yarn.lock') }}- | |
# - name: Retrive backend cache | |
# uses: actions/cache@v4 | |
# with: | |
# path: ./bl-api/ | |
# key: ${{ github.sha }}-backend | |
# - name: Start MongoDB | |
# uses: supercharge/[email protected] | |
# with: | |
# mongodb-version: "7.0" | |
# - name: Start backend | |
# run: | | |
# cd bl-api | |
# yarn load_fixtures | |
# yarn serve & | |
# env: | |
# PORT: 1337 | |
# BLAPI_HOST: localhost | |
# BLAPI_PORT: 1337 | |
# MONGODB_URI: mongodb://localhost:27017/test | |
# SERVER_PATH: / | |
# NODE_ENV: dev | |
# LOG_LEVEL: silly | |
# URI_WHITELIST: localhost:3000 http://localhost:3000 | |
# ACCESS_TOKEN_SECRET: not_secret_at_all | |
# BL_API_URI: http://localhost:1337/ | |
# CLIENT_URI: http://localhost:3000/ | |
# REFRESH_TOKEN_SECRET: not_the_prod_secret | |
# DIBS_CHECKOUT_KEY: ${{ secrets.DIBS_CHECKOUT_KEY }} | |
# DIBS_SECRET_KEY: ${{ secrets.DIBS_CHECKOUT_SECRET }} | |
# DIBS_URI: https://test.api.dibspayment.eu/v1/ | |
# FACEBOOK_CLIENT_ID: 123 | |
# FACEBOOK_SECRET: 123 | |
# FEIDE_AUTHORIZATION_URL: https://auth.dataporten.no/oauth/authorization | |
# FEIDE_CLIENT_ID: yello | |
# FEIDE_SECRET: foo | |
# FEIDE_TOKEN_URL: https://auth.dataporten.no/oauth/token | |
# FEIDE_USER_INFO_URL: https://auth.dataporten.no/userinfo | |
# GOOGLE_CLIENT_ID: totally_legit | |
# GOOGLE_SECRET: nope | |
# SENDGRID_API_KEY: foo | |
# TWILIO_SMS_AUTH_TOKEN: foo | |
# TWILIO_SMS_SID: ACfoo | |
# TWILIO_STATUS_CALLBACK_URL: foo | |
# BRING_API_KEY: ${{ secrets.BRING_API_KEY }} | |
# BRING_API_ID: ${{ secrets.BRING_API_ID }} | |
- name: Build | |
run: yarn build | |
env: | |
NEXT_PUBLIC_API_URL: https://staging.api.boklisten.no/ | |
NEXT_PUBLIC_BL_WEB_URL: https://staging.boklisten.no/ | |
NEXT_PUBLIC_BL_ADMIN_URL: https://staging.bladmin.boklisten.no/ | |
- name: Cache build | |
uses: actions/cache@v4 | |
with: | |
path: ./.next/ | |
key: ${{ github.sha }}-build | |
# tests: | |
# runs-on: ubuntu-latest | |
# needs: [build] | |
# strategy: | |
# fail-fast: false | |
# matrix: | |
# containers: [1, 2, 3, 4] | |
# steps: | |
# - uses: actions/checkout@v4 | |
# - name: Retrive install cache | |
# uses: actions/cache@v4 | |
# with: | |
# path: ./node_modules/ | |
# key: ${{ github.sha }}-install | |
# - name: Retrive Cypress cache | |
# uses: actions/cache@v4 | |
# with: | |
# path: ~/.cache/Cypress/ | |
# key: ${{ github.sha }}-cypress | |
# - name: Retrive build cache | |
# uses: actions/cache@v4 | |
# with: | |
# path: ./.next/ | |
# key: ${{ github.sha }}-build | |
# - name: Retrive backend cache | |
# uses: actions/cache@v4 | |
# with: | |
# path: ./bl-api/ | |
# key: ${{ github.sha }}-backend | |
# - name: Start MongoDB | |
# uses: supercharge/[email protected] | |
# with: | |
# mongodb-version: "4.4" | |
# - name: Start backend | |
# run: | | |
# cd bl-api | |
# yarn load_fixtures | |
# yarn serve & | |
# env: | |
# PORT: 1337 | |
# BLAPI_HOST: localhost | |
# BLAPI_PORT: 1337 | |
# MONGODB_URI: mongodb://localhost:27017/test | |
# SERVER_PATH: / | |
# NODE_ENV: dev | |
# LOG_LEVEL: silly | |
# URI_WHITELIST: localhost:3000 http://localhost:3000 | |
# ACCESS_TOKEN_SECRET: not_secret_at_all | |
# BL_API_URI: http://localhost:1337/ | |
# CLIENT_URI: http://localhost:3000/ | |
# REFRESH_TOKEN_SECRET: not_the_prod_secret | |
# DIBS_CHECKOUT_KEY: ${{ secrets.DIBS_CHECKOUT_KEY }} | |
# DIBS_SECRET_KEY: ${{ secrets.DIBS_CHECKOUT_SECRET }} | |
# DIBS_URI: https://test.api.dibspayment.eu/v1/ | |
# FACEBOOK_CLIENT_ID: 123 | |
# FACEBOOK_SECRET: 123 | |
# FEIDE_AUTHORIZATION_URL: https://auth.dataporten.no/oauth/authorization | |
# FEIDE_CLIENT_ID: yello | |
# FEIDE_SECRET: foo | |
# FEIDE_TOKEN_URL: https://auth.dataporten.no/oauth/token | |
# FEIDE_USER_INFO_URL: https://auth.dataporten.no/userinfo | |
# GOOGLE_CLIENT_ID: totally_legit | |
# GOOGLE_SECRET: nope | |
# SENDGRID_API_KEY: foo | |
# TWILIO_SMS_AUTH_TOKEN: foo | |
# TWILIO_SMS_SID: ACfoo | |
# TWILIO_STATUS_CALLBACK_URL: foo | |
# BRING_API_KEY: ${{ secrets.BRING_API_KEY }} | |
# BRING_API_ID: ${{ secrets.BRING_API_ID }} | |
# - name: Cypress run | |
# uses: cypress-io/[email protected] | |
# with: | |
# install: false | |
# start: yarn serve | |
# record: true | |
# parallel: true | |
# group: "UI - Electron" | |
# env: | |
# CYPRESS_RECORD_KEY: ${{ secrets.CYPRESS_RECORD_KEY }} | |
# BRING_API_KEY: ${{ secrets.BRING_API_KEY }} | |
# BRING_API_ID: ${{ secrets.BRING_API_ID }} |