Skip to content

Commit 69a2cb7

Browse files
authored
Fix: Skip Terraform tests in publish workflow (#193)
* fix: skip terraform tests in publish workflow Terraform tests require Terraform CLI to be installed, which is not available in the publish workflow environment. These tests are already run in the CI workflow and don't need to be re-run during publishing. This change adds --ignore=tests/terraform to the pytest command to skip terraform-specific tests while still running all other package tests. * fix: revert to -service suffix for backwards compatibility - Package names: lablink-allocator-service, lablink-client-service - Update workflow tags to match: lablink-allocator-service_v*, lablink-client-service_v* - Update Dockerfiles to install correct package names from PyPI - Remove old directory structure (lablink-allocator, lablink-client-base, terraform) - Skip terraform tests in publish workflow (--ignore=tests/terraform) - Maintains backwards compatibility with existing PyPI packages * refactor: rename module directories to match -service package names - Rename src/lablink_allocator/ → src/lablink_allocator_service/ - Rename src/lablink_client/ → src/lablink_client_service/ - Update all imports in source files - Maintains backwards compatibility with PyPI package names * fix: update pyproject.toml entry points for renamed modules - Update lablink-allocator entry point to lablink_allocator_service.main - Update lablink-client scripts to lablink_client_service modules - Update package data paths to match new directory names - Maintains package names as lablink-allocator-service and lablink-client-service * test: update all test imports for renamed modules - Update monkeypatch setattr strings to lablink_allocator_service - Update @patch decorators to lablink_client_service - Update all test file imports to use _service suffix - All 139 tests passing (117 allocator + 22 client) * chore: update uv.lock files after module rename * fix: update CI workflow imports for renamed modules - Update Docker Build Test to import from lablink_allocator_service - Update test coverage path to lablink_client_service - Fixes failing Docker Build Test - Allocator CI check * fix: update console script entry point imports in CI workflow - Update entry point imports to lablink_allocator_service - Fixes remaining Docker Build Test failures * fix: update all imports in lablink-images workflow - Update 5 allocator imports to lablink_allocator_service - Update 6 client imports to lablink_client_service - Fixes Verify Allocator Image and Verify Client Image failures
1 parent 016e918 commit 69a2cb7

File tree

160 files changed

+215
-9926
lines changed

Some content is hidden

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

160 files changed

+215
-9926
lines changed

.github/workflows/ci.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ jobs:
5252
- package: lablink-client
5353
python-version: "3.10"
5454
working-directory: packages/client
55-
test-command: "uv run pytest tests --cov=src/lablink_client --cov-report=term-missing:skip-covered --cov-report=xml --cov-report=html"
55+
test-command: "uv run pytest tests --cov=src/lablink_client_service --cov-report=term-missing:skip-covered --cov-report=xml --cov-report=html"
5656
- package: lablink-allocator
5757
python-version: "3.10"
5858
working-directory: packages/allocator
@@ -127,11 +127,11 @@ jobs:
127127
import logging
128128
logging.basicConfig(level=logging.ERROR)
129129
print(\"Importing lablink-allocator packages:\")
130-
from lablink_allocator.main import main
130+
from lablink_allocator_service.main import main
131131
print(\" - main.main imported\")
132-
from lablink_allocator.database import PostgresqlDatabase
132+
from lablink_allocator_service.database import PostgresqlDatabase
133133
print(\" - database.PostgresqlDatabase imported\")
134-
from lablink_allocator.get_config import get_config
134+
from lablink_allocator_service.get_config import get_config
135135
print(\" - get_config.get_config imported\")
136136
print(\"Package imports successful\")
137137
"'
@@ -145,8 +145,8 @@ jobs:
145145
run: |
146146
echo "Testing console script entry points can be imported..."
147147
docker run --rm lablink-allocator-dev:test bash -c 'source /app/.venv/bin/activate && python -c "
148-
from lablink_allocator.main import main as allocator_main
149-
from lablink_allocator.generate_init_sql import main as generate_sql_main
148+
from lablink_allocator_service.main import main as allocator_main
149+
from lablink_allocator_service.generate_init_sql import main as generate_sql_main
150150
assert callable(allocator_main), \"allocator main() is not callable\"
151151
assert callable(generate_sql_main), \"generate_init_sql main() is not callable\"
152152
print(\"✓ All entry points are importable and callable\")

.github/workflows/lablink-images.yml

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -224,11 +224,11 @@ jobs:
224224
import logging
225225
logging.basicConfig(level=logging.ERROR)
226226
print(\"Importing allocator packages:\")
227-
from lablink_allocator.main import main
227+
from lablink_allocator_service.main import main
228228
print(\" - main.main imported\")
229-
from lablink_allocator.database import PostgresqlDatabase
229+
from lablink_allocator_service.database import PostgresqlDatabase
230230
print(\" - database.PostgresqlDatabase imported\")
231-
from lablink_allocator.get_config import get_config
231+
from lablink_allocator_service.get_config import get_config
232232
print(\" - get_config.get_config imported\")
233233
print(\"Allocator imports verified\")
234234
"'
@@ -254,8 +254,8 @@ jobs:
254254
run: |
255255
echo "Testing allocator console script entry points can be imported..."
256256
docker run --rm ${{ steps.get_tag.outputs.image }} bash -c 'source /app/.venv/bin/activate && python -c "
257-
from lablink_allocator.main import main as allocator_main
258-
from lablink_allocator.generate_init_sql import main as generate_sql_main
257+
from lablink_allocator_service.main import main as allocator_main
258+
from lablink_allocator_service.generate_init_sql import main as generate_sql_main
259259
assert callable(allocator_main), \"allocator main() is not callable\"
260260
assert callable(generate_sql_main), \"generate_init_sql main() is not callable\"
261261
print(\"✓ All entry points are importable and callable\")
@@ -305,11 +305,11 @@ jobs:
305305
echo "Testing client package imports..."
306306
docker run --rm ${{ steps.get_tag.outputs.image }} bash -c 'source /home/client/.venv/bin/activate && python -c "
307307
print(\"Importing client packages:\")
308-
from lablink_client.subscribe import main
308+
from lablink_client_service.subscribe import main
309309
print(\" - subscribe.main imported\")
310-
from lablink_client.check_gpu import main as check_main
310+
from lablink_client_service.check_gpu import main as check_main
311311
print(\" - check_gpu.main imported\")
312-
from lablink_client.update_inuse_status import main as update_main
312+
from lablink_client_service.update_inuse_status import main as update_main
313313
print(\" - update_inuse_status.main imported\")
314314
print(\"Client imports verified\")
315315
"'
@@ -340,9 +340,9 @@ jobs:
340340
run: |
341341
echo "Testing client console script entry points can be imported..."
342342
docker run --rm ${{ steps.get_tag.outputs.image }} bash -c 'source /home/client/.venv/bin/activate && python -c "
343-
from lablink_client.check_gpu import main as check_gpu_main
344-
from lablink_client.subscribe import main as subscribe_main
345-
from lablink_client.update_inuse_status import main as update_main
343+
from lablink_client_service.check_gpu import main as check_gpu_main
344+
from lablink_client_service.subscribe import main as subscribe_main
345+
from lablink_client_service.update_inuse_status import main as update_main
346346
assert callable(check_gpu_main), \"check_gpu main() is not callable\"
347347
assert callable(subscribe_main), \"subscribe main() is not callable\"
348348
assert callable(update_main), \"update_inuse_status main() is not callable\"

.github/workflows/publish-pip.yml

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,13 +5,13 @@ on:
55
types: [published]
66
push:
77
tags:
8-
- lablink-allocator_v*
9-
- lablink-client_v*
8+
- lablink-allocator-service_v*
9+
- lablink-client-service_v*
1010
workflow_dispatch:
1111
inputs:
1212
package:
1313
type: choice
14-
options: [lablink-allocator, lablink-client]
14+
options: [lablink-allocator-service, lablink-client-service]
1515
required: true
1616
description: Which package to publish
1717
dry_run:
@@ -34,13 +34,13 @@ jobs:
3434
fail-fast: true
3535
matrix:
3636
include:
37-
- package: lablink-allocator
37+
- package: lablink-allocator-service
3838
dir: packages/allocator
39-
tag_prefix: lablink-allocator_v
39+
tag_prefix: lablink-allocator-service_v
4040
path_filter: packages/allocator
41-
- package: lablink-client
41+
- package: lablink-client-service
4242
dir: packages/client
43-
tag_prefix: lablink-client_v
43+
tag_prefix: lablink-client-service_v
4444
path_filter: packages/client
4545

4646
steps:
@@ -167,6 +167,7 @@ jobs:
167167
source .venv/bin/activate
168168
echo "Running test suite..."
169169
uv run pytest tests \
170+
--ignore=tests/terraform \
170171
--cov=src/${{ matrix.package }} \
171172
--cov-report=term-missing \
172173
--cov-fail-under=0

lablink-allocator/.devcontainer/devcontainer.json

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

lablink-allocator/Dockerfile

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

lablink-allocator/Dockerfile.dev

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

0 commit comments

Comments
 (0)