-
Notifications
You must be signed in to change notification settings - Fork 392
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Introduce Nightly Regression Pipeline (#100)
* Updated tests, dockerfile, and created new nightly workflow. * Enabling manual trigger on branch for testing. * Fixed depends for GLIBC. * Triggering single test. * Trigger on branch. * Moving to bash. * Adding bash. * Running in container. * Adding installer build. * Adding debug. * Adding debug 2. * Moving to Ubuntu 22.04. * Downloading from main's release binary. * Incrementing version. * Building installer and then running integration tests. * Adding execution permissions to cover-agent. * Fixing OpenAI token and cache. * Enabling all tests. * Adding cache and moving to Python version 3.12. * Moving regrassion testing pipeline to nightly. * Adding Docs. Resolves #99 #84 #65 #38
- Loading branch information
1 parent
94d9996
commit 619b023
Showing
9 changed files
with
212 additions
and
65 deletions.
There are no files selected for viewing
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,76 @@ | ||
name: Nightly Integration Tests | ||
|
||
# Define the events that will trigger this workflow | ||
on: | ||
# Schedule the workflow to run nightly at midnight | ||
schedule: | ||
- cron: '0 0 * * *' | ||
# Allow manual triggering of the workflow | ||
workflow_dispatch: | ||
|
||
jobs: | ||
build-executable: | ||
runs-on: ubuntu-22.04 | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: Set up Python | ||
uses: actions/setup-python@v2 | ||
with: | ||
python-version: '3.12' | ||
|
||
# Step to cache Poetry dependencies | ||
- name: Cache Poetry dependencies | ||
uses: actions/cache@v2 | ||
with: | ||
path: | | ||
~/.cache/pypoetry | ||
~/.cache/pip | ||
key: ${{ runner.os }}-poetry-${{ hashFiles('**/poetry.lock') }} | ||
restore-keys: | | ||
${{ runner.os }}-poetry- | ||
- name: Install Dependencies | ||
run: | | ||
pip install poetry wandb | ||
poetry install | ||
- name: Build Executable | ||
run: make installer | ||
- name: Upload Executable | ||
uses: actions/upload-artifact@v2 | ||
with: | ||
name: cover-agent | ||
path: dist/cover-agent* | ||
|
||
run-integration-tests: | ||
needs: build-executable | ||
runs-on: ubuntu-latest | ||
container: | ||
image: docker:latest | ||
options: --privileged # Required for Docker-in-Docker | ||
|
||
env: | ||
OPENAI_API_KEY: ${{ secrets.OPENAI_KEY }} | ||
|
||
steps: | ||
# Step 1: Check out the repository code | ||
- name: Checkout repository | ||
uses: actions/checkout@v2 | ||
|
||
# Step 2: Download the artifact | ||
- name: Download artifact | ||
uses: actions/download-artifact@v2 | ||
with: | ||
name: cover-agent | ||
path: dist/ | ||
|
||
# Step 3: Run integration tests | ||
- name: Run integration tests | ||
run: | | ||
# Set permissions for dist/cover-agent | ||
chmod +x dist/cover-agent | ||
# Install bash | ||
apk add --no-cache bash | ||
# Execute the shell script with bash | ||
bash tests_integration/test_all.sh |
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
# Dockerfile to build installer for Cover Agent | ||
FROM python:3.12 | ||
FROM python:3.12-bullseye | ||
|
||
WORKDIR /app | ||
|
||
|
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
0.1.42 | ||
0.1.43 |
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
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
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
FROM node:18 | ||
|
||
WORKDIR /app | ||
|
||
# Install glibc | ||
RUN apt-get update && \ | ||
apt-get install -y libc6 | ||
|
||
COPY . ./ | ||
|
||
RUN npm install | ||
RUN npm run test:coverage |
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
Oops, something went wrong.