|
34 | 34 | version_full: ${{ steps.version.outputs.version_full }} |
35 | 35 | channel: ${{ steps.channel.outputs.channel }} |
36 | 36 | matrix: ${{ steps.generate_matrix.outputs.result }} |
37 | | - build_container_image: ghcr.io/${{ github.repository_owner }}/haos-builder@${{ steps.build_haos_builder.outputs.digest }} |
| 37 | + build_container_image: ghcr.io/home-assistant/haos-builder@${{ steps.build_haos_builder.outputs.digest }} |
38 | 38 | publish_build: ${{ steps.check_publish.outputs.publish_build }} |
39 | 39 | self_signed_cert: ${{ steps.generate_signing_key.outputs.self_signed_cert }} |
40 | 40 | steps: |
@@ -149,9 +149,9 @@ jobs: |
149 | 149 | with: |
150 | 150 | context: . |
151 | 151 | file: Dockerfile |
152 | | - tags: ghcr.io/${{ github.repository_owner }}/haos-builder |
153 | | - cache-from: ghcr.io/${{ github.repository_owner }}/haos-builder:cache-${{ steps.version.outputs.version_main }} |
154 | | - cache-to: ghcr.io/${{ github.repository_owner }}/haos-builder:cache-${{ steps.version.outputs.version_main }} |
| 152 | + tags: ghcr.io/home-assistant/haos-builder |
| 153 | + cache-from: ghcr.io/home-assistant/haos-builder:cache-${{ steps.version.outputs.version_main }} |
| 154 | + cache-to: ghcr.io/ameridroid/haos-builder:cache-${{ steps.version.outputs.version_main }} |
155 | 155 | push: true |
156 | 156 |
|
157 | 157 | - name: Generate self-signed certificate |
@@ -268,20 +268,6 @@ jobs: |
268 | 268 | make -C buildroot O="/build/output" BR2_EXTERNAL="/build/buildroot-external" \ |
269 | 269 | BR2_CHECK_DOTCONFIG_OPTS="--github-format --strip-path-prefix=/build/" linux-check-dotconfig |
270 | 270 |
|
271 | | - - name: Upload artifacts |
272 | | - if: ${{ github.event_name != 'release' && needs.prepare.outputs.publish_build == 'true' }} |
273 | | - working-directory: output/images/ |
274 | | - env: |
275 | | - AWS_ACCESS_KEY_ID: ${{ secrets.R2_OS_ARTIFACTS_ID }} |
276 | | - AWS_SECRET_ACCESS_KEY: ${{ secrets.R2_OS_ARTIFACTS_KEY }} |
277 | | - run: | |
278 | | - aws s3 sync \ |
279 | | - ./ \ |
280 | | - s3://${{ secrets.R2_OS_ARTIFACTS_BUCKET }}/${{ needs.prepare.outputs.version_full }}/ \ |
281 | | - --exclude "*" \ |
282 | | - --include "haos_*" \ |
283 | | - --endpoint-url ${{ secrets.R2_OS_ARTIFACTS_ENDPOINT }} |
284 | | -
|
285 | 271 | - name: Upload release assets |
286 | 272 | if: ${{ github.event_name == 'release' }} |
287 | 273 | uses: shogo82148/actions-upload-release-asset@v1 |
@@ -336,109 +322,4 @@ jobs: |
336 | 322 | path: | |
337 | 323 | output/images/haos_${{ matrix.board.id }}-${{ needs.prepare.outputs.version_full }}.raucb |
338 | 324 |
|
339 | | - - name: Upload Open Virtualization Format (OVA) artifact |
340 | | - uses: actions/upload-artifact@v4 |
341 | | - if: ${{ github.event_name != 'release' && needs.prepare.outputs.publish_build != 'true' && matrix.board.id == 'ova' }} |
342 | | - with: |
343 | | - name: haos_${{ matrix.board.id }}-${{ needs.prepare.outputs.version_full }}.ova |
344 | | - path: | |
345 | | - output/images/haos_${{ matrix.board.id }}-${{ needs.prepare.outputs.version_full }}.ova |
346 | 325 |
|
347 | | - - name: Upload QEMU disk image artifact |
348 | | - uses: actions/upload-artifact@v4 |
349 | | - # Create artifact for ova every time - it's used by the called tests workflow |
350 | | - if: ${{ matrix.board.id == 'ova' || (github.event_name != 'release' && needs.prepare.outputs.publish_build != 'true' && matrix.board.id == 'generic-aarch64') }} |
351 | | - with: |
352 | | - name: haos_${{ matrix.board.id }}-${{ needs.prepare.outputs.version_full }}.qcow2.xz |
353 | | - path: | |
354 | | - output/images/haos_${{ matrix.board.id }}-${{ needs.prepare.outputs.version_full }}.qcow2.xz |
355 | | -
|
356 | | - - name: Upload VMware Virtual Machine Disk (VMDK) artifact |
357 | | - uses: actions/upload-artifact@v4 |
358 | | - if: ${{ github.event_name != 'release' && needs.prepare.outputs.publish_build != 'true' && (matrix.board.id == 'generic-aarch64' || matrix.board.id == 'ova') }} |
359 | | - with: |
360 | | - name: haos_${{ matrix.board.id }}-${{ needs.prepare.outputs.version_full }}.vmdk.zip |
361 | | - path: | |
362 | | - output/images/haos_${{ matrix.board.id }}-${{ needs.prepare.outputs.version_full }}.vmdk.zip |
363 | | -
|
364 | | - - name: Upload VirtualBox Virtual Disk Image (VDI) artifact |
365 | | - uses: actions/upload-artifact@v4 |
366 | | - if: ${{ github.event_name != 'release' && needs.prepare.outputs.publish_build != 'true' && matrix.board.id == 'ova' }} |
367 | | - with: |
368 | | - name: haos_${{ matrix.board.id }}-${{ needs.prepare.outputs.version_full }}.vdi.zip |
369 | | - path: | |
370 | | - output/images/haos_${{ matrix.board.id }}-${{ needs.prepare.outputs.version_full }}.vdi.zip |
371 | | -
|
372 | | - - name: Upload Virtual Hard Disk v2 (VHDX) artifact |
373 | | - uses: actions/upload-artifact@v4 |
374 | | - if: ${{ github.event_name != 'release' && needs.prepare.outputs.publish_build != 'true' && matrix.board.id == 'ova' }} |
375 | | - with: |
376 | | - name: haos_${{ matrix.board.id }}-${{ needs.prepare.outputs.version_full }}.vhdx.zip |
377 | | - path: | |
378 | | - output/images/haos_${{ matrix.board.id }}-${{ needs.prepare.outputs.version_full }}.vhdx.zip |
379 | | -
|
380 | | - test: |
381 | | - name: Test OS image |
382 | | - needs: [ build, prepare ] |
383 | | - uses: ./.github/workflows/test.yaml |
384 | | - with: |
385 | | - version: ${{ needs.prepare.outputs.version_full }} |
386 | | - |
387 | | - update_index: |
388 | | - name: Update artifacts index |
389 | | - if: ${{ github.event_name != 'release' && needs.prepare.outputs.publish_build == 'true' }} |
390 | | - needs: [ build, prepare ] |
391 | | - uses: home-assistant/operating-system/.github/workflows/artifacts-index.yaml@dev |
392 | | - with: |
393 | | - version: ${{ needs.prepare.outputs.version_full }} |
394 | | - secrets: |
395 | | - R2_OS_ARTIFACTS_ID: ${{ secrets.R2_OS_ARTIFACTS_ID }} |
396 | | - R2_OS_ARTIFACTS_KEY: ${{ secrets.R2_OS_ARTIFACTS_KEY }} |
397 | | - R2_OS_ARTIFACTS_BUCKET: ${{ secrets.R2_OS_ARTIFACTS_BUCKET }} |
398 | | - R2_OS_ARTIFACTS_ENDPOINT: ${{ secrets.R2_OS_ARTIFACTS_ENDPOINT }} |
399 | | - CF_ZONE: ${{ secrets.CF_ZONE }} |
400 | | - CF_PURGE_TOKEN: ${{ secrets.CF_PURGE_TOKEN }} |
401 | | - |
402 | | - bump_version: |
403 | | - name: Bump ${{ needs.prepare.outputs.channel }} channel version |
404 | | - if: ${{ github.repository == 'home-assistant/operating-system' && needs.prepare.outputs.publish_build == 'true' }} |
405 | | - environment: ${{ needs.prepare.outputs.channel }} |
406 | | - needs: [ build, prepare ] |
407 | | - runs-on: ubuntu-22.04 |
408 | | - |
409 | | - steps: |
410 | | - - name: Checkout source |
411 | | - uses: actions/checkout@v4 |
412 | | - with: |
413 | | - persist-credentials: false |
414 | | - |
415 | | - - name: Initialize git |
416 | | - uses: home-assistant/actions/helpers/git-init@master |
417 | | - with: |
418 | | - name: ${{ secrets.GIT_NAME }} |
419 | | - email: ${{ secrets.GIT_EMAIL }} |
420 | | - token: ${{ secrets.GIT_TOKEN }} |
421 | | - |
422 | | - - name: Bump Home Assistant OS ${{ needs.prepare.outputs.channel }} channel version |
423 | | - uses: home-assistant/actions/helpers/version-push@master |
424 | | - with: |
425 | | - key: "hassos[]" |
426 | | - key-description: "Home Assistant OS" |
427 | | - version: ${{ needs.prepare.outputs.version_full }} |
428 | | - channel: ${{ needs.prepare.outputs.channel }} |
429 | | - |
430 | | - - name: Bump Home Assistant OS beta channel version on stable release |
431 | | - if: ${{ needs.prepare.outputs.channel == 'stable' }} |
432 | | - uses: home-assistant/actions/helpers/version-push@master |
433 | | - with: |
434 | | - key: "hassos[]" |
435 | | - key-description: "Home Assistant OS" |
436 | | - version: ${{ needs.prepare.outputs.version_full }} |
437 | | - channel: beta |
438 | | - |
439 | | - - name: Bump stable Home Assistant version for RPi Imager |
440 | | - if: ${{ github.event_name == 'release' && needs.prepare.outputs.channel == 'stable' }} |
441 | | - uses: "./.github/actions/bump-rpi-imager-version" |
442 | | - with: |
443 | | - version: ${{ needs.prepare.outputs.version_full }} |
444 | | - release-date: ${{ github.event.release.published_at }} |
0 commit comments