Skip to content

Commit 861ded4

Browse files
authored
Merge pull request #17 from gematik/feature/update-for-pipeline
Feature/update for pipeline
2 parents f04c295 + b2a66f8 commit 861ded4

File tree

20 files changed

+962
-740
lines changed

20 files changed

+962
-740
lines changed

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
.venv/
22
**/__pycache__
3+
**/*.egg-info
34

45
# OS specific
56
# MacOS

.vscode/settings.json

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,7 @@
22
"python.testing.unittestArgs": [
33
"-v",
44
"-s",
5-
"./test",
6-
"-p",
7-
"*_test.py"
5+
"./test"
86
],
97
"python.testing.pytestEnabled": false,
108
"python.testing.unittestEnabled": true

ReleaseNotes.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,13 @@
22

33
# Release Notes FHIR Scripts
44

5+
## Release 0.15.0
6+
7+
* Support _uv_ and _pipx_ to install in isolated Python environments (_uv_ is default)
8+
* Dry-run (`--dry-run`) option to simulate deployment
9+
* Promote argument (`--promote-from`) to promote content from one environment to another
10+
* First version of a unified Docker image
11+
512
## Release 0.14.0
613

714
* Allow to define additional OpenAPI files to be added to the archive using the config file

docker/devcontainer/Dockerfile

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
FROM mcr.microsoft.com/devcontainers/base:alpine-3.20
2+
3+
# Setzen der Umgebungsvariablen
4+
ENV CLOUD_SDK_VERSION=464.0.0
5+
ENV FIRELY_TERMINAL_VERSION=3.3.2
6+
ENV JAVA_VALIDATOR_VERSION=6.3.25
7+
8+
# Google Cloud SDK herunterladen und installieren
9+
RUN curl -O https://dl.google.com/dl/cloudsdk/channels/rapid/downloads/google-cloud-cli-${CLOUD_SDK_VERSION}-linux-x86_64.tar.gz && \
10+
tar -xf google-cloud-cli-${CLOUD_SDK_VERSION}-linux-x86_64.tar.gz && \
11+
./google-cloud-sdk/install.sh --quiet && \
12+
rm google-cloud-cli-${CLOUD_SDK_VERSION}-linux-x86_64.tar.gz
13+
14+
RUN apk add --no-cache \
15+
# .NET SDK for Firely Terminal
16+
dotnet8-sdk \
17+
# icu-libs \
18+
# Node.js and NPM for FSH Sushi
19+
nodejs npm \
20+
# Java (OpenJDK) and Jeykll for IG Publisher
21+
openjdk17 jekyll \
22+
# Additional dependencies
23+
# jq findutils curl ca-certificates \
24+
# PlantUML
25+
graphviz fontconfig
26+
27+
# Setup for FHIR Validator
28+
RUN mkdir -p /home/vscode/.fhir/validators/
29+
RUN wget -q https://github.com/hapifhir/org.hl7.fhir.core/releases/download/$JAVA_VALIDATOR_VERSION/validator_cli.jar -O /home/vscode/.fhir/validators/validator_cli.jar
30+
31+
# Switch to the vscode user
32+
USER vscode
33+
34+
# Add gcloud to user path
35+
ENV PATH="/google-cloud-sdk/bin:${PATH}"
36+
37+
# Install UV for Python environments
38+
RUN curl -LsSf https://astral.sh/uv/install.sh | sh
39+
ENV PATH="/home/vscode/.local/bin:${PATH}"
40+
41+
RUN uv tool install git+https://github.com/gematik/fhir-scripts.git
42+
43+
RUN fhirscripts install \
44+
--sushi \
45+
--firely-terminal
46+
47+
# Add Firely Terminal to user path
48+
ENV PATH="/home/vscode/.dotnet/tools:${PATH}"
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
{
2+
"name": "FHIR Development",
3+
"image": "gematik1/fhir-devcontainer",
4+
"postCreateCommand": "fhirscripts install --config-file",
5+
"postStartCommand": "fhirscripts update"
6+
}

poetry.lock

Lines changed: 0 additions & 596 deletions
This file was deleted.

pyproject.toml

Lines changed: 2 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
[project]
22
name = "fhir-scripts"
3-
version = "0.14.0"
3+
version = "0.15.0"
44
description = ""
55
authors = [
66
{ name = "Alexander Essenwanger", email = "alexander.essenwanger@gematik.de" },
77
]
8-
license = { text = "Apache-2.0" }
8+
license-files = ["LICENSE"]
99
readme = "README.md"
1010
requires-python = ">=3.12"
1111
dependencies = [
@@ -15,19 +15,8 @@ dependencies = [
1515
"requests (>=2.32.5,<3.0.0)",
1616
]
1717

18-
[build-system]
19-
requires = ["poetry-core>=2.0.0,<3.0.0"]
20-
build-backend = "poetry.core.masonry.api"
21-
2218
[project.scripts]
2319
fhirscripts = "fhir_scripts.main:main"
2420

2521
[dependency-groups]
2622
dev = ["black (>=25.9.0,<26.0.0)"]
27-
28-
# [project.optional-dependencies]
29-
# igtools = ["igtools @ git+https://github.com/onyg/req-tooling"]
30-
# epatools = ["epatools @ git+https://github.com/onyg/epa-tools.git"]
31-
# publishtools = [
32-
# "publish-tools @ git+https://github.com/gematik/publish-tools.git",
33-
# ]

src/fhir_scripts/cli.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,4 +58,10 @@ def get_args(
5858
f"No setup function for parser or subparser defined for '{module.__name__}'"
5959
)
6060

61-
return parser.parse_args()
61+
args = parser.parse_args()
62+
63+
if args.cmd is None:
64+
parser.print_help()
65+
exit(0)
66+
67+
return args

0 commit comments

Comments
 (0)