-
Notifications
You must be signed in to change notification settings - Fork 5
Improve distribution of helm chart #835
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
filippomc
wants to merge
15
commits into
develop
Choose a base branch
from
feature/CH-239
base: develop
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
15 commits
Select commit
Hold shift + click to select a range
784c630
Merge pull request #791 from MetaCell/fix/CH-166
filippomc 6f3fc96
CH-170 fix secrets upgrade
filippomc 737d59c
Merge pull request #793 from MetaCell/release/2.4.4
filippomc e1a99b0
chore: cleanup
filippomc 316b987
Upgrade documentation
filippomc 1977332
Merge pull request #834 from MetaCell/release/3.0.0
filippomc 3ed3a35
feat: add comprehensive instructions for Copilot, E2E testing, and de…
filippomc 5d7f2a2
CH-239 Enhance helm deployment with optional metadata arguments
filippomc 40b2a3a
CH-239 test fix
filippomc a69836a
CH-239 fix test pipeline
filippomc a94b168
chore: add oyaml to test requirements
filippomc acf747a
lint: correct formatting issues in multiple files
filippomc 9bc3eaa
Update libraries/models/pyproject.toml
filippomc 9741ff8
Update .github/instructions/tools.instructions.md
filippomc 4da5e4e
#836 CH-239 fix: handle empty image_name in get_image_name function
filippomc File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or 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,23 @@ | ||
| # Cloud Harness | ||
|
|
||
| Cloud Harness provides software infrastructure and tools for neuroscience data computing and analysis in a monorepo. | ||
|
|
||
| ## General concepts | ||
|
|
||
| ### Files content | ||
|
|
||
| - `applications`: Cloud Harness custom server applications go here | ||
| - `client`: Cloud Harness generated client api | ||
| - `deployment`: deployment related scripts and files | ||
| - `deployment-configuration`: deployment customization files | ||
| - `infrastructure`: infrastructure utilities | ||
| - `libraries`: Cloud Harness shared libraries | ||
| - `docs`: developers documentation files | ||
| - `tools`: Cloud Harness CLI and other tools | ||
| - `test`: Cloud Harness test utilities and test code | ||
|
|
||
| Verify which application/components is in scope and read specific prompt instruction before proceeding. | ||
|
|
||
| Check best practices in every instruction file in scope and docs and apply them when writing code or performing code reviews. | ||
| Use reference for any questions regarding project structure, development workflow, and best practices. | ||
| If you have any doubts about where to find information, ask for clarification before proceeding. |
This file contains hidden or 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,23 @@ | ||
| --- | ||
| applyTo: "test/e2e/*" | ||
| --- | ||
| # Neuroglass Research E2E Tests | ||
|
|
||
| ## End-to-end (E2E) Tests | ||
| - **Location**: `test/e2e/*.spec.ts` | ||
| - **Framework**: Jest + Puppeteer (see existing tests for patterns) | ||
|
|
||
| ### Login Flow | ||
| - Tests must handle the 2-step login redirect when `APP_URL` points to the accounts domain. | ||
| - Use `USERNAME` and `PASSWORD` environment variables for credentials. | ||
| - Follow the existing flow: | ||
| - Navigate to `APP_URL` and detect redirect to accounts. | ||
| - Enter username, submit, wait for password field, enter password, submit. | ||
| - Wait for redirect back to the app and confirm route. | ||
|
|
||
| ### Stability Requirements (Mandatory) | ||
| - **Waiting**: Always use Puppeteer explicit waits (`waitForSelector`, `waitForFunction`, `waitForNavigation`) with timeouts. | ||
| - **Selectors**: Rely on stable, custom selectors (see `test/e2e/selectors.ts`). | ||
| - **Do not** depend on UI copy, text content, or fragile DOM structure. | ||
| - **Avoid fixed sleeps** unless there is no deterministic signal; prefer state-based waits. | ||
| - **Resilience**: When possible, guard against flaky overlays (cookie/announcement modals). |
This file contains hidden or 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,74 @@ | ||
| --- | ||
| applyTo: "tools/deployment-cli-tools/* | ||
| --- | ||
| # Neuroglass Project Developer Reference | ||
|
|
||
| ## Environment Setup | ||
|
|
||
| ### Required Environment | ||
| - **Conda Environment Name**: `ch` | ||
| - **Python Version**: 3.12+ | ||
| - **Activation Command**: `conda activate ch` | ||
|
|
||
| ### Package Managers | ||
| - **Frontend**: Yarn (NEVER use npm) | ||
| - **Backend**: pip (within conda environment only) | ||
|
|
||
| ### Pre-requisites Checklist | ||
| - [ ] Conda environment `ch` is activated | ||
| - [ ] Correct directory navigation completed | ||
| - [ ] Appropriate package manager selected (yarn/pip) | ||
|
|
||
| ## Development Workflow | ||
|
|
||
| ### Mandatory Pre-Command Steps | ||
| 1. **ALWAYS** activate conda environment first: `conda activate ch` | ||
| 2. Navigate to the appropriate project directory | ||
| 3. Use yarn for frontend operations, pip for backend operations | ||
|
|
||
| ## Project Structure | ||
|
|
||
| ### Key Scripts | ||
| - `harness-generate` - Generate code | ||
| - `harness-deployment` - Generate deployment files: helm charts, ci/cd files, etc. | ||
| - `harness-application` - Generate application code (e.g., Django apps) | ||
| - `harness-migrate` - Migration helper tool | ||
| - `ch_cli_tools` - Python package for deployment and other tools | ||
| - `tests` - Unit test utilities and test code | ||
|
|
||
|
|
||
| ## Code Style and best practices | ||
|
|
||
| Take the following best practices into account when writing code for the project adn while performing code reviews: | ||
|
|
||
| - Keep architecture lean: avoid unnecessary layers and abstractions. | ||
| - Use utils for stateless pure functions that don't hit external data sources nor the ORM. Utils are horizontal and can be used across the project. | ||
| - Use helpers to organize pieces of business logic; keep them stateless when possible. | ||
| - Use services for business workflows and cross-model coordination. Services are vertical on a single model or a group of related models | ||
| - Keep model logic close to the model when it represents domain rules or invariants. | ||
| - Handle exceptions only at the higher level; let lower layers raise. NEVER catch exceptions in helpers or services unless you are adding context and re-raising. | ||
| - Cover critical logic with unit tests, especially in helpers and services. Use mocks to isolate units under test. | ||
| - Prefer models classes for helpers and services to ensure data validation and clear interfaces. Use typed dicts for structured data that isn't covered by Schema classes. Use plain dicts only to represent real unstructured data. Avoid returning tuples. | ||
|
|
||
|
|
||
| ## Important Constraints | ||
|
|
||
| ### File Creation Rules | ||
| - **NEVER** create new README or documentation files unless explicitly requested | ||
| - Follow existing documentation patterns when updates are needed | ||
|
|
||
| ### Development Server Rules | ||
| - **NEVER** run development servers | ||
| - **ALWAYS** assume servers are running | ||
| - **MUST** ask confirmation before opening browsers | ||
|
|
||
| ### Package Management Rules | ||
| - **Frontend**: ONLY use yarn, NEVER npm | ||
| - **Backend**: ONLY use pip within conda environment | ||
| - **ALWAYS** activate `ch` conda environment before any backend work | ||
|
|
||
| ### CloudHarness Considerations | ||
| - Dependencies may need special handling in development environment | ||
| - Follow established patterns for CloudHarness integration | ||
|
|
||
| --- | ||
This file contains hidden or 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 was deleted.
Oops, something went wrong.
This file contains hidden or 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 |
|---|---|---|
|
|
@@ -34,7 +34,8 @@ steps: | |
| working_directory: . | ||
| commands: | ||
| - bash cloud-harness/install.sh | ||
| - harness-deployment $PATHS -d ${{DOMAIN}} -r ${{REGISTRY}} -rs '${{REGISTRY_SECRET}}' -n ${{NAMESPACE}} --write-env -e $ENV --cache-url '${{IMAGE_CACHE_URL}}' $PARAMS | ||
| - export HELM_META_ARGS="$( [ -n "${{HARNESS_CHART_NAME}}" ] && printf -- "--name %s " "${{HARNESS_CHART_NAME}}"; [ -n "${{HARNESS_CHART_VERSION}}" ] && printf -- "--chart-version %s " "${{HARNESS_CHART_VERSION}}"; [ -n "${{HARNESS_APP_VERSION}}" ] && printf -- "--app-version %s" "${{HARNESS_APP_VERSION}}" )" | ||
|
Collaborator
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. |
||
| - harness-deployment $PATHS -d ${{DOMAIN}} -r ${{REGISTRY}} -rs '${{REGISTRY_SECRET}}' -n ${{NAMESPACE}} --write-env -e $ENV --cache-url '${{IMAGE_CACHE_URL}}' $HELM_META_ARGS $PARAMS | ||
| - cat deployment/.env >> ${{CF_VOLUME_PATH}}/env_vars_to_export | ||
| - cat ${{CF_VOLUME_PATH}}/env_vars_to_export | ||
| prepare_deployment_view: | ||
|
|
||
This file contains hidden or 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
162 changes: 0 additions & 162 deletions
162
deployment-configuration/codefresh-template-stage-onpremise.yaml
This file was deleted.
Oops, something went wrong.
This file contains hidden or 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 hidden or 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.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is a typo on line 42: 'adn' should be 'and'.