Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
190 commits
Select commit Hold shift + click to select a range
24f2d3a
Add Senatus Dockerfile and CI
iboshkov Jan 16, 2024
3eddc43
Adding docker-compose
iboshkov Jan 16, 2024
09b25a9
[FTR] Started implementing the theme (waiting for the rest of the the…
Jan 17, 2024
0e8fbad
Create pull_request_template.md
MarioStojcevski Jan 17, 2024
3db2dea
[FTR] Added correct theme, added Roboto font, sample button, will cre…
Jan 18, 2024
9c0cc45
[FTR] Finishing theming, and tested
Jan 18, 2024
e14e29a
COLOS-8: Add a separate .gitignore file for ignoring IDE settings
vergjor Jan 19, 2024
5c304b6
COLOS-8: Add initial application routing
vergjor Jan 19, 2024
eac75ff
COLOS-8: Create a generic layout for the CompetePage to support a cen…
vergjor Jan 19, 2024
029c565
COLOS-8: Capitalize the component names + include CompetePageLayout i…
vergjor Jan 19, 2024
1ee312c
COLOS-8: Add new line at the end of "themeOptions"
vergjor Jan 19, 2024
514e57c
COLOS-8: Added a bottom border to the Header component
vergjor Jan 19, 2024
6d32cc5
COLOS-8: Rename the CompetePageLayout prop values
vergjor Jan 19, 2024
9d8c915
COLOS-8: Update border settings
vergjor Jan 19, 2024
76e74d7
COLOS-8: Replace Button navigation with Tabs and enable routing
vergjor Jan 19, 2024
b8a0065
COLOS-8: Remove unused import from Header.tsx
vergjor Jan 19, 2024
4624f16
COLOS-8: Minor UI updates for the Header component
vergjor Jan 19, 2024
025a74d
Update client/src/App.tsx
vergjor Jan 19, 2024
3de1bad
COLOS-8: Decrease the Header margins
vergjor Jan 19, 2024
c2f958d
COLOS-8: Resolve PR comments
vergjor Jan 19, 2024
7a56a73
COLOS-8: Stretch the Landing page width to full page
vergjor Jan 19, 2024
db05790
COLOS-8: Update Vite version to resolve vulnerability
vergjor Jan 20, 2024
1f50798
COLOS-8: Resolve PR comments
vergjor Jan 20, 2024
b3f0f74
COLOS-8: Remove width and replace vh with % in the HomePage's Grid co…
vergjor Jan 20, 2024
ca33ceb
COLOS-8: Replace 100% with 100vh in the Grid item components
vergjor Jan 21, 2024
4d3726d
COLOS-8 Revert changs from COLOS-5 which are part of a different PR
vergjor Jan 21, 2024
da56c43
Merge pull request #8 from 42dotmk/COLOS-8-setup-general-application-…
vergjor Jan 21, 2024
e5233a4
COLOS-5: Restore PR changes
vergjor Jan 21, 2024
9a4ab83
COLOS-5: Re-import the CSS file
vergjor Jan 21, 2024
918cc4b
[FTR] Adding spacing and font theming, font colors not yet added
Jan 22, 2024
e1f78d2
Merge branch 'development' into COLOS-9-deploy
iboshkov Jan 23, 2024
930bd43
Merge pull request #9 from 42dotmk/COLOS-5-materialui-theme
vergjor Feb 6, 2024
acf331d
Update pull_request_template.md
vergjor Feb 6, 2024
3729d34
Merge pull request #7 from 42dotmk/github-pullrequest-template
vergjor Feb 6, 2024
8d20562
COLOS-15: Setup husky in the root directory
vergjor Feb 6, 2024
126341d
COLOS-15: Add node_modules to project root's .gitignore file
vergjor Feb 6, 2024
83b4bb9
COLOS-12: Initial codegen implementation
Feb 6, 2024
d379fe7
COLOS-15: Create root project README file and add husky setup steps
vergjor Feb 6, 2024
7d235bb
COLOS-15: Fix typo in the "prepareSenatusHusky" script
vergjor Feb 6, 2024
92baf5a
COLOS-15: Setup eslint for colosseum client
vergjor Feb 6, 2024
d38c6ab
COLOS-15: Resolve ESLint issues
vergjor Feb 6, 2024
a136157
COLOS-15: Add import resolver
vergjor Feb 6, 2024
db9acb0
COLOS-15: Resolve ESLint findings
vergjor Feb 6, 2024
357402b
COLOS-15: Update project README
vergjor Feb 6, 2024
4d9d63f
Fixing comments
iboshkov Feb 13, 2024
b463b7b
Re-add CI to branch
iboshkov Feb 13, 2024
b2eb01a
CI passes, removing dev branch
iboshkov Feb 13, 2024
58228b1
Merge remote-tracking branch 'origin/development' into COLOS-12-conne…
Feb 13, 2024
4985612
Merge pull request #10 from 42dotmk/COLOS-9-deploy
iboshkov Feb 13, 2024
7a17a4c
Merge remote-tracking branch 'origin/COLOS-9-deploy' into COLOS-12-co…
Feb 13, 2024
7182a2a
Merge remote-tracking branch 'origin/development' into COLOS-12-conne…
Feb 13, 2024
b23cad4
Clickable logo
iboshkov Feb 13, 2024
ae2033a
Merge branch 'development' into COLOS-15-setup-code-linter
vergjor Feb 13, 2024
1a664d2
Merge pull request #13 from 42dotmk/fix/clickable-logo
vergjor Feb 13, 2024
c39a72e
COLOS-15: Fix linting error
vergjor Feb 13, 2024
63768fe
COLOS-15: Setup linting pipeline
vergjor Feb 13, 2024
3d289be
Merge branch 'development' into COLOS-15-setup-code-linter
vergjor Feb 13, 2024
c8f2a65
COLOS-15: Resolve wrong directory format
vergjor Feb 13, 2024
de91f22
COLOS-15: Resolve deprecated github output format
vergjor Feb 13, 2024
1fae02f
COLOS-15: Minor fixes
vergjor Feb 13, 2024
a31cce9
COLOS-15: Minor fixes
vergjor Feb 13, 2024
8f8cfcd
COLOS-15: Minor fixes
vergjor Feb 13, 2024
7964874
COLOS-15: Minor fixes
vergjor Feb 13, 2024
131f0c6
Adding execution models
iboshkov Feb 13, 2024
37c72e3
COLOS-15: Minor fixes
vergjor Feb 13, 2024
073aabd
Adding initial layout skeleton, react markdown
iboshkov Feb 13, 2024
c30dbbd
COLOS-15: Update linting.yml
vergjor Feb 13, 2024
4808fd7
COLOS-15: Update linting.yml
vergjor Feb 13, 2024
bf22eea
Merge remote-tracking branch 'origin/COLOS-12-connect-client-with-sen…
iboshkov Feb 13, 2024
b01c16f
COLOS-15: Rename yaml to yml
vergjor Feb 13, 2024
92164d4
COLOS-15: Skip the .eslintrc.yaml in the linting pipeline diff checking
vergjor Feb 13, 2024
fe9c805
COLOS-15: Skip the .eslintrc.yaml in the linting pipeline diff checking
vergjor Feb 13, 2024
03b0b0e
COLOS-15: Only check the parent directory
vergjor Feb 13, 2024
c81bc3f
COLOS-15: Only check the parent directory
vergjor Feb 13, 2024
69ea79d
COLOS-15: Only check the parent directory
vergjor Feb 13, 2024
7c72f6f
COLOS-15: Wrong dir name fix
vergjor Feb 13, 2024
336895f
Adding problem page, plus backend
iboshkov Feb 13, 2024
bfe3e08
Merge remote-tracking branch 'origin/COLOS-12-connect-client-with-sen…
iboshkov Feb 14, 2024
0768c6e
COLOS-15: Setup CI linting in a separate task
vergjor Feb 18, 2024
89a52b0
Create README.md
gjorgi-krenkov Feb 19, 2024
3087318
COLOS-0: Add License, update README
gjorgi-krenkov Feb 19, 2024
b53d92b
COLOS-0: Update README
Feb 20, 2024
69ac736
Merge pull request #16 from 42dotmk/COLOS-17-problem-page
iboshkov Feb 20, 2024
878c6e1
COLOS-0: Add wiki link
Feb 20, 2024
5fbd20c
Merge pull request #15 from 42dotmk/COLOS-16-model-executions
iboshkov Feb 20, 2024
fa395de
Merge branch 'development' into COLOS-15-setup-code-linter
vergjor Feb 20, 2024
06a4669
COLOS-0: Don't overexpose the wiki
Feb 20, 2024
d56802f
Rename "README.md" to "DOCUMENTATION.md"
vergjor Feb 20, 2024
70d6c91
COLOS-0: Correct Github handles
Feb 20, 2024
fc5ff62
Merge pull request #17 from 42dotmk/COLOS-0-ADD-README
iboshkov Feb 20, 2024
d5a6ac2
Add script
iboshkov Feb 20, 2024
b8975f8
Add clarification
iboshkov Feb 20, 2024
fa321fb
Add some more clarification
iboshkov Feb 20, 2024
8aa2b1e
Merge pull request #14 from 42dotmk/COLOS-15-setup-code-linter
iboshkov Feb 20, 2024
32e06c3
COLOS-18: Update README.md
VasilakiG Feb 20, 2024
505f277
Merge remote-tracking branch 'origin/development' into COLOS-12-conne…
Feb 20, 2024
9ba49f2
Merge branch 'COLOS-12-connect-client-with-senatus' of https://github…
Feb 20, 2024
4fafb67
Merge pull request #12 from 42dotmk/COLOS-12-connect-client-with-senatus
iboshkov Feb 20, 2024
a22f3aa
Merge pull request #19 from 42dotmk/COLOS-18-fix-readme
iboshkov Feb 20, 2024
1011292
Added env example and remove db config for unsupported dbs
Feb 20, 2024
433d506
Merge pull request #20 from 42dotmk/hotfix/db-config-and-env-example-fix
MarioStojcevski Feb 20, 2024
4f06d81
Add frontend CI, split build and push
iboshkov Feb 20, 2024
03080c7
Fix lineendings
iboshkov Feb 20, 2024
b850bb4
Push on dev branch too
iboshkov Feb 20, 2024
5f90179
Fix main branch name
iboshkov Feb 20, 2024
1548458
Fix fix lineendings
iboshkov Feb 20, 2024
3d0326f
Remove dev branch
iboshkov Feb 20, 2024
81bc6e3
Add client to compose
iboshkov Feb 20, 2024
e652058
Re-enable dev branch push
iboshkov Feb 20, 2024
b818b19
Try to fix conditional push
iboshkov Feb 20, 2024
11e0643
Haha
iboshkov Feb 20, 2024
36e9c14
Remove dev branch
iboshkov Feb 20, 2024
16beb0d
fixing typo in ver name
KaltrinI Feb 20, 2024
435ccda
Merge pull request #1 from KaltrinI/fix/typo-fix
KaltrinI Feb 20, 2024
5869c68
Merge pull request #22 from KaltrinI/development
VasilakiG Feb 21, 2024
0ba3ee6
Add rough implementation for executioner
iboshkov Feb 24, 2024
d26c179
Make max prefetched messages configurable
iboshkov Feb 24, 2024
c3f1efa
wow.gif
iboshkov Feb 24, 2024
d21c069
Fix senatus
iboshkov Feb 24, 2024
3ef69a9
COLOS-19: Create a reusable workflow for building and pushing a docke…
vergjor Feb 26, 2024
ed3cf8e
COLOS-19: Update the build.yml to filter the pipeline based on the mo…
vergjor Feb 26, 2024
380fe26
COLOS-19: Add additional on pull request event filter
vergjor Feb 26, 2024
7a99ba1
Adding processing logic to senatus, start script, fixing gcc/g++
iboshkov Feb 27, 2024
3a2dc30
Fix executioner image references
iboshkov Feb 27, 2024
4c793cf
Add Python language support
iboshkov Feb 27, 2024
d393e32
Merge pull request #25 from 42dotmk/COLOS-19-frontend-ci-improvement
vergjor Feb 28, 2024
680550e
Merge pull request #21 from 42dotmk/COLOS-19-frontend-ci
vergjor Feb 28, 2024
eaaa608
Merge branch 'development' into feature/executioner
vergjor Feb 29, 2024
0e06f5d
Update build.yml to trigger on pull requests with changes within the …
vergjor Feb 29, 2024
951db74
Filter the push events as well based on the files changes
vergjor Feb 29, 2024
3da2b34
Keep snapshot of code
iboshkov Feb 29, 2024
510ebac
Improve the CI yaml files
vergjor Feb 29, 2024
2e813be
Make image base url dynamic
iboshkov Feb 29, 2024
f20b05f
Push for dev branch
iboshkov Feb 29, 2024
e9d111e
Merge remote-tracking branch 'origin/feature/executioner' into featur…
iboshkov Feb 29, 2024
b4a4105
Fix build context location
iboshkov Feb 29, 2024
9c0345c
Enable push globally
iboshkov Feb 29, 2024
ffc5999
Add push permissions
iboshkov Feb 29, 2024
eb6809e
Add global permissions
iboshkov Feb 29, 2024
865a0bb
COLOS-10: Setup a generic code editor component
Mar 5, 2024
aea0a19
COLOS-10: Setup a generic language select component
Mar 5, 2024
37ebe4a
COLOS-10: Remove redundant 3rd grid item from PageLayout
Mar 5, 2024
668acca
COLOS-10: Rename Tabs to CompeteTabs
Mar 5, 2024
9790fec
COLOS-10: Setup the Problems page
Mar 5, 2024
e20fce3
COLOS-10: Setup the subtitle color theme
Mar 5, 2024
25e3350
COLOS-10: Remove underline from app logo
Mar 5, 2024
fe32d56
COLOS-10: Fix tooltip issue in Problem page
Mar 5, 2024
b7a1176
Adding execution timeout, Java, C# environments
iboshkov Mar 18, 2024
fbf3296
Add build for new execution environments
iboshkov Mar 18, 2024
38a2b6a
Change method of submit to POST
iboshkov Mar 18, 2024
5393a84
Add passed update to senatus
iboshkov Mar 18, 2024
a550fe7
Adding missing path checks
iboshkov Mar 18, 2024
6e9985d
Adding rust
iboshkov Mar 18, 2024
474a099
Fix mindepth vs maxdepth usage. Adding golang. Adding TypeScript to N…
iboshkov Mar 19, 2024
e9c6230
Adding golang build
iboshkov Mar 19, 2024
e5fcb0d
Fix C#
iboshkov Mar 19, 2024
54f2063
Merge pull request #24 from 42dotmk/feature/executioner
iboshkov Mar 19, 2024
473c6c3
Merge remote-tracking branch 'origin/development' into COLOS-10-setup…
iboshkov Mar 19, 2024
0cd51c7
Fixes after code review session
iboshkov Mar 19, 2024
ef95e42
Merge pull request #29 from 42dotmk/COLOS-10-setup-code-editor-component
iboshkov Mar 19, 2024
c47d509
Adding executioner setup docs
iboshkov Mar 19, 2024
98d8cd4
Merge pull request #31 from 42dotmk/fix/replace-queue-package
iboshkov Mar 21, 2024
5b92eba
Replace MQ Library
iboshkov Mar 21, 2024
733d5c2
Merge pull request #32 from 42dotmk/fix/replace-queue-package
gjorgji-d-cc Mar 21, 2024
ad2894f
Don't requeue on fail
iboshkov Mar 22, 2024
64a41f9
Merge pull request #34 from 42dotmk/fix/disable-requeue
iboshkov Mar 22, 2024
fbdf83f
Expanding setup docs
martin-dinev Mar 25, 2024
f2d5dfc
Add Postgres to compose, fix client build, additional setup docs
martin-dinev Mar 25, 2024
553066e
Refactored queue to use `rabbitmq-client`
iboshkov Mar 25, 2024
b7d41cd
Use strict: false
Mar 28, 2024
1d43655
Pipe stderr for all inputs on compilation error
SlamkovDejan Mar 29, 2024
6a7bb7a
Make testCase not a private field
iboshkov Mar 29, 2024
2226214
Merge branch 'fix/reimplement-queue' of https://github.com/42dotmk/co…
iboshkov Mar 29, 2024
08c3335
Merge branch 'fix/reimplement-queue' of https://github.com/42dotmk/co…
SlamkovDejan Mar 29, 2024
f1ced3b
Fix C# too
iboshkov Mar 29, 2024
c21de07
Fix C# compilation error detection
iboshkov Apr 1, 2024
72325eb
Return null if duration can't be parsed, fail more gracefully
iboshkov Apr 1, 2024
688cb91
Don't crash if execution fails
iboshkov Apr 1, 2024
a06e457
Fix C# build output display
iboshkov Apr 1, 2024
5ab48a1
Add network and memory limits
iboshkov Apr 1, 2024
b7ad56b
Revert package downgrade
iboshkov Apr 2, 2024
30a6067
Merge pull request #35 from 42dotmk/fix/setup-docs
iboshkov Apr 2, 2024
f02668c
set passed attribute of execution to public field
SlamkovDejan Apr 3, 2024
24d726f
Merge pull request #36 from 42dotmk/fix/reimplement-queue
vergjor Jun 28, 2024
5b7f70e
Update the .env.example files
Jul 10, 2024
60b4949
Synchronize the package-lock.json files
Jul 10, 2024
782ea64
Remove the obsolete docker version from the yaml files
Jul 10, 2024
a2b4bf0
Update the passed type in ApiExecutionExecution
Jul 10, 2024
09e20e4
Update the setup file
Jul 10, 2024
edb423c
Merge pull request #41 from 42dotmk/update-project-setup
iboshkov Oct 8, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
15 changes: 15 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
DATABASE_HOST=db
DATABASE_CLIENT=postgres
DATABASE_PORT=5432
DATABASE_NAME=cms
DATABASE_USERNAME=cms
DATABASE_PASSWORD=pass

# General env vars
HOST=
PORT=
APP_KEYS=
API_TOKEN_SALT=
ADMIN_JWT_SECRET=
TRANSFER_TOKEN_SALT=
JWT_SECRET=
11 changes: 11 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
## Issue ID

<!--Add issue link-->

## What has been done?

- [ ]

## Sceenshots/Videos

<!--Add screenshots or videos of the current task-->
62 changes: 62 additions & 0 deletions .github/workflows/build-push-docker-image.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
on:
workflow_call:
inputs:
docker-context:
required: true
type: string

docker-file-path:
required: true
type: string

docker-tags:
required: true
type: string

jobs:
build_image:
if: github.event_name == 'pull_request'
name: Build docker image
runs-on: ubuntu-latest
permissions:
contents: read

steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Build image
uses: docker/build-push-action@3b5e8027fcad23fda98b2e3ac259d8d67585f671
with:
context: ${{ inputs.docker-context }}
file: ${{ inputs.docker-file-path }}
tags: ${{ inputs.docker-tags }}

push_image:
name: Push docker image
if: true
runs-on: ubuntu-latest
permissions:
contents: read
packages: write

steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Login to ghcr.io
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Push production image
uses: docker/build-push-action@3b5e8027fcad23fda98b2e3ac259d8d67585f671
with:
context: ${{ inputs.docker-context }}
file: ${{ inputs.docker-file-path }}
tags: ${{ inputs.docker-tags }}
push: true
168 changes: 168 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,168 @@
name: Colosseum CI pipeline

permissions:
contents: read
packages: write

on:
workflow_dispatch:
pull_request:
types: [opened, synchronize, reopened, closed]
paths:
- 'client/**'
- 'senatus/**'
- 'executioner/**'

concurrency:
group: ${{ github.workflow }}-${{ github.head_ref }}
cancel-in-progress: true

jobs:
find_modified_files:
name: Find modified files
runs-on: ubuntu-latest
outputs:
client: ${{ steps.changes.outputs.client }}
senatus: ${{ steps.changes.outputs.senatus }}
executioner: ${{ steps.changes.outputs.executioner }}
gcc_executioner: ${{ steps.changes.outputs.gcc_executioner }}
node_executioner: ${{ steps.changes.outputs.node_executioner }}
python_executioner: ${{ steps.changes.outputs.python_executioner }}
java_executioner: ${{ steps.changes.outputs.java_executioner }}
csharp_executioner: ${{ steps.changes.outputs.csharp_executioner }}
rust_executioner: ${{ steps.changes.outputs.rust_executioner }}
golang_executioner: ${{ steps.changes.outputs.golang_executioner }}

steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Find modified files
id: changes
uses: dorny/paths-filter@v3.0.1
with:
filters: |
client:
- 'client/**'
senatus:
- 'senatus/**'
executioner:
- 'executioner/**'
gcc_executioner:
- 'executioner/**/gcc/**'
node_executioner:
- 'executioner/**/nodejs/**'
python_executioner:
- 'executioner/**/python/**'
java_executioner:
- 'executioner/**/java/**'
csharp_executioner:
- 'executioner/**/csharp/**'
rust_executioner:
- 'executioner/**/rust/**'
golang_executioner:
- 'executioner/**/golang/**'

senatus:
name: Senatus
needs: find_modified_files
uses: ./.github/workflows/build-push-docker-image.yml
if: needs.find_modified_files.outputs.senatus == 'true'
with:
docker-context: ./
docker-file-path: ./senatus/Dockerfile
docker-tags: ghcr.io/42dotmk/colosseum-senatus:latest

client:
name: Client
needs: find_modified_files
uses: ./.github/workflows/build-push-docker-image.yml
if: needs.find_modified_files.outputs.client == 'true'
with:
docker-context: ./client
docker-file-path: ./client/Dockerfile
docker-tags: ghcr.io/42dotmk/colosseum-client-prod:latest

executioner:
name: Executioner
needs: find_modified_files
uses: ./.github/workflows/build-push-docker-image.yml
if: needs.find_modified_files.outputs.executioner == 'true'
with:
docker-context: ./
docker-file-path: ./executioner/Dockerfile
docker-tags: ghcr.io/42dotmk/colosseum-executioner:latest

gcc_executioner:
name: GCC executioner
needs: find_modified_files
uses: ./.github/workflows/build-push-docker-image.yml
if: needs.find_modified_files.outputs.gcc_executioner == 'true'
with:
docker-context: ./executioner/runtimes/languages/gcc/
docker-file-path: ./executioner/runtimes/languages/gcc/Dockerfile
docker-tags: ghcr.io/42dotmk/colosseum-executioner-gcc:latest

node_executioner:
name: NodeJS executioner
needs: find_modified_files
uses: ./.github/workflows/build-push-docker-image.yml
if: needs.find_modified_files.outputs.node_executioner == 'true'
with:
docker-context: ./executioner/runtimes/languages/nodejs/
docker-file-path: ./executioner/runtimes/languages/nodejs/Dockerfile
docker-tags: ghcr.io/42dotmk/colosseum-executioner-nodejs:latest

python_executioner:
name: Python executioner
needs: find_modified_files
uses: ./.github/workflows/build-push-docker-image.yml
if: needs.find_modified_files.outputs.python_executioner == 'true'
with:
docker-context: ./executioner/runtimes/languages/python/
docker-file-path: ./executioner/runtimes/languages/python/Dockerfile
docker-tags: ghcr.io/42dotmk/colosseum-executioner-python:latest

java_executioner:
name: Java executioner
needs: find_modified_files
uses: ./.github/workflows/build-push-docker-image.yml
if: needs.find_modified_files.outputs.java_executioner == 'true'
with:
docker-context: ./executioner/runtimes/languages/java/
docker-file-path: ./executioner/runtimes/languages/java/Dockerfile
docker-tags: ghcr.io/42dotmk/colosseum-executioner-java:latest

csharp_executioner:
name: C# executioner
needs: find_modified_files
uses: ./.github/workflows/build-push-docker-image.yml
if: needs.find_modified_files.outputs.csharp_executioner == 'true'
with:
docker-context: ./executioner/runtimes/languages/csharp/
docker-file-path: ./executioner/runtimes/languages/csharp/Dockerfile
docker-tags: ghcr.io/42dotmk/colosseum-executioner-csharp:latest

rust_executioner:
name: Rust executioner
needs: find_modified_files
uses: ./.github/workflows/build-push-docker-image.yml
if: needs.find_modified_files.outputs.rust_executioner == 'true'
with:
docker-context: ./executioner/runtimes/languages/rust/
docker-file-path: ./executioner/runtimes/languages/rust/Dockerfile
docker-tags: ghcr.io/42dotmk/colosseum-executioner-rust:latest


golang_executioner:
name: Golang executioner
needs: find_modified_files
uses: ./.github/workflows/build-push-docker-image.yml
if: needs.find_modified_files.outputs.golang_executioner == 'true'
with:
docker-context: ./executioner/runtimes/languages/golang/
docker-file-path: ./executioner/runtimes/languages/golang/Dockerfile
docker-tags: ghcr.io/42dotmk/colosseum-executioner-golang:latest

12 changes: 12 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Editor directories and files
.env
.vscode/*
.vscode/extensions.json
.idea
.DS_Store
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?
node_modules
41 changes: 41 additions & 0 deletions DOCUMENTATION.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Documentation

You can set up husky in 2 ways - automagical, or manual, pick your poision and follow the steps.

## Automagical setup

Run:

`./setup-husky.sh`

It will install husky and set up the pre-commit hooks automagically.

## Manual setup:

## Setup Husky

`npm i -g husky`

> **Notes:**
> - **IMPORTANT**: Make sure the `Git` version is 2.9 or above
> - Currently ESLint and TypeScript checks are enabled for the client, should also setup for caesar and senatus as well

In order to setup the linting checks locally, we must run the following commands (from the root dir):

```bash
# For client (front-end)
npm run prepareClientHusky

# For senatus (back-end)
npm run prepareSenatusHusky
```

After the command executes, there should be a `[directoryName]/.husky` directory, that should also contain pre-generated files for each of the hooks.
Replace the content of the `.husky/_/pre-push` file with the following:

```bash
#!/usr/bin/env sh

npm --prefix [directoryName] run lint
npm --prefix [directoryName] run ts-checks
```
21 changes: 21 additions & 0 deletions LICENSE
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
MIT License

Copyright (c) 2023 42dotmk

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
41 changes: 41 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
# Colosseum: Organize Competitive Programming and Interview Events
Join us every Tuesday at 5:30 PM in Base42 as we embark on the journey of crafting the colossal masterpiece Colosseum, our open-source web solution tailored for organizing competitive programming and interview events.

## Core Applications:

* **Client (Front-end)**: Crafted with React, our frontend provides an intuitive and seamless user experience.
* **Senatus (Back-end)**: Powered by Strapi, our backend handles the core functionalities of our platform.
* **Caesar (Code Execution)**: Currently in the prototyping phase, Caesar will be the engine behind code testing and execution, ensuring accuracy and efficiency.

## Event Details:
* **Date**: Every Tuesday
* **Time**: 5:30 PM
* **Location**: Base42

> Besides app implementation, our community plans to organize competitive programming knowledge-sharing events and many competitions. Drop by if you're interested in participating in these activities!

## Quicklinks
* [Wiki](https://wiki.42.mk/en/projects/colosseum-competitive-programming-engine)
* [Source code](https://github.com/42dotmk/colosseum)
* [Task management board](https://plane.42.mk/colosseum)
* [Front-end DEV URL](https://colosseum.dev)
* [Back-end DEV URL](https://senatus.colosseum.dev/)

## List of Contributors
### Development
* Veronika Gjoreva [@vergjor](https://github.com/vergjor)
* Ilija Boshkov [@iboshkov](https://github.com/iboshkov)
* Mario Stojchevski [@MarioStojcevski](https://github.com/MarioStojcevski)
* Vasilaki Tocili [@VasilakiG](https://github.com/VasilakiG)
* Gjorgi Krenkov [@gjorgi-krenkov](https://github.com/gjorgi-krenkov)

### Design
* Bojana Dimitrova
* Tereza Lozanovska

### Organization
* Martin Dinev [@martin-dinev](https://github.com/martin-dinev)
* Pavlina Buchevska

## License
Colosseum is [MIT Licensed](https://github.com/42dotmk/colosseum/blob/main/LICENSE)
Loading