@@ -121,15 +121,19 @@ jobs:
121121 with :
122122 cache : false
123123 environments : ${{ matrix.extension == 'diracx' && 'default' || 'default-gubbins' }}
124- - name : Build gubbins wheels
125- if : ${{ matrix.extension == 'gubbins' }}
124+ - name : Build diracx wheels
126125 run : |
127126 for pkg_dir in $PWD/diracx-*; do
128127 echo "Building $pkg_dir"
129- pixi exec python-build --outdir $PWD/extensions/ containers/services/ $pkg_dir
128+ pixi exec python-build --outdir $PWD/containers/services/ $pkg_dir
130129 done
131130 # Also build the diracx metapackage
132- pixi exec python-build --outdir $PWD/extensions/containers/services/ .
131+ pixi exec python-build --outdir $PWD/containers/services/ .
132+ - name : Build gubbins wheels
133+ if : ${{ matrix.extension == 'gubbins' }}
134+ run : |
135+ cp $PWD/containers/services/*.whl $PWD/extensions/containers/services/
136+ cp $PWD/containers/services/*.tar.gz $PWD/extensions/containers/services/
133137 # And build the gubbins package
134138 for pkg_dir in $PWD/extensions/gubbins/gubbins-*; do
135139 # Skip the testing package
@@ -142,25 +146,23 @@ jobs:
142146 pixi exec python-build --outdir $PWD/extensions/containers/services/ $pkg_dir
143147 done
144148 - name : Set up Docker Buildx
145- if : ${{ matrix.extension == 'gubbins' }}
146149 uses : docker/setup-buildx-action@v3
150+ - name : Build container for diracx
151+ if : ${{ matrix.extension == 'diracx' }}
152+ uses : docker/build-push-action@v6
153+ with :
154+ context : containers/services
155+ tags : diracx/services:dev
156+ load : true
147157 - name : Build container for gubbins
148158 if : ${{ matrix.extension == 'gubbins' }}
149159 uses : docker/build-push-action@v6
150160 with :
151161 context : extensions/containers/services
152162 tags : gubbins/services:dev
153- outputs : type=docker,dest=/tmp/gubbins_services_image.tar
163+ load : true
154164 build-args : |
155165 EXTENSION_CUSTOM_SOURCES_TO_INSTALL=/bindmount/gubbins_db*.whl,/bindmount/gubbins_logic*.whl,/bindmount/gubbins_routers*.whl,/bindmount/gubbins_client*.whl
156- - name : Load image
157- if : ${{ matrix.extension == 'gubbins' }}
158- run : |
159- docker load --input /tmp/gubbins_services_image.tar
160- # Free up disk space by removing the tarball after loading the image
161- rm -Rf /tmp/gubbins_services_image.tar
162- docker builder prune -af || true
163- docker image ls -a
164166 - name : Start demo
165167 run : |
166168 git clone https://github.com/DIRACGrid/diracx-charts.git ../diracx-charts
@@ -169,16 +171,16 @@ jobs:
169171 demo_args+=("--enable-open-telemetry")
170172 demo_args+=("--enable-coverage")
171173 demo_args+=("--exit-when-done")
174+ demo_args+=("--set-value" "developer.autoReload=false")
172175 demo_args+=("--ci-values" "../diracx-charts/demo/ci_values.yaml")
176+ demo_args+=("--prune-loaded-images")
173177
174178 declare -a demo_source_dirs=("$PWD")
175179
176180 # Download helm/kubectl/kind first
177181 ../diracx-charts/run_demo.sh --only-download-deps
178182
179183 if [ ${{ matrix.extension }} == 'gubbins' ]; then
180- demo_args+=("--set-value" "diracx.developer.autoReload=false")
181-
182184 # We have to copy the code to another directory
183185 # and make it a git repository by itself because otherwise the
184186 # root in the pyproject do not make sense once mounted
@@ -196,11 +198,12 @@ jobs:
196198 demo_args+=("--ci-values" "./extensions/gubbins_values.yaml")
197199 demo_args+=("--load-docker-image" "gubbins/services:dev")
198200 demo_source_dirs+=("/tmp/gubbins/")
199- elif [ ${{ matrix.extension }} != 'diracx' ]; then
201+ elif [ ${{ matrix.extension }} == 'diracx' ]; then
202+ demo_args+=("--ci-values" "./diracx_values.yaml")
203+ demo_args+=("--load-docker-image" "diracx/services:dev")
204+ else
200205 echo "Unknown extension: ${{ matrix.extension }}"
201206 exit 1
202- else
203- demo_args+=("--set-value" "developer.autoReload=false")
204207 fi
205208
206209 # Run the demo with the provided arguments
0 commit comments