Setting up github workflows for the project.

Signed-off-by: Cliff Hill <xlorep@darkhelm.org>
This commit is contained in:
2025-10-08 21:29:14 -04:00
parent 70cb72cf74
commit 97eb9966c1
4 changed files with 86 additions and 0 deletions
+3
View File
@@ -0,0 +1,3 @@
# CODEOWNERS file to enable PR review requirements (can be enabled in repo settings)
# Uncomment the next line to require 2 reviewers for all code changes:
# * @your-org/reviewers-team
+15
View File
@@ -0,0 +1,15 @@
## Pull Request
- [ ] This PR is from a feature branch (not main)
- [ ] All Nox checks pass (CI will verify)
- [ ] I have added/updated tests as needed
- [ ] I have updated documentation as needed
### Description
<!-- Please describe your changes and link any related issues. -->
### Checklist
- [ ] Ready for review
- [ ] Follows code style and guidelines
+33
View File
@@ -0,0 +1,33 @@
name: Build and Push Docker Images (Staging)
on:
push:
branches: [main]
jobs:
build-and-push:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Log in to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Build and push backend image
uses: docker/build-push-action@v5
with:
context: ./backend
file: ./backend/Dockerfile
push: true
tags: ghcr.io/${{ github.repository }}/backend:staging
- name: Build and push frontend image
uses: docker/build-push-action@v5
with:
context: ./frontend
file: ./frontend/Dockerfile
push: true
tags: ghcr.io/${{ github.repository }}/frontend:staging
+35
View File
@@ -0,0 +1,35 @@
name: Nox CI
on:
pull_request:
branches: [main]
push:
branches: [main]
jobs:
nox:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.11"
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: "20"
- name: Install system dependencies
run: |
sudo apt-get update
sudo apt-get install -y libpq-dev
- name: Install pipx
run: python -m pip install --user pipx && python -m pipx ensurepath
- name: Install Nox
run: pipx install nox
- name: Install Poetry
run: pipx install poetry
- name: Install Yarn
run: npm install -g yarn
- name: Run Nox (all checks)
run: nox