Skip to content

Fix: skip bridge UI e2e test and docker build for forked PR #143

Fix: skip bridge UI e2e test and docker build for forked PR

Fix: skip bridge UI e2e test and docker build for forked PR #143

name: Bridge UI Build and Publish
on:
pull_request:
branches:
- main
paths:
- '.github/workflows/bridge-ui-publish.yml'
- 'bridge-ui/**'
- '!bridge-ui/**/*.md'
push:
branches:
- main
paths:
- '.github/workflows/bridge-ui-publish.yml'
- 'bridge-ui/**'
- '!bridge-ui/**/*.md'
jobs:
publish:
if: github.event.pull_request.head.repo.fork == false
# ~1 min saved vs small
runs-on: gha-runner-scale-set-ubuntu-22.04-amd64-med
env:
DOCKERHUB_USERNAME: ${{ secrets.DOCKERHUB_USERNAME }}
DOCKERHUB_TOKEN: ${{ secrets.DOCKERHUB_TOKEN }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Get version from package.json
id: package-version
uses: martinbeentjes/npm-get-version-action@master
with:
path: ./bridge-ui
- name: Set Docker Tag
id: docker-tag
run: echo "DOCKER_TAG=${GITHUB_SHA:0:7}-$(date +%s)-bridge-ui-${{ steps.package-version.outputs.current-version }}" | tee $GITHUB_ENV
- name: Login to Docker Repository
if: ${{ env.DOCKERHUB_USERNAME != '' && env.DOCKERHUB_TOKEN != '' }}
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Docker Image Build and Publish
id: docker-build-publish
uses: docker/build-push-action@v6
with:
context: .
file: ./bridge-ui/Dockerfile
push: ${{ env.DOCKERHUB_USERNAME != '' && env.DOCKERHUB_TOKEN != '' }}
tags: consensys/linea-bridge-ui:${{ env.DOCKER_TAG }}
# Env file dedicated for dev
build-args: |
ENV_FILE=./bridge-ui/.env.production
NEXT_PUBLIC_WALLET_CONNECT_ID=${{ secrets.PUBLIC_WALLET_CONNECT_ID }}
NEXT_PUBLIC_INFURA_ID=${{ secrets.PUBLIC_BRIDGE_UI_INFURA_ID }}
cache-from: type=registry,ref=consensys/linea-bridge-ui:buildcache
cache-to: type=registry,ref=consensys/linea-bridge-ui:buildcache,mode=max
env:
NEXT_PUBLIC_WALLET_CONNECT_ID: ${{ secrets.PUBLIC_WALLET_CONNECT_ID }}
NEXT_PUBLIC_INFURA_ID: ${{ secrets.PUBLIC_BRIDGE_UI_INFURA_ID }}
test-build:
if: github.event.pull_request.head.repo.fork == true
# ~1 min saved vs small
runs-on: gha-runner-scale-set-ubuntu-22.04-amd64-med
name: Test Build Bridge UI
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Get version from package.json
id: package-version
uses: martinbeentjes/npm-get-version-action@master
with:
path: ./bridge-ui
- name: Setup nodejs environment
uses: ./.github/actions/setup-nodejs
with:
node-version: 18.17.0
pnpm-install-options: '--frozen-lockfile --prefer-offline'
- name: Test Build Bridge UI
run: pnpm run -F bridge-ui build;