Skip to content

fix(ci): fix build workflow #80

fix(ci): fix build workflow

fix(ci): fix build workflow #80

Workflow file for this run

name: Build PR
on:
pull_request:
types: [opened, synchronize, reopened, edited]
jobs:
build:
runs-on: ubuntu-latest
container:
image: node:24.14
steps:
- uses: actions/checkout@v6
- name: restore_cache
uses: actions/cache@v5
with:
key: yarn-packages-${{ github.ref_name }}-${{ hashFiles('yarn.lock') }}
path: node_modules/
restore-keys: yarn-packages-${{ github.ref_name }}-
- name: Install Dependencies
run: yarn --frozen-lockfile
- name: Lint the codebase
run: yarn lint
- name: Run tests
run: yarn test --colors --maxWorkers=2
- name: Run build
run: yarn build
harness-docker:
runs-on: ubuntu-latest
container:
image: node:24.14
env:
executor: docker-harness
install_manually: true
steps:
- uses: actions/checkout@v6
- name: Install Python and required packages
run: |
apt-get update
apt-get install -y python3 python3-pip python3-venv
- name: Set up Python virtual environment
run: |
python3 -m venv venv
. venv/bin/activate
pip install --upgrade pip
pip install pipenv gunicorn
pipenv --version # Verify pipenv is installed
gunicorn --version # Verify gunicorn is installed
if: env.install_manually
- run: bash -c 'echo "0.0.0.0 httpbin.org" >> /etc/hosts'
if: env.install_manually
- run: git clone https://github.com/stoplightio/httpbin httpbin
if: env.install_manually
- run: |
cd httpbin
. ../venv/bin/activate
pipenv requirements > requirements.txt
pip3 install --no-cache-dir -r requirements.txt
pip3 install --no-cache-dir ./
if: env.install_manually
- run: |
cd httpbin
. ../venv/bin/activate
gunicorn -b 0.0.0.0:80 httpbin:app -k gevent &
sleep 15 # Wait for the server to start
curl -I http://0.0.0.0:80 # Test server availability
if: env.install_manually
- name: Install Dependencies
run: yarn --frozen-lockfile
- name: Create CLI binary
run: yarn build.binary
- name: Run Harness
run: yarn test.harness