Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
38 changes: 24 additions & 14 deletions .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
Expand Up @@ -6,45 +6,55 @@
"workspaceFolder": "/workspace",
"shutdownAction": "stopCompose",
"features": {
"ghcr.io/devcontainers-contrib/features/poetry:2": {},
"ghcr.io/devcontainers-contrib/features/bash-command:1": {
"ghcr.io/devcontainers-extra/features/poetry:2": {},
"ghcr.io/devcontainers-extra/features/bash-command:1": {
"command": "poetry self add poetry-polylith-plugin"
},
"ghcr.io/devcontainers/features/docker-in-docker:2": {},
"ghcr.io/devcontainers-contrib/features/gh-release:1": {
"ghcr.io/devcontainers-extra/features/gh-release:1": {
"repo": "authzed/zed",
"binaryNames": "zed"
},
"ghcr.io/devcontainers-contrib/features/spicedb:1": {},
"ghcr.io/devcontainers-extra/features/spicedb:1": {},
"ghcr.io/devcontainers/features/kubectl-helm-minikube:1": {
"minikube": "none"
},
"ghcr.io/eitsupi/devcontainer-features/jq-likes:2": {
"jqVersion": "latest",
"yqVersion": "latest"
},
"ghcr.io/dhoeric/features/k9s:1": {},
"ghcr.io/dhoeric/features/k9s:1": {
"version": "0.40.9"
},
"ghcr.io/EliiseS/devcontainer-features/bash-profile:1": {
"command": "alias k=kubectl"
},
"ghcr.io/devcontainers-contrib/features/rclone:1": {},
"./k3d": {}
"./k3d": {},
"ghcr.io/devcontainers/features/java:1": {
"version": "21",
"jdkDistro": "open"
},
"./solr": {},
"ghcr.io/devcontainers/features/go:1": {},
"./rclone": {
"rclone_repository": "https://github.com/SwissDataScienceCenter/rclone.git",
"rclone_ref": "v1.70.0+renku-1"
}
},
"overrideFeatureInstallOrder": [
"ghcr.io/devcontainers-contrib/features/poetry",
"ghcr.io/devcontainers-contrib/features/bash-command"
"ghcr.io/devcontainers-extra/features/poetry",
"ghcr.io/devcontainers-extra/features/bash-command"
],
"postCreateCommand": "poetry install --with dev && mkdir -p /home/vscode/.config/k9s",
"customizations": {
"vscode": {
"extensions": [
"charliermarsh.ruff",
"matangover.mypy",
"ms-python.mypy-type-checker",
"ms-python.python",
"ms-python.flake8",
"ms-python.black-formatter",
"ms-python.isort",
"ms-python.vscode-pylance",
"ms-vscode.makefile-tools",
"matangover.mypy"
"ms-vscode.makefile-tools"
]
}
}
Expand Down
34 changes: 26 additions & 8 deletions .devcontainer/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,6 @@
version: '3.8'

services:
data_service:
image: "mcr.microsoft.com/devcontainers/python:3.12-bookworm"
image: "mcr.microsoft.com/devcontainers/python:3.13-bookworm"
volumes:
- ../:/workspace:cached
- .poetry_cache/:/poetry_cache:delegated
Expand All @@ -26,10 +24,13 @@ services:
NB_SERVER_OPTIONS__DEFAULTS_PATH: /workspace/server_defaults.json
NB_SERVER_OPTIONS__UI_CHOICES_PATH: /workspace/server_options.json
KUBECONFIG: "/workspace/.k3d-config.yaml"
SOLR_URL: "http://localhost:8983"
SOLR_CORE: "renku-search-dev"
network_mode: service:db
depends_on:
- db
- authz
- solr

db:
image: postgres:latest
Expand All @@ -43,13 +44,18 @@ services:
POSTGRES_USER: renku
POSTGRES_DB: postgres
POSTGRES_PASSWORD: renku
# All services is put into the network of this service, so
# everything is reachable via localhost. This is necessary,
# because authzed doesn't allow insecure connections from anything
# other than localhost….
ports:
- "8000:8000"
- "5432:5432"
- "8080:8080"
- "5678:5678"
- "50051:50051"
- "8000:8000" # data-service api
- "5432:5432" # postgresql
- "8080:8080" # swagger
- "5678:5678" # python debugger (data_service)
- "50051:50051" # authzed grpc
- "8888:80"
- "8983:8983" # solr

swagger:
image: swaggerapi/swagger-ui
Expand All @@ -70,5 +76,17 @@ services:
command:
- serve

solr:
image: solr:9
restart: unless-stopped
network_mode: service:db
volumes:
- solr_data:/var/solr
command:
- bash
- -c
- 'precreate-core renku-search-dev; exec solr -f -Dsolr.modules=analysis-extras'

volumes:
postgres-data:
solr_data:
29 changes: 29 additions & 0 deletions .devcontainer/rclone/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"id": "rclone",
"version": "1.0.0",
"name": "A feature adding a custom version of rclone",
"postCreateCommand": "rclone --version",
"installsAfter": [
"ghcr.io/devcontainers-contrib/features/bash-command",
"ghcr.io/devcontainers/features/go"
],
"options": {
"rclone_repository": {
"type": "string",
"description": "rclone repository",
"proposals": [
"https://github.com/SwissDataScienceCenter/rclone.git",
"https://github.com/rclone/rclone.git"
],
"default": "https://github.com/rclone/rclone.git"
},
"rclone_ref": {
"type": "string",
"description": "git reference",
"proposals": [
"master"
],
"default": "v1.69.1"
}
}
}
21 changes: 21 additions & 0 deletions .devcontainer/rclone/install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
#!/bin/bash

USERNAME="${_REMOTE_USER}"

set -ex

echo "Downloading rclone sources from ${RCLONE_REPOSITORY}:${RCLONE_REF}"
mkdir -p /tmp/rclone
cd /tmp/rclone
git clone "${RCLONE_REPOSITORY}"
cd rclone
git checkout "${RCLONE_REF}"

echo "Building rclone"
make rclone
cd $HOME
rm -rf /tmp/rclone

# Fix the $GOPATH folder
chown -R "${USERNAME}:golang" /go
chmod -R g+r+w /go
18 changes: 18 additions & 0 deletions .devcontainer/solr/devcontainer-feature.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
{
"name": "solr",
"id": "solr",
"version": "1.0.0",
"description": "A feature adding solr",
"options": {
"solr_version": {
"type": "string",
"description": "solr version to install",
"proposals": ["9.8.0"],
"default": "9.8.0"
}
},
"installsAfter": [
"ghcr.io/devcontainers/features/java",
"ghcr.io/devcontainers-contrib/features/bash-command"
],
}
15 changes: 15 additions & 0 deletions .devcontainer/solr/install.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
#!/bin/sh
set -e

echo "Activation SOLR feature"
download_url="https://archive.apache.org/dist/solr/solr/$SOLR_VERSION/solr-$SOLR_VERSION.tgz"

curl -sSL -o solr.tgz "$download_url"
mkdir -p /opt
tar -C /opt -xzf solr.tgz
ln -snf "/opt/solr-$SOLR_VERSION" /opt/solr
ln -snf /opt/solr/bin/solr /usr/local/bin/solr
mkdir -p /opt/solr/server/logs
chmod 777 /opt/solr/server/logs
chmod 777 /opt/solr/bin
chown -R vscode:vscode "/opt/solr-$SOLR_VERSION"
2 changes: 1 addition & 1 deletion .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1 +1 @@
* @SwissDataScienceCenter/renku-python-maintainers
* @SwissDataScienceCenter/renku-python-maintainers @sgaist @SalimKayal
34 changes: 34 additions & 0 deletions .github/pull_request_template/feature.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
# Release Notes

## Description

<!-- Keep it short within 1 or 2 sentences. -->

## User-Facing Changes

**🌟 New Features**

- 🐸 **Data services**:

**✨ Improvements**

- 🐸 **Data services**:

**🐞 Bug Fixes**

- **Data services**:

## Internal Changes

**Improvements**

- **Data services**:

**Bug Fixes**

- **Data services**:

# Internal/Miscellaneous

<!-- Add a deploy string here or other things that are not relevant for the release notes
or commit messages. -->
Loading
Loading