Skip to content

Commit 639ba2c

Browse files
chore: release v1.1.0 (#2739)
1 parent 869ea93 commit 639ba2c

File tree

154 files changed

+7581
-4317
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

154 files changed

+7581
-4317
lines changed

.dockerignore

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,5 @@
77
!entrypoint-svc.sh
88
!.git
99
!.gitignore
10-
.git/config
10+
!Makefile
11+
.git/config

.github/dependabot.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,4 @@ updates:
88
prefix: "build(deps): "
99
include: "scope"
1010
target-branch: "dependabot-updates"
11+
open-pull-requests-limit: 1

.github/workflows/test_deploy.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -351,6 +351,9 @@ jobs:
351351
run: |
352352
sudo apt-get update -y
353353
sudo apt-get install -y libyaml-0-2 libyaml-dev
354+
sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu jammy main restricted multiverse universe"
355+
sudo apt-get update -y
356+
sudo apt-get install -y --allow-downgrades -t jammy git-lfs=3.0.2-1
354357
- uses: actions/cache@master
355358
id: dependency-cache
356359
with:
@@ -840,6 +843,19 @@ jobs:
840843
PYPI_TOKEN: ${{ secrets.PYPI_TOKEN }}
841844
run: make publish-lock-package
842845

846+
update-develop-branch:
847+
runs-on: ubuntu-latest
848+
if: "startsWith(github.ref, 'refs/tags/')"
849+
steps:
850+
- uses: actions/checkout@v2
851+
with:
852+
fetch-depth: 0
853+
ref: 'develop'
854+
- name: merge changes from master
855+
run: |
856+
git merge master
857+
git push
858+
843859
build-images:
844860
runs-on: ubuntu-latest
845861
needs:

CHANGES.rst

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,44 @@
1818
Changes
1919
=======
2020

21+
`1.1.0 <https://github.com/SwissDataScienceCenter/renku-python/compare/v1.0.6...v1.1.0>`__ (2022-03-04)
22+
-------------------------------------------------------------------------------------------------------
23+
24+
Bug Fixes
25+
~~~~~~~~~
26+
27+
- **dataset:** unset wasDerivedFrom for imported datasets
28+
(`#2686 <https://github.com/SwissDataScienceCenter/renku-python/issues/2686>`__)
29+
(`89023d2 <https://github.com/SwissDataScienceCenter/renku-python/commit/89023d266fc0dde237e8e8164f2cde16e41e342c>`__)
30+
- **core:** avoid migration failure for invalid dataset names
31+
(`#2703 <https://github.com/SwissDataScienceCenter/renku-python/issues/2703>`__)
32+
(`ee607ac <https://github.com/SwissDataScienceCenter/renku-python/commit/ee607acbb374b97c526e9d6c87c08eda735fbb2a>`__)
33+
- **core:** fix workflow iterate working with int parameters
34+
(`#2720 <https://github.com/SwissDataScienceCenter/renku-python/issues/2720>`__)
35+
(`2358962 <https://github.com/SwissDataScienceCenter/renku-python/commit/235896295e60f678e40f989ab9a144b51fbf94e8>`__)
36+
- **core:** check workflow execute inputs
37+
(`#2727 <https://github.com/SwissDataScienceCenter/renku-python/issues/2727>`__)
38+
(`0bfceaf <https://github.com/SwissDataScienceCenter/renku-python/commit/0bfceafa4e6b4750439ab0ed20c61b0a6ba03a1f>`__)
39+
40+
Features
41+
~~~~~~~~
42+
43+
- **core:** add template command
44+
(`#2590 <https://github.com/SwissDataScienceCenter/renku-python/issues/2590>`__)
45+
(`4ff9c4f <https://github.com/SwissDataScienceCenter/renku-python/commit/4ff9c4f77462dcf74083de0f6abad88b286bc6b4>`__)
46+
- **dataset:** use posix move semantics when adding with destination
47+
(`#2612 <https://github.com/SwissDataScienceCenter/renku-python/issues/2612>`__)
48+
(`24f843a <https://github.com/SwissDataScienceCenter/renku-python/commit/24f843a485d46f6e9627ec02e661ffa63d8c69c9>`__)
49+
- **core:** add dataset entries to renku log
50+
(`#2633 <https://github.com/SwissDataScienceCenter/renku-python/issues/2633>`__)
51+
(`f92fbac <https://github.com/SwissDataScienceCenter/renku-python/commit/f92fbac86e042077dec5a7425aa2dd2a2a3607c5>`__)
52+
- **core:** color edges on a per-node basis
53+
(`#2719 <https://github.com/SwissDataScienceCenter/renku-python/issues/2719>`__)
54+
(`ffa10fb <https://github.com/SwissDataScienceCenter/renku-python/commit/ffa10fb759e0092d49f29e7c99738e5406cf5481>`__)
55+
- **core:** add check for invalid imported datasets
56+
(`#2726 <https://github.com/SwissDataScienceCenter/renku-python/issues/2726>`__)
57+
(`9223886 <https://github.com/SwissDataScienceCenter/renku-python/commit/9223886a72369394c33e64149c7d440ea06f8515>`__)
58+
2159
`1.0.6 <https://github.com/SwissDataScienceCenter/renku-python/compare/v1.0.5...v1.0.6>`__ (2022-02-15)
2260
-------------------------------------------------------------------------------------------------------
2361

Dockerfile.cli

Lines changed: 18 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,17 @@
1-
FROM python:3.7-slim as base
1+
FROM python:3.9-slim as base
22

33
RUN apt-get update && \
4-
apt-get install -y git make && \
4+
apt-get install -y git git-lfs=2.* python3-dev && \
55
pip install --no-cache --upgrade pip poetry
66

77
FROM base as builder
88

9+
RUN apt-get install -y build-essential && \
10+
apt-get clean
11+
912
# The python install is done in two steps to avoid re-installing all dependencies every
1013
# time the code changes
11-
COPY pyproject.toml poetry.lock README.rst CHANGES.rst /code/renku/
14+
COPY pyproject.toml poetry.lock README.rst CHANGES.rst Makefile /code/renku/
1215
WORKDIR /code/renku
1316
RUN poetry export --without-hashes -f requirements.txt --output /tmp/requirements.txt && \
1417
pip install -r /tmp/requirements.txt && \
@@ -21,18 +24,24 @@ COPY renku /code/renku/renku
2124
# renku-python is installed in the image. This is the default for chartpress builds.
2225
ARG CLEAN_INSTALL
2326
RUN if [ -n "${CLEAN_INSTALL}" ]; then git reset --hard ; fi
24-
# manually update version.py
25-
RUN poetry-dynamic-versioning
2627
RUN make download-templates
2728
RUN pip wheel --wheel-dir /wheels . && \
28-
pip install --no-index --no-warn-script-location --force --root=/pythonroot/ /wheels/*.whl && \
29-
apt-get clean
29+
pip install --no-index --no-warn-script-location --force --root=/pythonroot/ /wheels/*.whl
3030

3131
FROM base
3232

33-
RUN apt-get install -y git-lfs && \
34-
git lfs install
33+
RUN addgroup -gid 1000 shuhitsu && \
34+
useradd -m -u 1000 -g shuhitsu shuhitsu
35+
36+
RUN git lfs install
3537

3638
COPY --from=builder /pythonroot/ /
3739

40+
# shuhitsu (執筆): The "secretary" of the renga, as it were, who is responsible for
41+
# writing down renga verses and for the proceedings of the renga.
42+
# todo: #2705 avoid code duplication between service and CLI dockerfiles
43+
USER shuhitsu
44+
45+
ENV RENKU_DISABLE_VERSION_CHECK=1
46+
3847
ENTRYPOINT ["renku"]

Dockerfile.svc

Lines changed: 10 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,17 @@
11
FROM python:3.7-slim as base
22

33
RUN apt-get update && \
4-
apt-get install -y git make && \
4+
apt-get install -y git git-lfs=2.* python3-dev && \
55
pip install --no-cache --upgrade pip poetry
66

77
FROM base as builder
88

9+
RUN apt-get install -y build-essential && \
10+
apt-get clean
11+
912
# The python install is done in two steps to avoid re-installing all dependencies every
1013
# time the code changes
11-
COPY pyproject.toml poetry.lock README.rst CHANGES.rst /code/renku/
14+
COPY pyproject.toml poetry.lock README.rst CHANGES.rst Makefile /code/renku/
1215
WORKDIR /code/renku
1316
RUN poetry export --without-hashes -f requirements.txt --output /tmp/requirements.txt && \
1417
pip install -r /tmp/requirements.txt && \
@@ -21,37 +24,25 @@ COPY renku /code/renku/renku
2124
# renku-python is installed in the image. This is the default for chartpress builds.
2225
ARG CLEAN_INSTALL
2326
RUN if [ -n "${CLEAN_INSTALL}" ]; then git reset --hard ; fi
24-
# manually update version.py
25-
RUN poetry-dynamic-versioning
2627
RUN make download-templates
2728
RUN pip wheel --wheel-dir /wheels .[service] && \
28-
pip install --no-index --no-warn-script-location --force --root=/pythonroot/ /wheels/*.whl && \
29-
apt-get clean
29+
pip install --no-index --no-warn-script-location --force --root=/pythonroot/ /wheels/*.whl
3030

3131
FROM base
3232

33-
RUN addgroup -gid 2000 debug && \
34-
addgroup -gid 1000 shuhitsu && \
33+
RUN addgroup -gid 1000 shuhitsu && \
3534
useradd -m -u 1000 -g shuhitsu shuhitsu && \
36-
mkdir /svc && chown shuhitsu:shuhitsu /svc
37-
38-
RUN apt-get install -y git-lfs && \
35+
mkdir /svc && chown shuhitsu:shuhitsu /svc && \
3936
git lfs install
4037

4138
COPY --from=builder /pythonroot/ /
42-
COPY --from=builder /code/renku /code/renku
43-
44-
# Only allow 'debug' group to modify the code
45-
RUN chown -R root:debug /code/renku && chmod -R 775 /code/renku
4639

4740
# shuhitsu (執筆): The "secretary" of the renga, as it were, who is responsible for
4841
# writing down renga verses and for the proceedings of the renga.
4942
USER shuhitsu
5043

5144
ENV RENKU_SVC_NUM_WORKERS 4
5245
ENV RENKU_SVC_NUM_THREADS 8
46+
ENV RENKU_DISABLE_VERSION_CHECK=1
5347

54-
WORKDIR /code/renku
55-
56-
COPY entrypoint-svc.sh /code/renku/
57-
ENTRYPOINT ["./entrypoint-svc.sh"]
48+
ENTRYPOINT [ "renku", "service"]

README.rst

Lines changed: 2 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -322,15 +322,11 @@ Service
322322
-------
323323

324324
Developing the service and testing its APIs can be done with ``docker compose`` (see
325-
"Deploying Locally" above). To enable live reloading of the code, set the environment
326-
variable ``DEBUG_MODE=true`` either in your shell or in the ``.env`` file. Note that in
327-
this case the local directory is mounted in the docker container and renku is re-installed
328-
so it may take a few minutes before the container is ready.
325+
"Deploying Locally" above).
329326

330327
If you have a full RenkuLab deployment at your disposal, you can
331328
use `telepresence <https://www.telepresence.io/>`__ v1 to develop and debug locally.
332-
Just run the `start-telepresence.sh` script and follow the instructions. You can also
333-
attach a remote debugger using the "remote attach" method described later.
329+
Just run the `start-telepresence.sh` script and follow the instructions.
334330
Mind that the script doesn't work with telepresence v2.
335331

336332

@@ -389,41 +385,3 @@ If using Visual Studio Code, you may also want to set the ``Remote Attach`` conf
389385
}
390386
]
391387
}
392-
393-
394-
Kubernetes
395-
~~~~~~~~~~
396-
397-
To debug a running renku-core service in a Kubernetes cluster, the service has to be deployed with the
398-
`core.debug` flag set to `true`, like:
399-
::
400-
401-
core:
402-
debug: true
403-
404-
Also, if you want to be able to modify the files remotely, you need to change
405-
the `security context` on the `deployment.yaml` file for the renku-core component
406-
from `runAsUser: 1000` to `runAsGroup: 2000`.
407-
408-
Then install the `Kubernetes extension <https://github.com/Azure/vscode-kubernetes-tools>`_
409-
and configure your local kubectl with the credentials needed for your cluster.
410-
411-
Add a `.vscode/settings.json` in the renku-python project root and set the following two values:
412-
413-
::
414-
415-
{
416-
"vs-kubernetes": {
417-
"vs-kubernetes.python-autodetect-remote-root": true,
418-
"vs-kubernetes.python-remote-root": "/code/renku",
419-
}
420-
}
421-
422-
You might also need to run the `Kubernetes: Use Namespace` commandlet in VSCode to pick the correct
423-
Kubernetes namespace.
424-
425-
Once this is done, go to the `Kubernetes` tab in VSCode, right-click on your cluster -> Workloads -> Pods -> *-renku-core-*
426-
entry (not the *-renku-core-redis-* one) and pick `Debug (attach)`, select `core` and `python` and you should be good to go.
427-
428-
You can also select `Attach Visual Studio Code` in the context menu to open a new instance of VSCode with write access to
429-
the source code in the remote pod.

docker-compose.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ services:
6868
- "8081:8080"
6969
volumes:
7070
- ${PWD}:/code/renku
71-
command: "api --debug"
71+
command: "api"
7272
labels:
7373
- "traefik.http.routers.renku-svc.rule=PathPrefix(`/api/renku`)"
7474
- "traefik.http.middlewares.stripprefix.stripprefix.prefixes=/api"

docs/reference/commands.rst

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,13 @@ Renku Command Line
2727

2828
.. automodule:: renku.cli.init
2929

30+
.. _cli-template:
31+
32+
``renku template``
33+
------------------
34+
35+
.. automodule:: renku.cli.template
36+
3037
.. _cli-clone:
3138

3239
``renku clone``

docs/reference/management.rst

Lines changed: 22 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,28 @@ This API is built on top of Git and Git-LFS.
2727
Datasets
2828
--------
2929

30-
.. automodule:: renku.core.management.datasets
30+
.. automodule:: renku.core.management.dataset.dataset
31+
:members:
32+
33+
.. automodule:: renku.core.management.dataset.dataset_add
34+
:members:
35+
36+
.. automodule:: renku.core.management.dataset.constant
37+
:members:
38+
39+
.. automodule:: renku.core.management.dataset.context
40+
:members:
41+
42+
.. automodule:: renku.core.management.dataset.pointer_file
43+
:members:
44+
45+
.. automodule:: renku.core.management.dataset.request_model
46+
:members:
47+
48+
.. automodule:: renku.core.management.dataset.tag
49+
:members:
50+
51+
.. automodule:: renku.core.management.dataset.datasets_provenance
3152
:members:
3253

3354
Repository

0 commit comments

Comments
 (0)