Implement account management API for adding OAuth account #4462 #11032
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: | |
push: | |
branches: | |
- '*' | |
- '!gh-pages' | |
tags: | |
- '*' | |
pull_request: | |
branches: | |
- '*' | |
- '!gh-pages' | |
jobs: | |
authui-test: | |
if: ${{ github.repository != 'oursky/authgear-server' }} | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version-file: "./.tool-versions" | |
- run: npm ci | |
working-directory: ./authui | |
- run: npm audit | |
working-directory: ./authui | |
if: ${{ !cancelled() }} | |
- run: npm run typecheck | |
working-directory: ./authui | |
if: ${{ !cancelled() }} | |
- run: npm run eslint | |
working-directory: ./authui | |
if: ${{ !cancelled() }} | |
- run: npm run stylelint | |
working-directory: ./authui | |
if: ${{ !cancelled() }} | |
- run: npm run prettier | |
working-directory: ./authui | |
if: ${{ !cancelled() }} | |
- run: npm run build | |
working-directory: ./authui | |
if: ${{ !cancelled() }} | |
portal-test: | |
if: ${{ github.repository != 'oursky/authgear-server' }} | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/libvips | |
- uses: actions/setup-node@v4 | |
with: | |
node-version-file: "./.tool-versions" | |
- run: npm ci | |
working-directory: ./portal | |
- run: npm audit | |
working-directory: ./portal | |
if: ${{ !cancelled() }} | |
- run: npm run typecheck | |
working-directory: ./portal | |
if: ${{ !cancelled() }} | |
- run: npm run eslint | |
working-directory: ./portal | |
if: ${{ !cancelled() }} | |
- run: npm run stylelint | |
working-directory: ./portal | |
if: ${{ !cancelled() }} | |
- run: npm run fmt | |
working-directory: ./portal | |
if: ${{ !cancelled() }} | |
- run: npm run test | |
working-directory: ./portal | |
if: ${{ !cancelled() }} | |
- run: npm run gentype | |
working-directory: ./portal | |
if: ${{ !cancelled() }} | |
- run: make check-tidy | |
working-directory: ./portal | |
if: ${{ !cancelled() }} | |
- run: npm run build | |
working-directory: ./portal | |
if: ${{ !cancelled() }} | |
portal-image: | |
if: ${{ github.repository != 'oursky/authgear-server' }} | |
runs-on: ubuntu-22.04 | |
needs: portal-test | |
env: | |
TARGET: portal | |
IMAGE_NAME: authgear-portal | |
steps: | |
- uses: actions/checkout@v4 | |
- run: make build-image TARGET=$TARGET IMAGE_NAME=$IMAGE_NAME | |
- run: make tag-image IMAGE_NAME=$IMAGE_NAME | |
- name: docker login | |
if: ${{ github.repository == 'authgear/authgear-server' && github.event_name == 'push' }} | |
env: | |
DOCKER_USERNAME: ${{ secrets.QUAY_USERNAME }} | |
DOCKER_PASSWORD: ${{ secrets.QUAY_ROBOT_TOKEN }} | |
run: | | |
printf "$DOCKER_PASSWORD" | docker login --password-stdin --username "$DOCKER_USERNAME" quay.io | |
- run: make push-image IMAGE_NAME=$IMAGE_NAME | |
if: ${{ github.repository == 'authgear/authgear-server' && github.event_name == 'push' }} | |
- name: docker logout | |
if: ${{ always() }} | |
run: | | |
docker logout quay.io | |
authgear-test: | |
if: ${{ github.repository != 'oursky/authgear-server' }} | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/libvips | |
- uses: actions/setup-go@v4 | |
with: | |
go-version-file: "./go.mod" | |
- uses: actions/setup-node@v4 | |
with: | |
node-version-file: "./.tool-versions" | |
- run: make vendor | |
- run: make check-dockerignore | |
if: ${{ !cancelled() }} | |
- run: make govulncheck | |
if: ${{ !cancelled() }} | |
# We cannot enable this until we move to mjml@5 | |
# https://github.com/mjmlio/mjml/issues/2589 | |
#- run: npm audit | |
# working-directory: ./scripts/npm | |
# if: ${{ !cancelled() }} | |
- run: make ensure-important-modules-up-to-date | |
if: ${{ !cancelled() }} | |
- run: make lint | |
if: ${{ !cancelled() }} | |
- run: make test | |
if: ${{ !cancelled() }} | |
- run: make fmt | |
if: ${{ !cancelled() }} | |
- run: make check-tidy | |
if: ${{ !cancelled() }} | |
authgear-e2e: | |
if: ${{ github.repository != 'oursky/authgear-server' }} | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/libvips | |
- uses: actions/setup-go@v4 | |
with: | |
go-version-file: "./go.mod" | |
- run: make vendor | |
# Cache docker images | |
- run: mkdir -p ~/.cache/images | |
- id: cache-docker-images | |
uses: actions/cache@v3 | |
with: | |
path: ~/.cache/images | |
key: ${{ runner.os }}-e2e-docker-images | |
continue-on-error: true | |
env: | |
SEGMENT_DOWNLOAD_TIMEOUT_MINS: 5 | |
- if: ${{ steps.cache-docker-images.outputs.cache-hit == 'true' }} | |
run: | | |
docker load -i ~/.cache/images/db.tar || true | |
docker load -i ~/.cache/images/redis.tar || true | |
- run: make -C e2e run | |
if: ${{ !cancelled() }} | |
env: | |
COMPOSE_INTERACTIVE_NO_CLI: 1 | |
- run: | | |
docker save postgres-pg-partman:latest -o ~/.cache/images/db.tar | |
docker save redis:6.2.6 -o ~/.cache/images/redis.tar | |
authgear-image: | |
if: ${{ github.repository != 'oursky/authgear-server' }} | |
runs-on: ubuntu-22.04 | |
needs: ["authgear-test", "authui-test"] | |
env: | |
TARGET: authgear | |
IMAGE_NAME: authgear-server | |
steps: | |
- uses: actions/checkout@v4 | |
- run: make build-image TARGET=$TARGET IMAGE_NAME=$IMAGE_NAME | |
- run: make tag-image IMAGE_NAME=$IMAGE_NAME | |
- name: docker login | |
if: ${{ github.repository == 'authgear/authgear-server' && github.event_name == 'push' }} | |
env: | |
DOCKER_USERNAME: ${{ secrets.QUAY_USERNAME }} | |
DOCKER_PASSWORD: ${{ secrets.QUAY_ROBOT_TOKEN }} | |
run: | | |
printf "$DOCKER_PASSWORD" | docker login --password-stdin --username "$DOCKER_USERNAME" quay.io | |
- run: make push-image IMAGE_NAME=$IMAGE_NAME | |
if: ${{ github.repository == 'authgear/authgear-server' && github.event_name == 'push' }} | |
- name: docker logout | |
if: ${{ always() }} | |
run: | | |
docker logout quay.io | |
release: | |
if: ${{ github.repository != 'oursky/authgear-server' }} | |
runs-on: ubuntu-22.04 | |
needs: ["portal-test", "authgear-test"] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: ./.github/actions/libvips | |
- uses: actions/setup-go@v4 | |
with: | |
go-version-file: "./go.mod" | |
- uses: actions/setup-node@v4 | |
with: | |
node-version-file: "./.tool-versions" | |
- run: make vendor | |
- run: make binary | |
- uses: oursky/action-gh-release@v2 | |
if: ${{ github.repository == 'authgear/authgear-server' && startsWith(github.ref, 'refs/tags/') && !startsWith(github.ref, 'refs/tags/staging-') }} | |
with: | |
draft: true | |
files: | | |
./dist/* |