Skip to content

Commit db5cbb0

Browse files
authored
Merge pull request #136 from 3DBAG/pc-2024.12.06
3DBAG release 2024.12.16
2 parents ec85398 + 287aa2d commit db5cbb0

File tree

147 files changed

+8244
-3290
lines changed

Some content is hidden

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

147 files changed

+8244
-3290
lines changed

.dockerignore

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
# !!! .dockerignore files cannot be nested in subdirectories, thus it does not work like .gitignore
2+
3+
# Local env
4+
.env_*
5+
.env
6+
7+
# IDE config
8+
**/.run
9+
**/.idea
10+
11+
# Build artifacts and cache
12+
**/*.egg-info
13+
**/build
14+
**/.pytest_cache
15+
**/*__pycache__*
16+
17+
# Test data
18+
tmp
19+
tests/test_data
20+
21+
# Local DAGSTER_HOME
22+
tests/dagster_home/.logs_queue/
23+
tests/dagster_home/.nux
24+
tests/dagster_home/.telemetry/
25+
tests/dagster_home/history/
26+
tests/dagster_home/logs/
27+
tests/dagster_home/schedules/
28+
tests/dagster_home/storage/
29+
30+
# Virtual envs
31+
venvs
32+
33+
# Documentation
34+
**/site
35+
**/docs
36+
37+
# Tools
38+
**/.tox
39+
**/.coverage
40+
**/*.ruff_cache
41+
42+
# Other
43+
experiments
44+
deployment
45+
scripts
Lines changed: 75 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,75 @@
1+
name: Build and Publish Docker Images
2+
3+
on:
4+
push:
5+
tags:
6+
- '202[2-9].[0-9]+.[0-9]+'
7+
- '202[2-9].[0-9]+-pc[0-9]+'
8+
pull_request:
9+
branches:
10+
- "develop"
11+
types: [ closed ]
12+
workflow_dispatch:
13+
14+
jobs:
15+
build:
16+
runs-on: ubuntu-latest
17+
steps:
18+
- uses: actions/checkout@v3
19+
- name: Set docker image tag to 'develop'
20+
if: github.ref == 'refs/heads/develop'
21+
run: echo "DOCKER_TAG=develop" >> $GITHUB_ENV
22+
- name: Set docker image tag to git tag
23+
if: startsWith(github.ref, 'refs/tags/')
24+
run: echo "DOCKER_TAG=${{ github.ref_name }}" >> $GITHUB_ENV
25+
- name: Login to Docker Hub
26+
uses: docker/login-action@v3
27+
with:
28+
username: ${{ secrets.DOCKER_HUB_USERNAME }}
29+
password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}
30+
- name: Set up Docker Buildx
31+
uses: docker/setup-buildx-action@v3
32+
- name: Build and push core
33+
uses: docker/build-push-action@v6
34+
with:
35+
context: ./
36+
file: ./docker/pipeline/bag3d-core.dockerfile
37+
builder: ${{ steps.buildx.outputs.name }}
38+
build-args: |
39+
JOBS=2
40+
VERSION=${{ env.DOCKER_TAG }}
41+
push: true
42+
tags: 3dgi/3dbag-pipeline-core:${{ env.DOCKER_TAG }}
43+
- name: Build and push floors estimation
44+
uses: docker/build-push-action@v6
45+
with:
46+
context: ./
47+
file: ./docker/pipeline/bag3d-floors-estimation.dockerfile
48+
builder: ${{ steps.buildx.outputs.name }}
49+
build-args: |
50+
JOBS=2
51+
VERSION=${{ env.DOCKER_TAG }}
52+
push: true
53+
tags: 3dgi/3dbag-pipeline-floors-estimation:${{ env.DOCKER_TAG }}
54+
- name: Build and push party walls
55+
uses: docker/build-push-action@v6
56+
with:
57+
context: ./
58+
file: ./docker/pipeline/bag3d-party-walls.dockerfile
59+
builder: ${{ steps.buildx.outputs.name }}
60+
build-args: |
61+
JOBS=2
62+
VERSION=${{ env.DOCKER_TAG }}
63+
push: true
64+
tags: 3dgi/3dbag-pipeline-party-walls:${{ env.DOCKER_TAG }}
65+
- name: Build and push dagster
66+
uses: docker/build-push-action@v6
67+
with:
68+
context: ./docker/dagster
69+
file: ./docker/dagster/Dockerfile
70+
builder: ${{ steps.buildx.outputs.name }}
71+
build-args: |
72+
JOBS=2
73+
VERSION=${{ env.DOCKER_TAG }}
74+
push: true
75+
tags: 3dgi/3dbag-pipeline-dagster:${{ env.DOCKER_TAG }}
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
name: Build and Publish The Tools Docker Image
2+
3+
on:
4+
push:
5+
tags:
6+
- '*'
7+
branches:
8+
- "develop"
9+
- "pc-*"
10+
paths:
11+
- docker/tools/Dockerfile
12+
workflow_dispatch:
13+
14+
jobs:
15+
build:
16+
runs-on: ubuntu-latest
17+
steps:
18+
- uses: actions/checkout@v3
19+
- name: Set docker image tag
20+
run: echo "DOCKER_TAG=$(date +'%Y.%m.%d')" >> $GITHUB_ENV
21+
- name: Login to Docker Hub
22+
uses: docker/login-action@v3
23+
with:
24+
username: ${{ secrets.DOCKER_HUB_USERNAME }}
25+
password: ${{ secrets.DOCKER_HUB_ACCESS_TOKEN }}
26+
- name: Set up Docker Buildx
27+
uses: docker/setup-buildx-action@v3
28+
- name: Build and push tools image
29+
uses: docker/build-push-action@v6
30+
with:
31+
context: ./
32+
file: ./docker/tools/Dockerfile
33+
builder: ${{ steps.buildx.outputs.name }}
34+
build-args: |
35+
JOBS=2
36+
VERSION=${{ env.DOCKER_TAG }}
37+
push: true
38+
tags: 3dgi/3dbag-pipeline-tools:${{ env.DOCKER_TAG }}
39+
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: Publish docs
2+
on:
3+
push:
4+
branches:
5+
- main
6+
- develop
7+
permissions:
8+
contents: write
9+
jobs:
10+
deploy:
11+
runs-on: ubuntu-latest
12+
steps:
13+
- uses: actions/checkout@v4
14+
- name: Configure Git Credentials
15+
run: |
16+
git config user.name github-actions[bot]
17+
git config user.email 41898282+github-actions[bot]@users.noreply.github.com
18+
- uses: actions/setup-python@v5
19+
with:
20+
python-version: 3.x
21+
- run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV
22+
- uses: actions/cache@v4
23+
with:
24+
key: mkdocs-material-${{ env.cache_id }}
25+
path: .cache
26+
restore-keys: |
27+
mkdocs-material-
28+
- run: |
29+
pip install -r requirements-dev.txt
30+
pip install --no-deps packages/common
31+
- run: mkdocs gh-deploy --force
Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
name: Lint & Format
2+
3+
on:
4+
pull_request:
5+
branches: ["develop", "master"]
6+
paths-ignore:
7+
- "docs/**"
8+
- "**.md"
9+
10+
jobs:
11+
build:
12+
runs-on: ubuntu-latest
13+
14+
steps:
15+
- uses: actions/checkout@v4
16+
- uses: actions/setup-python@v5
17+
with:
18+
python-version: "3.11"
19+
- name: Intall uv
20+
run: curl -LsSf https://astral.sh/uv/install.sh | sh
21+
- name: Install dependencies
22+
run: uv pip install ruff --system
23+
- name: Lint
24+
run: ruff check
25+
- name: Format
26+
run: ruff format --check

.github/workflows/test.yaml

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
name: Test
2+
3+
on:
4+
pull_request:
5+
branches: [ "develop", "master" ]
6+
paths-ignore:
7+
- "docs/**"
8+
- "**.md"
9+
# push:
10+
# branches: [ "develop", "master" ]
11+
# paths-ignore:
12+
# - "docs/**"
13+
# - "**.md"
14+
15+
jobs:
16+
17+
build:
18+
19+
runs-on: ubuntu-latest
20+
21+
steps:
22+
- uses: actions/checkout@v4
23+
- name: Set up Docker Buildx
24+
uses: docker/setup-buildx-action@v3
25+
- run: |
26+
touch .env
27+
echo BAG3D_TEST_DATA=${PWD}/tests/test_data >> .env
28+
- name: Build docker images
29+
run: |
30+
make download
31+
make docker_volume_create
32+
make docker_up
33+
- name: Run unit tests
34+
run: make test
35+
- name: Recreate volumes
36+
run: |
37+
make docker_down
38+
make docker_volume_recreate
39+
make docker_up_nobuild
40+
- name: Run integration tests
41+
run: make test_integration

.gitignore

Lines changed: 26 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,37 @@
11
# Local env
2-
/.env_*
3-
/.env
2+
.env_*
3+
.env
44

55
# IDE config
6-
/.run/
6+
.run
77
.idea
88

9-
# Python build artefacts and chache
10-
.pytest_cache/
11-
/src/bag3d_pipeline.egg-info/
12-
/.tox/
9+
# Build artifacts and cache
10+
.pytest_cache
1311
*__pycache__*
12+
*.log
1413

1514
# Test data
16-
/tmp/*
17-
/tests/test_data/
18-
/packages/party_walls/tests/data/
19-
/packages/core/tests/data/
15+
tmp/*
16+
tests/test_data/
2017

2118
# Local DAGSTER_HOME
22-
/tests/dagster_home/.logs_queue/
23-
/tests/dagster_home/.telemetry/
24-
/tests/dagster_home/history/
25-
/tests/dagster_home/schedules/
26-
/tests/dagster_home/storage/
27-
/tests/dagster_home/logs/
28-
/tests/dagster_home/.nux
29-
/tests/dagster_home/tmp*
30-
/tests/dagster_home/.env
19+
tests/dagster_home/.logs_queue/
20+
tests/dagster_home/.nux
21+
tests/dagster_home/.telemetry/
22+
tests/dagster_home/history/
23+
tests/dagster_home/logs/
24+
tests/dagster_home/schedules/
25+
tests/dagster_home/storage/
3126

32-
/packages/common/src/bag3d_common.egg-info/
33-
/packages/common/.tox/
34-
/packages/common/tests/.pytest_cache/
35-
/venvs/venv_*
36-
/packages/core/src/bag3d_core.egg-info/
37-
/packages/core/tests/.pytest_cache/
38-
/packages/core/.tox/
39-
/packages/core/build/
40-
/packages/party_walls/src/bag3d_party_walls.egg-info/
41-
/packages/party_walls/tests/.pytest_cache/
42-
/packages/party_walls/build/
43-
/packages/floors_estimation/src/bag3d_floors_estimation.egg-info/
44-
/packages/floors_estimation/tests/.pytest_cache/
45-
/packages/floors_estimation/build/
27+
# Virtual env
28+
.venv/
29+
30+
# Documentation
31+
site
32+
docs/reference
33+
34+
# Tools
35+
.tox
36+
.coverage
37+
*.ruff_cache

CONTRIBUTING.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
Please have a look at our contribution guidelines in our documentation: [https://innovation.3dbag.nl/3dbag-pipeline](https://innovation.3dbag.nl/3dbag-pipeline/development/guidelines).

NOTICE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
3dbag-pipeline software
2-
Copyright 2023 Balázs Dukai <[email protected]>, 3DGI
2+
Copyright 2023-2024 Balázs Dukai <[email protected]> (3DGI), Ravi Peters (3DGI), TU Delft 3D geoinformation group

0 commit comments

Comments
 (0)