Skip to content

Commit

Permalink
Add initial Opik
Browse files Browse the repository at this point in the history
  • Loading branch information
andrescrz authored and liyaka committed Sep 2, 2024
1 parent cabde4a commit 5ae25e0
Show file tree
Hide file tree
Showing 849 changed files with 106,733 additions and 0 deletions.
3 changes: 3 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
.git
target
node_modules
8 changes: 8 additions & 0 deletions .github/CODEOWNERS
Validating CODEOWNERS rules …
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# This is a comment.
# Each line is a file pattern followed by one or more owners.

# These owners will be the default owners for everything in
# the repo. Unless a later match takes precedence,
# @comet-ml/comet-opik-devs will be requested for
# review when someone opens a pull request.
* @comet-ml/comet-opik-devs # This is an inline comment.
38 changes: 38 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]

**Smartphone (please complete the following information):**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser [e.g. stock browser, safari]
- Version [e.g. 22]

**Additional context**
Add any other context about the problem here.
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
22 changes: 22 additions & 0 deletions .github/ISSUE_TEMPLATE/user_story.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
name: User story
about: A user story for this project
title: ''
labels: ''
assignees: ''

---

**User story.**
As a [user],
I want [functionality]
so that [benefit].

**Details**
A description of this user story.

**Definition of done**
A description of the requirements to consider this user story fully done.

**Documentation**
Add any other context or links about this story.
9 changes: 9 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
## Details

## Issues

Resolves #

## Testing

## Documentation
3 changes: 3 additions & 0 deletions .github/release-drafter.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
template: |
## What’s Changed
$CHANGES
45 changes: 45 additions & 0 deletions .github/workflows/backend_tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: "Backend Tests"
run-name: "Backend Tests on ${{ github.ref_name }} by @${{ github.actor }}"

on:
pull_request:
paths:
- "apps/opik-backend/**"
push:
branches:
- 'main'
paths:
- "apps/opik-backend/**"

workflow_dispatch:

jobs:
run-backend-tests:
runs-on: ubuntu-latest
defaults:
run:
working-directory: apps/opik-backend/
steps:
- name: Checkout
uses: actions/[email protected]
with:
fetch-depth: 1

- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: '21'
distribution: 'corretto'
cache: maven

- name: Run Tests for backend
run: mvn clean test -Dmaven.test.failure.ignore=true

- name: Publish Test Report
uses: mikepenz/action-junit-report@v4
if: success() || failure() # always run even if the previous step fails
with:
report_paths: '**/target/surefire-reports/TEST-*.xml'
fail_on_failure: true
summary: true
detailed_summary: true
70 changes: 70 additions & 0 deletions .github/workflows/build_and_publish_installer.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
name: "Build and Publish Installer"
run-name: "Build Installer ${{ github.ref_name }} by @${{ github.actor }}"

on:
workflow_dispatch:
inputs:
version:
type: string
required: true
description: Version
default: ""
is_release:
type: boolean
required: false
default: false
workflow_call:
inputs:
version:
type: string
required: true
description: Version
default: ""
is_release:
type: boolean
required: false
default: false

push:
branches:
- 'main'
paths:
- "deployment/installer/**"

jobs:
build-and-publish:
runs-on: ubuntu-latest
steps:
- name: Setup
id: setup
run: |
if [[ "${{inputs.version}}" == "" ]]; then
echo "build_from=${{github.ref_name}}" | tee -a $GITHUB_OUTPUT
else
echo "build_from=${{inputs.version}}" | tee -a $GITHUB_OUTPUT
fi
- name: Checkout
uses: actions/[email protected]
with:
ref: ${{steps.setup.outputs.build_from}}
fetch-tags: true

- name: Set up Python 3.9
uses: actions/setup-python@v3
with:
python-version: 3.9

- name: Build pip package
run: |
cd deployment/installer
pip3 install -r pub-requirements.txt
if [[ "${{inputs.version}}" != "" ]]; then export VERSION=${{inputs.version}};fi
python -m build --wheel --outdir dist/ .
- name: Publish package distributions to PyPI
if: inputs.is_release
uses: pypa/[email protected]
with:
password: ${{ secrets.PYPI_API_TOKEN }}
packages-dir: deployment/installer/dist

69 changes: 69 additions & 0 deletions .github/workflows/build_and_publish_sdk.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,69 @@
name: "Build and Publish SDK"
run-name: "Build SDK ${{ github.ref_name }} by @${{ github.actor }}"

on:
workflow_dispatch:
inputs:
version:
type: string
required: true
description: Version
default: ""
is_release:
type: boolean
required: false
default: false
workflow_call:
inputs:
version:
type: string
required: true
description: Version
default: ""
is_release:
type: boolean
required: false
default: false

push:
branches:
- 'main'
paths:
- "sdks/python/**"

jobs:
build-and-publish:
runs-on: ubuntu-latest
steps:
- name: Setup
id: setup
run: |
if [[ "${{inputs.version}}" == "" ]]; then
echo "build_from=${{github.ref_name}}" | tee -a $GITHUB_OUTPUT
else
echo "build_from=${{inputs.version}}" | tee -a $GITHUB_OUTPUT
fi
- name: Checkout
uses: actions/[email protected]
with:
ref: ${{steps.setup.outputs.build_from}}
fetch-tags: true

- name: Set up Python 3.9
uses: actions/setup-python@v3
with:
python-version: 3.9

- name: Build pip package
run: |
cd sdks/python
pip3 install -U pip build
if [[ "${{inputs.version}}" != "" ]]; then export VERSION=${{inputs.version}};fi
python3 -m build --sdist --wheel --outdir dist/ .
- name: Publish package distributions to PyPI
if: inputs.is_release
uses: pypa/[email protected]
with:
password: ${{ secrets.PYPI_API_TOKEN }}
packages-dir: sdks/python/dist
78 changes: 78 additions & 0 deletions .github/workflows/build_and_push_docker.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
name: "Build Docker Images"

on:
workflow_call:
inputs:
image:
type: string
required: true
description: Docker Image
version:
type: string
required: true
description: Version
build_from:
type: string
required: true
description: Original version to build from
default: ""
build_comet_image:
type: boolean
required: true
description: If to build a Comet integration image
default: false
comet_build_args:
type: string
required: false
default: ""
description: Arguments for cloud docker build


env:
DOCKER_REGISTRY: "ghcr.io/comet-ml/opik"

jobs:

build-n-push-image:
runs-on: ubuntu-latest
defaults:
run:
working-directory: apps/${{ inputs.image }}/
steps:
- name: Checkout
uses: actions/[email protected]
with:
ref: ${{inputs.build_from}}

- name: Build Docker Image
run: |
DOCKER_IMAGE_NAME=${{env.DOCKER_REGISTRY}}/${{ inputs.image }}:${{inputs.version}}
echo "DOCKER_IMAGE_NAME=${DOCKER_IMAGE_NAME}" | tee -a $GITHUB_ENV
DOCKER_BUILDKIT=1 docker build --build-arg OPIK_VERSION=${{inputs.version}} -t ${DOCKER_IMAGE_NAME} .
- name: Build Docker Image for Comet integration
if: inputs.build_comet_image
run: |
DOCKER_IMAGE_NAME_COMET=${{env.DOCKER_REGISTRY}}/${{inputs.image}}-comet:${{inputs.version}}
echo "DOCKER_IMAGE_NAME_COMET=${DOCKER_IMAGE_NAME_COMET}" | tee -a $GITHUB_ENV
DOCKER_BUILDKIT=1 docker build --build-arg ${{inputs.comet_build_args}} --build-arg OPIK_VERSION=${{inputs.version}} -t ${DOCKER_IMAGE_NAME_COMET} .
- name: Login to GHCR
uses: docker/login-action@v3
with:
registry: ${{env.DOCKER_REGISTRY}}
username: "github-actions"
password: ${{ secrets.GITHUB_TOKEN }}

- name: Push Docker Image
run: |
docker push ${{env.DOCKER_IMAGE_NAME}}
echo "Docker image pushed: ${{env.DOCKER_IMAGE_NAME}}" >> $GITHUB_STEP_SUMMARY
- name: Push Docker Image for Comet integration
if: inputs.build_comet_image
run: |
docker push ${{env.DOCKER_IMAGE_NAME_COMET}}
echo "Docker image pushed: ${{env.DOCKER_IMAGE_NAME_COMET}}" >> $GITHUB_STEP_SUMMARY
Loading

0 comments on commit 5ae25e0

Please sign in to comment.