Skip to content

Commit 2004b48

Browse files
committed
Initial Import
1 parent 00b12fd commit 2004b48

20 files changed

Lines changed: 1433 additions & 0 deletions

.github/CODEOWNERS

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Default owners for everything in the repo
2+
* @Graphras-com
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
---
2+
name: Bug Report
3+
about: Report a bug or unexpected behavior
4+
title: "[Bug] "
5+
labels: bug
6+
---
7+
8+
## Describe the bug
9+
10+
<!-- A clear and concise description of what the bug is. -->
11+
12+
## Steps to reproduce
13+
14+
1.
15+
2.
16+
3.
17+
18+
## Expected behavior
19+
20+
<!-- What you expected to happen. -->
21+
22+
## Actual behavior
23+
24+
<!-- What actually happened. Include error messages or logs if available. -->
25+
26+
## Environment
27+
28+
- OS:
29+
- Python version:
30+
- Docker version (if applicable):
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
---
2+
name: Feature Request
3+
about: Suggest a new feature or improvement
4+
title: "[Feature] "
5+
labels: enhancement
6+
---
7+
8+
## Problem
9+
10+
<!-- What problem does this feature solve? -->
11+
12+
## Proposed solution
13+
14+
<!-- Describe the solution you'd like. -->
15+
16+
## Alternatives considered
17+
18+
<!-- Any alternative solutions or features you've considered. -->
19+
20+
## Additional context
21+
22+
<!-- Any other context, screenshots, or references. -->

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
## What
2+
3+
<!-- Brief description of the change -->
4+
5+
## Why
6+
7+
<!-- Motivation / issue link -->
8+
9+
## How
10+
11+
<!-- Implementation approach, if not obvious -->
12+
13+
## Checklist
14+
15+
- [ ] Tests pass locally (`pytest`)
16+
- [ ] Linting passes (`ruff check . && ruff format --check .`)
17+
- [ ] No new secrets or credentials committed
18+
- [ ] Documentation updated (if applicable)

.github/SECURITY.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
# Security Policy
2+
3+
## Supported Versions
4+
5+
| Version | Supported |
6+
| ------- | ------------------ |
7+
| latest | :white_check_mark: |
8+
9+
## Reporting a Vulnerability
10+
11+
If you discover a security vulnerability, please report it responsibly.
12+
13+
**Do not open a public issue.**
14+
15+
Instead, please email security concerns to the repository maintainers via the
16+
contact information on the [Graphras-com](https://github.com/Graphras-com)
17+
organization profile.
18+
19+
We will acknowledge receipt within 48 hours and aim to provide a fix or
20+
mitigation within 7 days for critical issues.

.github/dependabot.yml

Lines changed: 57 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: github-actions
4+
directory: "/"
5+
schedule:
6+
interval: weekly
7+
day: monday
8+
time: "06:00"
9+
timezone: UTC
10+
commit-message:
11+
prefix: chore(actions)
12+
labels:
13+
- dependencies
14+
- github-actions
15+
open-pull-requests-limit: 10
16+
17+
- package-ecosystem: pip
18+
directory: "/"
19+
schedule:
20+
interval: weekly
21+
day: monday
22+
time: "06:00"
23+
timezone: UTC
24+
commit-message:
25+
prefix: chore(pip)
26+
labels:
27+
- dependencies
28+
- python
29+
open-pull-requests-limit: 10
30+
31+
- package-ecosystem: npm
32+
directory: "/frontend"
33+
schedule:
34+
interval: weekly
35+
day: monday
36+
time: "06:00"
37+
timezone: UTC
38+
commit-message:
39+
prefix: chore(npm)
40+
labels:
41+
- dependencies
42+
- javascript
43+
open-pull-requests-limit: 10
44+
45+
- package-ecosystem: docker
46+
directory: "/"
47+
schedule:
48+
interval: weekly
49+
day: monday
50+
time: "06:00"
51+
timezone: UTC
52+
commit-message:
53+
prefix: chore(docker)
54+
labels:
55+
- dependencies
56+
- docker
57+
open-pull-requests-limit: 5

.github/workflows/README.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
# Workflows
2+
3+
This directory contains reusable and orchestrated GitHub Actions workflows for this repository.
4+
5+
For template usage, configuration variables, and onboarding steps, see:
6+
7+
- [`TEMPLATE_WORKFLOWS.md`](../../TEMPLATE_WORKFLOWS.md)
Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
name: Build and Push Docker Image
2+
3+
on:
4+
workflow_call:
5+
inputs:
6+
push-image:
7+
description: Push image to registry.
8+
required: false
9+
type: boolean
10+
default: false
11+
environment:
12+
description: GitHub Actions environment to pull variables from (e.g. staging, production).
13+
required: false
14+
type: string
15+
default: ""
16+
17+
env:
18+
REGISTRY: ghcr.io
19+
IMAGE_NAME: ${{ github.repository }}
20+
21+
jobs:
22+
build-and-push:
23+
runs-on: ubuntu-latest
24+
environment: ${{ inputs.environment || null }}
25+
26+
steps:
27+
- name: Checkout repository
28+
uses: actions/checkout@v6
29+
30+
- name: Set up Docker Buildx
31+
uses: docker/setup-buildx-action@v3
32+
33+
- name: Set up QEMU
34+
uses: docker/setup-qemu-action@v4
35+
36+
- name: Log in to GitHub Container Registry
37+
if: ${{ inputs.push-image }}
38+
uses: docker/login-action@v3
39+
with:
40+
registry: ${{ env.REGISTRY }}
41+
username: ${{ github.actor }}
42+
password: ${{ secrets.GITHUB_TOKEN }}
43+
44+
- name: Extract metadata (tags, labels)
45+
id: meta
46+
uses: docker/metadata-action@v5
47+
with:
48+
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
49+
tags: |
50+
type=ref,event=branch
51+
type=raw,value=staging,enable={{is_default_branch}}
52+
type=semver,pattern={{version}}
53+
type=semver,pattern={{major}}.{{minor}}
54+
type=sha
55+
56+
- name: Build and push Docker image
57+
id: push
58+
uses: docker/build-push-action@v6
59+
with:
60+
context: .
61+
push: ${{ inputs.push-image }}
62+
platforms: linux/amd64,linux/arm64
63+
tags: ${{ steps.meta.outputs.tags }}
64+
labels: ${{ steps.meta.outputs.labels }}
65+
cache-from: type=gha
66+
cache-to: type=gha,mode=max
67+
build-args: |
68+
VITE_CLIENT_ID=${{ vars.VITE_CLIENT_ID || '' }}
69+
VITE_TENANT_ID=${{ vars.VITE_TENANT_ID || '' }}
70+
VITE_API_SCOPE=${{ vars.VITE_API_SCOPE || '' }}
71+
VITE_AUTHORITY=${{ vars.VITE_AUTHORITY || '' }}
72+
VITE_BUILD_COMMIT=${{ github.sha }}
73+
VITE_BUILD_TAG=${{ github.ref_type == 'tag' && github.ref_name || '' }}
74+
VITE_BUILD_BRANCH=${{ github.ref_name }}
75+
VITE_BUILD_TIME=${{ github.event.head_commit.timestamp || github.event.repository.updated_at }}

0 commit comments

Comments
 (0)